# Population models - statistical analysis over time of subpopulation expansion

I am struggling with a statistical method to assess statistically determine whether populations have "changed" over time and taken over the system.

In my case I have a clonal bacteria species, some strains with a mutation conferring resistance to drugs and others without a mutation (e.g. susceptible). Resistance to drugs are controlled by SNPs of which there can be several for any one particular drug (e.g. Mut1 and Mut2 are in the same gene and both confer resistance to DrugA)

When a person is infected with this bacteria, they are treated by drug therapy which acts with differential selective pressure - killing off the susceptibles population. Thus, if a person harbors some a mixed population of resistant/susceptible strains, one would expect the subpopulation with resistance to eventually dominate the entire population (because everything else is eventually killed off).

I will want to also look at this situation in 'nature' where there can be populations with multiple mutations in the body and I am struggling to conceptualize how to analyze my data. Also, to make things worse, I will instead of being able to count population size, unfortunately my genetic tests will only give me the proportion of the sample (0-100%) for each mutation.

Here is some fake data that is somewhat indicative, any suggestions? I expect many to be like Example2 but some to be like Example1

library(reshape)

T<-as.numeric(c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20))
Susceptible1<-as.numeric(c(0.9,0.9,0.9,0.9,0.89,0.85,0.84,0.75,0.7,0.69,0.65,0.7,0.52,0.4,0.28,0.22,0.2,0.1,0,0,0))
Mut1<-as.numeric(c(0,0,0,0,0,0,0,0.1,0.15,0.2,0.25,0.15,0.3,0.4,0.5,0.6,0.7,0.9,1,1,1))
Mut2<-as.numeric(c(0.1,0.1,0.1,0.1,0.11,0.15,0.16,0.15,0.15,0.11,0.1,0.15,0.18,0.2,0.22,0.18,0.1,0,0,0,0))

Example1<-melt(data.frame(Susceptible1,Mut1,Mut2,T), id.vars="T")

Example1<-Example1[order(Example1$T),] names(Example1) <- c("T","Pop","Percentage") Susceptible2<-c(0.85,0.87,0.85,0.87,0.86,0.88,0.87,0.86,0.87,0.89,0.9,0.89,0.87,0.88,0.87,0.89,0.87,0.86,0.88,0.87,0.86) Mut3<-c(0.1,0.06,0.07,0.06,0.06,0.02,0.04,0.06,0.04,0.03,0,0.03,0.04,0.04,0.03,0,0.01,0.03,-0.01,-0.01,0.02) Mut4<-c(0.05,0.07,0.08,0.07,0.08,0.1,0.09,0.08,0.09,0.08,0.1,0.08,0.09,0.08,0.1,0.11,0.12,0.11,0.13,0.14,0.12) Example2<-melt(data.frame(Susceptible2,Mut3,Mut4,T), id.vars="T") Example2<-Example2[order(Example2$T),]
names(Example2) <- c("T","Pop","Percentage")


PS - The closest analogous situation I can find is Clonal Interference (see bottom image below which comes from https://en.wikipedia.org/wiki/Clonal_interference).

• Can you state concisely the question that you hope the statistics will answer? Do you want a statistical test to ask whether the proportion of a given strain has changed in the population? And are your replicates different populations, or different measurements of a single population? – Jacob Socolar Mar 30 '17 at 3:04
• If you only know "This sample is 50/50 alleles A/B at locus 1 and 50/50 alleles C/D at locus 2", it's impossible to tell whether your sample is 50% AC and 50% BD, or 50% AD and 50% BC, or 25% of all combinations, or many other possibilities. – eric_kernfeld Apr 1 '17 at 13:49
• Apologies - I did not see a comment. I will add more clarification to the question – user918967 Apr 4 '17 at 14:41
• In answer to user43849, I will have 30 patients each with ~20 samples across time for each patient (e.g. ~600 data points). Many patients will be like Example 2 (above) but a few should be like Example 1 – user918967 Apr 4 '17 at 15:56
• Is it just a single locus that you are planning to genotype? – eric_kernfeld Apr 8 '17 at 16:01