From 9cd4194771685d0643d78fada2c4d52e003613e0 Mon Sep 17 00:00:00 2001 From: mbuynak <31928750+mbuynak@users.noreply.github.com> Date: Mon, 30 Oct 2017 10:59:54 -0400 Subject: [PATCH 1/5] Question 1 --- Tutorial 9 | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Tutorial 9 diff --git a/Tutorial 9 b/Tutorial 9 new file mode 100644 index 0000000..088d97c --- /dev/null +++ b/Tutorial 9 @@ -0,0 +1,68 @@ +#Import Packages +import pandas +import numpy +from scipy.optimize import minimize +from scipy.stats import norm +import re +import os +from plotnine import * + +os.chdir("/Users/madelinebuynak/Desktop") + +data = pandas.read_csv("ponzr1.csv",header=0,sep='\t') + +subset=data.loc[data.mutation.sin(['WT','M124K']),:] + +def nllike(p,obs): + B0=p(0) + B1=p(1) + sigma=p(2) + +def null (p,obs): + B0=p[0] + sigma=p[1] + + expected=B0 + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +def alter (p,obs): + B0=p[0] + B1=p[1] + sigma=p[2] + +expected=B0+B1*obs.x +nll=-1*norm(expected,sigma).logpdf(obs.y).sum() +return nll + +initialGuess=numpy.array([1,1,1]) +fitNull=minimize(nllike,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) +fitAlter=minimize(nllike,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) + + +subset=data.loc[data.mutation.sin(['WT','V456D']),:] + + +def null (p,obs): + B0=p[0] + sigma=p[1] + + expected=B0 + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +def alter (p,obs): + B0=p[0] + B1=p[1] + sigma=p[2] + + expected=B0+B1*obs.x + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +initialGuess=numpy.array([1,1,1]) +fitNull=minimize(null,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) +fitAlter=minimize(alter,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) + + + From ca8c084b83eff41dbb8d5c6af1a77f9bb5464263 Mon Sep 17 00:00:00 2001 From: mbuynak <31928750+mbuynak@users.noreply.github.com> Date: Thu, 2 Nov 2017 14:22:03 -0400 Subject: [PATCH 2/5] Question 1 edited --- Tutorial 9 | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Tutorial 9 b/Tutorial 9 index 088d97c..b065ebf 100644 --- a/Tutorial 9 +++ b/Tutorial 9 @@ -9,10 +9,12 @@ from plotnine import * os.chdir("/Users/madelinebuynak/Desktop") +#load data data = pandas.read_csv("ponzr1.csv",header=0,sep='\t') -subset=data.loc[data.mutation.sin(['WT','M124K']),:] +subset=data.loc[data.mutation.isin(['WT','I231N']),:] +#two likelihood functions def nllike(p,obs): B0=p(0) B1=p(1) @@ -64,5 +66,10 @@ initialGuess=numpy.array([1,1,1]) fitNull=minimize(null,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) fitAlter=minimize(alter,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) +D=2*(fitNull.fun-fitAlter.fun) +1-ch2.cdf(x=D,df=1) + + + From d2a35986949c2fb805c7b2727823f9a4c993e45a Mon Sep 17 00:00:00 2001 From: mbuynak <31928750+mbuynak@users.noreply.github.com> Date: Thu, 2 Nov 2017 15:43:28 -0400 Subject: [PATCH 3/5] Question 1 --- Tutorial 9 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Tutorial 9 b/Tutorial 9 index b065ebf..54de68c 100644 --- a/Tutorial 9 +++ b/Tutorial 9 @@ -69,6 +69,11 @@ fitAlter=minimize(alter,initialGuess,method="Nelder-Mead",options={'disp':True}, D=2*(fitNull.fun-fitAlter.fun) 1-ch2.cdf(x=D,df=1) +#M124K: p-value ~ 0.72 (no effect of treatment) + +#V456D: p-value ~ 5.6e-6 (effect of treatment) + +#I213N: p-value ~ 0.88 (no effect of treatment) From fd4db429ab7db520e6da7a80bb145c864808ecf9 Mon Sep 17 00:00:00 2001 From: amidlige <31928641+amidlige@users.noreply.github.com> Date: Thu, 2 Nov 2017 18:30:19 -0400 Subject: [PATCH 4/5] Question 2 --- tutorial9question2.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tutorial9question2.py diff --git a/tutorial9question2.py b/tutorial9question2.py new file mode 100644 index 0000000..97573c9 --- /dev/null +++ b/tutorial9question2.py @@ -0,0 +1,26 @@ +#Import Packages +import pandas +import numpy +from scipy.optimize import minimize +from scipy.stats import norm +import re +import os +from plotnine import * + +data = pandas.read_csv("mMarinumGrowth.csv",header=0,sep='\t') + +def Monod(p,obs): + uMax=p[0] + K=p[1] + sigma=p[2] + + expected=uMax* (x/(x+K)) + nll=-1+norm(expected,sigma).logpdf(obs.y).sum + return nll + + initialGuess=numpy.array([1,1,1]) + fit-minimize(Monod,initialGuess,method="Monod Equation",options={'disp':True},args=data) + + print(fit.x) + + From 72f875bdbd903f1c309e8779b259ef579b9cda5b Mon Sep 17 00:00:00 2001 From: mbuynak <31928750+mbuynak@users.noreply.github.com> Date: Thu, 2 Nov 2017 21:17:52 -0400 Subject: [PATCH 5/5] Question 3 --- Tutorial 9 Question 3 | 72 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 Tutorial 9 Question 3 diff --git a/Tutorial 9 Question 3 b/Tutorial 9 Question 3 new file mode 100644 index 0000000..1aaafff --- /dev/null +++ b/Tutorial 9 Question 3 @@ -0,0 +1,72 @@ +#Import Packages +import pandas +import numpy +from scipy.optimize import minimize +from scipy.stats import norm +import re +import os +from plotnine import * + +os.chdir("/Users/madelinebuynak/Desktop") + +#load data +data=pandas.read_csv("leafDecomp.csv",header=0,sep='\t') + +subset=data.loc[data.mutation.isin(['WT','I231N']),:] + + +#plot data +plot = ggplot(data, aes(y = 'Ms', x = 'decomp')) +plot + geom_jitter(colour='black') + +#quadratic + +#define 3 custom likelihood functions +def nllike(p,obs): + B0=p(0) + B1=p(1) + sigma=p(2) + +def null (p,obs): + B0=p[0] + sigma=p[1] + + expected=B0 + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +def alter (p,obs): + B0=p[0] + B1=p[1] + sigma=p[2] + + expected=B0+B1*obs.x + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +def alter (p,obs): + B0=p[0] + B1=p[1] + sigma=p[3] + + expected=B0+B1*obs.x+B2*obs.x^2 + nll=-1*norm(expected,sigma).logpdf(obs.y).sum() + return nll + +#Estimate the Parameters +#Initial Guess for Model 1 (mean~590) +#Initial Guess for Model 2 (intercept~200 slope~6.33) + +initialGuess=numpy.array([1,1,1]) +fitNull=minimize(nllike,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) +fitAlter=minimize(nllike,initialGuess,method="Nelder-Mead",options={'disp':True},args=subset) + +#Compare Models +#likelihood test +D=2*(fitNull.fun-fitAlter.fun) +1-ch2.cdf(x=D,df=1) + + +#quadratic model is the best fit, but linear model is better than constant model + +