Data and Analysis for "The Quick and the Dead"
Table of Contents
- 1. Introduction
- 2. Requirements
- 3. Files in this submission
- 3.1. 2016-Maxwell-Magwene-100genomes-temperature-growth.csv
- 3.2. 2016-Maxwell-Magwene-100genomes-temperatures-raw.csv
- 3.3. 2016-Maxwell-Magwene-mito-morphology-scoring.csv
- 3.4. 2016-Maxwell-Magwene-mito-trackscar.csv
- 3.5. 2016-Maxwell-Magwene-three-color-trackscar.csv
- 3.6. 2016-Maxwell-Magwene-two-color-trackscar-timeseries.csv
- 3.7. 2016-Maxwell-Magwene-two-color-trackscar.csv
- 3.8. 2016-Maxwell-Magwene-heat-stress-candidates.csv
- 3.9. 2016-Maxwell-Magwene-PMY-to-YJM.csv
- 4. Scripts used to generate the data files
- 5. Miscellaneous code
- 6. Scripts used to create shared data sets
- 7. Scripts used to generate figures
- 8. Statistics for Results
- 9. Statistics for Supplementary results
- 10. Session Info
1 Introduction
This document describes the data submitted to the Dryad repository for the paper "The Quick and the Dead: Microbial Demography at the Yeast Thermal Limit" and provides links to the code (or the code itself) used to generate figures and the statistical analysis in the paper. This document is written in org-mode format, and is best viewed using emacs–an open-source text editor. If this document is viewed on github, links don't necessarily point to the correct sections, and the results of source blocks (see below) are not displayed. If you want to look at this document in a web-browser, we recommend cloning the repo and examining this HTML document that was exported from org-mode instead.
The scripts used to produce the figures are stand-alone files linked to in the section Scripts used to generate figures.
This code is also hosted on github.
Statistics referenced in the text are listed in the sections Statistics for Results and Statistics for Supplementary Results. The code used to generate the statistics is shown in org-babel format, and can be run in situ in emacs. The results of each code block is shown below it, giving the statistic of interest.
2 Requirements
The analysis is written in the R programming language. See the section Session Info for the version of R and the packages used to run these analyses. The scripts assume that all data data and scripts are in the same folder.
3 Files in this submission
This section contains a list of the data files included in this submission and gives:
- A brief description of how the data were generated
- The name of the script (if any) that produced the data
- A description of the column names in the data
3.1 2016-Maxwell-Magwene-100genomes-temperature-growth.csv
This is a summary file that gives estimates of the maximum population growth rate of a strain for several replicates and several temperatures. This file was generated by process-growth-curves.R, which processes the raw data that is summarized in 2016-Maxwell-Magwene-100genomes-temperatures-raw.csv.
- fn
- This gives the path to the raw data file used to generate the estimate
- temp
- The temperature that the growth curve was collected at
- rep
- The replicate number of the temperature
- row
- The row that the well was in
- col
- The column that the well was in
- Strain
- The YJM number of the strain. YJM stands for 'Yeast John McCusker'. These are the original stocks for the 100 genomes collection used throughout these experiments that the PMY numbers are derived from
- PMY
- The PMY number of the strain. PMY stands for 'Paul Magwene Yeast'. These are the actual stocks used during these experiments.
- maxGrowth
- The estimate of maximum population growth for that strain and temperature, given in OD/sec
- pointOfMaxGrowthRate
- The time point at which the maximum OD was reached
- maxOD
- The maximum OD that was reached during the experiment
3.2 2016-Maxwell-Magwene-100genomes-temperatures-raw.csv
This file contains the raw OD measurements from the Tecan Sunrise plate reader. The Tecan exports data in a form that is difficult to analyze, so rather than including the raw .asc files, the data was read in and aggregated by the script process-growth-curves.R. To get the actual raw data in the script, please email the corresponding author of the paper.
- YJM
- The YJM number of the strain. YJM stands for 'Yeast John McCusker'. These are the original stocks for the 100 genomes collection used throughout these experiments that the PMY numbers are derived from
- PMY
- The PMY number of the strain. PMY stands for 'Paul Magwene Yeast'. These are the actual stocks used during these experiments.
- filename
- The path to the original raw data file
- platemap
- The path to the original plate map file.
- replicate
- The replicate number of the temperature
- temperature
- The temperature the growth curve was collected at
- row
- The row in the plate
- col
- The column in the plate
- seconds
- The number of seconds elapsed since the start of the experiment
- OD
- The optical density in the well
3.3 2016-Maxwell-Magwene-mito-morphology-scoring.csv
These data were collected by manually scoring the mitochondrial morphology of strains containing a mitochondrially localized GFP at both 30C and 35.5C in 'real time' (no images collected) in an Axio Imager.
See volume 5 pgs 12 and 14 of Colin Maxwell's lab notebook for the raw data.
- strain
- The CMY number of the strain. CMY stands for Colin Maxwell Yeast. see Table S1 for a mapping to the PMY number and genotype of the strain.
- temp
- The temperature that the data were collected at
- rep
- The replicate number of the data
- Athreads
- "A" is the original scoring code. "threads" is the morphology category.
- Cclumps
- "C" is the original scoring code. "clumps" is the morphology category; only clumpy mitochondria present.
- Bclumps-threads
- "B" is the original scoring code. "clumps-threads" is the morphology category; both clumps and threads present.
- Dno-mitos
- "D" is the original scoring code. "no-mitos" is the morphology category; no mitochondria were observed.
3.4 2016-Maxwell-Magwene-mito-trackscar.csv
This contains data about the morphology and fecundity of several strains of yeast at both 30C and 35.5C. These data were collected using the DeltaVision and then scoring the morphology and counting the budscars based on the resulting images. The file was generated from the original count data files from the script process-mito-trackscar-data.R. To get the actual raw data in the script, please email the corresponding author of the paper.
- folder
- The name of the folder containing the original data
- experimentID
- The experiment ID of the data
- countsfile
- The name of the file containing the original data
- sampling
- The method of sampling used – either "random" or "forage". "Random" means the cells were imaged by moving in a transect along the slide and imaging each cell that was positive for the first stain. "forage" means that older cells were sought out specifically.
- temp
- The temperature that the data was collected at.
- media
- The media that the cells were grown in
- whocounted
- Who counted the buds (CSM = Colin S. Maxwell)
- numberofcolors
- Either "2" or "3" color TrackScar
- time
- Hours between stains
- strain
- CMY (Colin Maxwell Yeast) number and the temperature. See Table S1 for a mapping from CMY numbers to other data.
- growth
- Number of new scars produced during the experiment (should be called 'fecundity', but is called 'growth' for historical reasons). growth = second - first
- first
- Number of scars stained with the first stain
- second
- The number of scars stained with the second stain.
- mitos
- The mito morphology class of the cell: 't' = threads; 'c' = clumps; 'tc' = thread & clumps; 'n' = no mitochondria.
3.5 2016-Maxwell-Magwene-three-color-trackscar.csv
This contains the data for the three color trackscar experiments that were analyzed during the experiment. The original design of these experiments let recover after heat stress at either 30C or 37C for either 3 or 6 hrs. The 3hr recovery data was not used in the paper and is not included in this file. The 37C recovery data is only used for its first interval as a two color TrackScar experiment. This file was generated from the original count data files by the script process-three-color-trackscar.R. To get the actual raw data in the script, please email the corresponding author of the paper.
- folder
- The name of the folder containing the original data
- countsfile
- The name of the file containing the original data
- experiment
- The experiment ID of the data
- sampling
- The method of sampling used – either "random" or "forage". "Random" means the cells were imaged by moving in a transect along the slide and imaging each cell that was positive for the first stain. "forage" means that older cells were sought out specifically.
- whocounted
- Who counted the buds (CSM = Colin S. Maxwell)
- temp
- The temperature that the data was collected at.
- strain
- The PMY (Paul Magwene Yeast) number of the strain. For a mapping to YJM numbers reported in the text, see the file PMY_to_YJM.csv.
- growth
- Number of new scars produced during the experiment (should be called 'fecundity', but is called 'growth' for historical reasons). growth = last - first
- growth1
- Number of buds between the first and second stain
- growth2
- Number of buds between the second and third stain
- first
- Number of scars stained with the first stain
- last
- Number of scars stained with the third stain
- recoveryTemp
- The temperature the cells were incubated in during the recovery period
- recoveryTime
- The length of time the cells were incubated during the recovery period.
3.6 2016-Maxwell-Magwene-two-color-trackscar-timeseries.csv
This data is two color TrackScar experiments where the time between the first and the second stain varied between one and six hours. The file was created by the script process-two-color-trackscar.R. To get the actual raw data in the script, please email the corresponding author of the paper.
- folder
- The name of the folder containing the original data
- experimentID
- The experiment ID of the data
- countsfile
- The name of the file containing the original data
- sampling
- The method of sampling used – either "random" or "forage". "Random" means the cells were imaged by moving in a transect along the slide and imaging each cell that was positive for the first stain. "forage" means that older cells were sought out specifically.
- temp
- The temperature that the data was collected at.
- media
- The media that the cells were grown in
- whocounted
- Who counted the buds (CSM = Colin S. Maxwell)
- numberofcolors
- Either "2" or "3" color TrackScar
- time
- How many hours between the first and second strains
- strain
- The YJM number of the strain. YJM stands for 'Yeast John McCusker'. These are the original stocks for the 100 genomes collection used throughout these experiments that the PMY numbers are derived from
- replicate
- Replicate number
- growth
- Number of new scars produced during the experiment (should be called 'fecundity', but is called 'growth' for historical reasons). growth = second - first
- first
- Number of scars stained with the first stain
- last
- The number of scars stained with the second stain.
3.7 2016-Maxwell-Magwene-two-color-trackscar.csv
These data are two color TrackScar experiments where the time between the first and the second stain is six hours. The file was created by the script process-two-color-trackscar.R. To get the actual raw data in the script, please email the corresponding author of the paper.
- folder
- The name of the folder containing the original data
- experimentID
- The experiment ID of the data
- countsfile
- The name of the file containing the original data
- sampling
- The method of sampling used – either "random" or "forage". "Random" means the cells were imaged by moving in a transect along the slide and imaging each cell that was positive for the first stain. "forage" means that older cells were sought out specifically.
- temp
- The temperature that the data was collected at.
- media
- The media that the cells were grown in
- whocounted
- Who counted the buds (CSM = Colin S. Maxwell)
- numberofcolors
- Either "2" or "3" color TrackScar
- time
- How many hours between the first and second strains
- strain
- The PMY (Paul Magwene Yeast) number of the strain. For a mapping to YJM numbers reported in the text, see the file PMY_to_YJM.csv.
- replicate
- Replicate number
- growth
- Number of new scars produced during the experiment (should be called 'fecundity', but is called 'growth' for historical reasons). growth = second - first
- first
- Number of scars stained with the first stain
- last
- The number of scars stained with the second stain.
3.8 2016-Maxwell-Magwene-heat-stress-candidates.csv
This is a file that gives a list of the strains sensitive to growth at 35.5C that were examined using TrackScar. The file was originally produced by the script analyze-growth-curves.R, but the name was changed and was annotated when it became apparent that some strains couldn't be analyzed using TrackScar.
- PMY
- The PMY (Paul Magwene Yeast) number of the strain. For a mapping to YJM numbers reported in the text, see the file PMY_to_YJM.csv.
- ratioMaxGrowth
- Growth at 35.5C/30C
- maxGrowth30C
- Growth rate at 30C
- maxGrowth35halfC
- Growth rate at 35.5C
- maxGrowth37C
- Growth rate at 37C
- exclusionreason
- If it was excluded from subsequent analysis, why?
3.9 2016-Maxwell-Magwene-PMY-to-YJM.csv
This is a mapping between the 100 genomes PMY (Paul Magwene Yeast) numbers and YJM (Yeast John McCusker) numbers.
- PMY
- The PMY number
- Strain
- The YJM number
4 Scripts used to generate the data files
All scripts that begin with the name 'process' were run to generate data for the Dryad submission using files that will not be submitted to Dryad. The scripts filter data to contain only the data needed in the paper and annotate it with the appropriate metadata. Since these scripts rely on unsubmitted data, they cannot be run but are submitted to allow the data processing steps to be examined. See above for which scripts generated which files.
Each script dealing with TrackScar data includes a line that subtracts 1.5C from the temperature of TrackScar data above 30C. This is because the incubator that the TrackScar data was collected in was found to be too high for these temperatures. To keep consistent, the data was annotated with the incubator's temperature, but it is corrected here for the ease of subsequent interpretation.
5 Miscellaneous code
- budscar-count-utilities.R
- Miscellaneous files for handling trackscar data
- fig-theme.R
- A ggplot2 theme used in the figures
- load-libraries.R
- Loads all the libraries used in the analysis
- tecan.R
- Functions to deal with the awful ASCII export from a Tecan Sunrise.
6 Scripts used to create shared data sets
All scripts that begin with the name 'analyze' are used to process data in a way that gets reused across multiple figures or code blocks. They will all run as self-contained scripts, but most don't generate output, they just make certain datasets available.
7 Scripts used to generate figures
Each figure panel that contains data was generated using the code contained in the scripts below.
- generate-figures.R
- this is just a convenience script that runs all the scripts below
- figure-2.R
- figure-3.R
- figure-4.R
- figure-5.R
- figure-6.R
- figure-S1.R
- figure-S2.R
- figure-S3.R
- figure-S4.R
- figure-S5.R
- figure-S6.R
- figure-S7.R
8 Statistics for Results
The following code blocks justify the statistics cited in the main text.
8.1 Increased mortality explains slow population growth for some heat sensitive strains
Remarkably, and in contrast with the other two strains we examined, the distribution of fecundity among YJM693 cells that survived heat stress was identical to that of unstressed cells (Kolmogorov-Smirnov test; p = 0.64).
This code runs the KS test to compare the fecundity of live stressed cells to unstressed cells.
source("analyze-two-color-trackscar.R") source("analyze-three-color-trackscar.R") ## This is what happens when you decide to not use a database ## All this does is bring the sundry data frames together ## so that they can be compared with one another. strains = c(1513, 1523, 1587) listOfData = list( ## These cells were grown for 6 hr at 37C, then were allowed ## to recovery at 30C. live35_5 = subset( recoveryCounts, (growth2 > 0) & (strain %in% strains) & (temp %in% c("35.5C", "40C")) & # S288C recovery is at 40 (recoveryTemp == "30C recovery") & (recoveryTime == "6 hr recovery"))[,c("growth1", "first", "experiment", "strain")], dead35_5 = subset( recoveryCounts, (growth2 == 0) & (strain %in% strains) & (temp %in% c("35.5C", "40C")) & (recoveryTemp == "30C recovery") & (recoveryTime == "6 hr recovery"))[,c("growth1", "first", "experiment", "strain")], ## This is the 30C data to compare it to noheat = subset( heatStressCandidates, (strain %in% strains) & (temp %in% c("30C"))& (growth < 10))[,c("growth", "first", "last", "folder", "strain")] ) liveDeadUnstressed = ldply( listOfData, function(x){ if( "growth1" %in% colnames(x)){ # 3 color data with(x, data.frame(strain=strain, growth=growth1, first = first, second=first+growth1) ) }else{ # 2 color data with(x, data.frame(strain = as.numeric(strain), growth=growth, first = first, second = last))}}, .id = "type") %>% subset(!is.na(growth)) ddply(liveDeadUnstressed, .(strain), plyr::summarize, p = ks.test(growth[type == "live35_5"], growth[type == "noheat"])$p.value) #count(liveDeadUnstressed, c("strain", "type"))
strain | p |
---|---|
1513 | 0.637424252607437 |
1523 | 3.33066907387547e-16 |
1587 | 0 |
8.2 Fecundity can be positively or negatively associated with age during stress
8.2.1 Linear model fecundity p-values
At 30°C, average fecundity of cohorts of YJM693 increased slightly with age, nor whereas the fecundity of cohorts of YJM996 was not significantly affected by age (Fig. 5a)(linear model, p = 0.016 and p=0.68, respectively).
In contrast, at 35.5°C, replicative age significantly affects the average fecundity of a cohort in the strains YJM693 and YJM996 (linear model, p=0.00059 and p=0.00076, respectively).
source("analyze-linear-models.R") ## This just prints the p-value associated with the t-test of the ## significance of the slope lmSummaries %>% subset(var == "first") %>% dcast( strain ~ temp, value.var = "Pr...t..") %>% plyr::summarize( strain, `30C` = round(`30C`, 5), `35.5C` = round(`35.5C`, 5))
strain | 30C | 35.5C |
---|---|---|
1513 | 0.01564 | 0.00059 |
1523 | 0.68425 | 0.00076 |
1587 | 0.07558 | 0.57134 |
The average fecundity of a cohort of S288C was not affected by its age at any temperature (Fig. S5).
source("analyze-linear-models.R") ## This just prints the p-value associated with the t-test of the ## significance of the slope lmSummaries2 <- ldply(lm2, function(x){ out <- summary(x)$coefficients data.frame( var = c("intercept", "first"), out) }) %>% subset(var == "first") %>% plyr::summarize(temp, `p` = round(`Pr...t..`, 5))
temp | p |
---|---|
30 | 0.92532 |
35.5 | 0.9974 |
37 | 0.55688 |
38.5 | 0.59948 |
40 | 0.59471 |
8.2.2 Linear model fecundity slopes
Interestingly, while YJM693 cells produce an average of 0.21 ± 0.12 fewer daughters in six hours per cohort when heat stressed, YJM996 cells produce an average of 0.33 ± 0.17 more daughters in six hours per cohort (intervals are 95% confidence intervals of the mean)(Fig. 5a).
This is the estimate of the relationship between the age and fecundity
source("analyze-linear-models.R") lmSummaries %>% subset(var == "first") %>% dcast( strain ~ temp, value.var = "Estimate") %>% plyr::summarize( strain, `30C` = round(`30C`, 3), `35.5C` = round(`35.5C`, 3))
strain | 30C | 35.5C |
---|---|---|
1513 | 0.1 | -0.218 |
1523 | 0.041 | 0.334 |
1587 | -0.085 | -0.021 |
source("analyze-linear-models.R") lmSummaries %>% subset(var == "first") %>% dcast( strain ~ temp, value.var = "Std..Error") %>% plyr::summarize( strain, `30C` = round(`30C` * 1.98, 3), `35.5C` = round(`35.5C` * 1.98, 3))
8.3 Heat stress can cause premature senescence or early life mortality
8.3.1 Probability of death with age in YJM693
Using logistic regression, we estimate that there is a 20% (95% CI ± 6%) increase in the probability of death for each additional unit of replicative age in this strain during heat stress.
source("analyze-two-color-trackscar.R") mortality1513 <- heatStressCandidatesWithAge %>% subset(strain %in% c(1513)) %>% subset(temp == "35.5C") %>% transform(dead = ifelse(growth < 4, 1, 0)) %>% glm(dead~first, data = ., family="binomial") cat("Summary of regression:\n\n") summary(mortality1513) cat("oConfidence intervals:\n\n") confint(mortality1513)
Summary of regression: Call: glm(formula = dead ~ first, family = "binomial", data = .) Deviance Residuals: Min 1Q Median 3Q Max -1.6922 -0.9423 -0.8705 1.3461 1.5192 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -0.96851 0.07827 -12.373 < 2e-16 *** first 0.19339 0.02436 7.938 2.06e-15 *** --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 2860.2 on 2144 degrees of freedom Residual deviance: 2795.5 on 2143 degrees of freedom AIC: 2799.5 Number of Fisher Scoring iterations: 4 oConfidence intervals: 2.5 % 97.5 % (Intercept) -1.1228875 -0.8159817 first 0.1458738 0.2414310
Since the parameter estimates are log-odds, we exponentiate to get the odds. The estimate of the increase in mortality is 21%:
exp(0.19339)
1.21335591006032
95% confidence interval width:
exp(0.18319339) - exp(0.131458738)
0.0605558082175794
9 Statistics for Supplementary results
The following code blocks justify the statistics cited in the supplement.
9.1 Trackscar minimally affects cellular physiology
Using TrackScar we estimated the average division time to be 73.9 minutes for haploid cells of the genomic reference strain S288c grown in rich-media conditions.
The approach here is to fit a linear regression to the number of buds added for this timeseries.
source("load-libraries.R") timeseriesCounts <- read.csv("2016-Maxwell-Magwene-two-color-trackscar-timeseries.csv") ## Note that CMY1 is the S288C genomic reference strain and is haploid timeseriesCounts %>% subset(strain == "CMY1") %>% lm(growth~time, data=.) %>% summary %>% plyr::summarize( hours = round(60*(1/coefficients[2,1]),1), sderr = round(coefficients[2,2],3))
hours | sderr |
---|---|
73.9 | 0.029 |
We found no evidence that reproductive rates at earlier time points were any lower than later time points (Fig. S1a). Indeed, our data show that cells at time points immediately following the first stain produce slightly more daughters than those at later time points (linear model; p = 0.03).
source("load-libraries.R") timeseriesCounts <- read.csv("2016-Maxwell-Magwene-two-color-trackscar-timeseries.csv") meanByTime <- ddply(timeseriesCounts, .(strain, time), plyr::summarize, m = mean(growth, na.rm=T)) %>% ddply(.(strain), plyr::mutate, change = c( m[1], m[2:length(m)]-m[1:(length(m)-1)]), interval = c( time[1], time[2:length(m)]-time[1:(length(m)-1)]), time) %>% transform(rate = change/interval) meanByTime %>% subset((interval <=6)) %>% lm(rate~time, data = .) %>% summary()
Call: lm(formula = rate ~ time, data = .) Residuals: Min 1Q Median 3Q Max -0.68058 -0.15459 0.00655 0.12647 0.56621 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 0.99236 0.07831 12.673 <2e-16 *** time -0.04006 0.01791 -2.237 0.0292 * --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.2697 on 58 degrees of freedom Multiple R-squared: 0.07941, Adjusted R-squared: 0.06354 F-statistic: 5.003 on 1 and 58 DF, p-value: 0.02916
9.2 TrackScar provides a sensitive measure of differences in fecundity
This difference is significant (Paired t-test; n=3; p = 0.030). Consistent with this expectation, daughter cells of haploid strain S288C produced an average of 4.9 daughters in a six-hour period, whereas mother cells produced an average of 5.4 daughters (Fig. S1b).
source("analyze-two-color-trackscar.R") heatStressCandidatesWithAge <- read.csv("2016-Maxwell-Magwene-two-color-trackscar.csv", as.is=T) fig1Means <- haploidCounts %>% subset((first %in% c(1,2)))%>% # restrict to 1 & 2 bud old cells subset(!is.na(growth)) %>% transform( group=factor(first, labels = c(1,2)) ) %>% ddply( c("folder", "group"), plyr::summarize, mean=mean(growth)) %>% dcast(folder~group, value.var = "mean") cat("*** Daughter mean:\n") mean(fig1Means[["1"]]) cat("*** One bud mean:\n") mean(fig1Means[["2"]]) cat("*** T-test\n") with( fig1Means, t.test( `1`, `2`,paired=TRUE))
*** Daughter mean: [1] 4.912125 *** One bud mean: [1] 5.420181 *** T-test Paired t-test data: 1 and 2 t = -5.5597, df = 2, p-value = 0.03086 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -0.9012408 -0.1148706 sample estimates: mean of the differences -0.5080557
9.3 Population Growth Rate and Mean Fecundity Are Well Correlated
The average fecundity of cells measured using TrackScar and the maximum population growth rate measured by optical density at 35.5C are well-correlated (r2=0.58; Fig. S2).
source("analyze-two-color-trackscar.R") with(subset(candidateGrowth, !is.na(mean_35_5C)), cor(mean_35_5C, maxGrowth35halfC))^2
[1] 0.5754468
9.4 Heat stress can alter the distribution of ages in a population
Furthermore, neither YJM693 nor S288C showed significantly different age distributions at 30°C and 35.5°C (Kolmogorov-Smirnov test, p>0.3). However, YJM996 had a significantly different distribution of ages during growth at 35.5°C (Kolmogorov-Smirnov test, p=1.50×〖10〗 ^(-9)). . Furthermore, neither YJM693 nor S288C showed significantly different age distributions at 30°C and 35.5°C (Kolmogorov-Smirnov test, p>0.3). However, YJM996 had a significantly different distribution of ages during growth at 35.5°C (Kolmogorov-Smirnov test, p=1.74×〖10〗(-7)).
source("analyze-two-color-trackscar.R") subset( heatStressCandidates, strain %in% c(1587, 1513, 1523)) %>% dlply(.(strain), with, ks.test(first[temp == "30C"], first[temp == "35.5C"]))
$`1513` Two-sample Kolmogorov-Smirnov test data: first[temp == "30C"] and first[temp == "35.5C"] D = 0.042929, p-value = 0.2773 alternative hypothesis: two-sided $`1523` Two-sample Kolmogorov-Smirnov test data: first[temp == "30C"] and first[temp == "35.5C"] D = 0.16369, p-value = 1.737e-07 alternative hypothesis: two-sided $`1587` Two-sample Kolmogorov-Smirnov test data: first[temp == "30C"] and first[temp == "35.5C"] D = 0.042596, p-value = 0.6035 alternative hypothesis: two-sided attr(,"split_type") [1] "data.frame" attr(,"split_labels") strain 1 1513 2 1523 3 1587
10 Session Info
source("load-libraries.R") sessionInfo()
R version 3.2.3 (2015-12-10) Platform: x86_64-apple-darwin13.4.0 (64-bit) Running under: OS X 10.10.5 (Yosemite) locale: [1] C attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] cellGrowth_1.14.0 locfit_1.5-9.1 gridExtra_2.2.1 scales_0.4.0 [5] wesanderson_0.3.2 reshape2_1.4.1 plyr_1.8.3 magrittr_1.5 [9] ggplot2_2.1.0 loaded via a namespace (and not attached): [1] Rcpp_0.12.4 lattice_0.20-33 grid_3.2.3 gtable_0.2.0 [5] stringi_1.0-1 tools_3.2.3 stringr_1.0.0 munsell_0.4.3 [9] colorspace_1.2-6