This is work by Ainsley Neighbors - Fall 2022

L4 worms were moved to FUdR plates, then at 1 day old, then treated with either control or 25uM bafilomycin A1

Ainsley analyzed N2, cgt-1(XXX), cgt-3 worms File found dr chan’s computer - > setwd(“~/Desktop/Desktop - MU7116/0. Marian/2. Research/Ainsley”)

life <- read.csv("survival curve data2.csv")
str(life)
## 'data.frame':    273 obs. of  4 variables:
##  $ minute   : int  30 30 30 30 30 60 60 60 60 60 ...
##  $ status   : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ mutant   : chr  "cgt-1" "cgt-3" "cgt-3" "cgt-3" ...
##  $ treatment: chr  "ct" "baf" "baf" "ct" ...
library("survival")
library("survminer")
## Loading required package: ggplot2
## Loading required package: ggpubr

survival analysis

First, lets set up the basic survival analysis (Kaplan-Meier)

surv <- survfit(Surv(minute, status) ~ mutant +treatment, data = life)
surv
## Call: survfit(formula = Surv(minute, status) ~ mutant + treatment, 
##     data = life)
## 
##                              n events median 0.95LCL 0.95UCL
## mutant=cgt-1, treatment=baf 46     31    270     240     270
## mutant=cgt-1, treatment=ct  49     22     NA     270      NA
## mutant=cgt-3, treatment=baf 45     29    210     180      NA
## mutant=cgt-3, treatment=ct  44     25    240     210      NA
## mutant=N2, treatment=baf    44     26    270     240      NA
## mutant=N2, treatment=ct     45     16     NA      NA      NA
summary(surv)
## Call: survfit(formula = Surv(minute, status) ~ mutant + treatment, 
##     data = life)
## 
##                 mutant=cgt-1, treatment=baf 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    60     46       2    0.957  0.0301        0.899        1.000
##   120     44       4    0.870  0.0497        0.777        0.973
##   150     40       2    0.826  0.0559        0.724        0.943
##   180     38       5    0.717  0.0664        0.598        0.860
##   210     33       3    0.652  0.0702        0.528        0.805
##   240     30       4    0.565  0.0731        0.439        0.728
##   270     26      11    0.326  0.0691        0.215        0.494
## 
##                 mutant=cgt-1, treatment=ct  
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     49       1    0.980  0.0202        0.941        1.000
##    60     48       1    0.959  0.0283        0.905        1.000
##   120     47       1    0.939  0.0342        0.874        1.000
##   150     46       3    0.878  0.0468        0.790        0.974
##   180     43       6    0.755  0.0614        0.644        0.886
##   240     37       4    0.673  0.0670        0.554        0.818
##   270     33       6    0.551  0.0711        0.428        0.709
## 
##                 mutant=cgt-3, treatment=baf 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     45       2    0.956  0.0307        0.897        1.000
##    60     43       4    0.867  0.0507        0.773        0.972
##    90     39       4    0.778  0.0620        0.665        0.909
##   120     35       1    0.756  0.0641        0.640        0.892
##   150     34       3    0.689  0.0690        0.566        0.838
##   180     31       6    0.556  0.0741        0.428        0.721
##   210     25       3    0.489  0.0745        0.363        0.659
##   240     22       4    0.400  0.0730        0.280        0.572
##   270     18       2    0.356  0.0714        0.240        0.527
## 
##                 mutant=cgt-3, treatment=ct  
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     44       2    0.955  0.0314        0.895        1.000
##    60     42       1    0.932  0.0380        0.860        1.000
##   120     41       3    0.864  0.0517        0.768        0.971
##   150     38       4    0.773  0.0632        0.658        0.907
##   180     34       3    0.705  0.0688        0.582        0.853
##   210     31       4    0.614  0.0734        0.485        0.776
##   240     27       8    0.432  0.0747        0.308        0.606
## 
##                 mutant=N2, treatment=baf 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    90     44       1    0.977  0.0225        0.934        1.000
##   120     43       3    0.909  0.0433        0.828        0.998
##   150     40       1    0.886  0.0478        0.797        0.985
##   180     39       5    0.773  0.0632        0.658        0.907
##   210     34       3    0.705  0.0688        0.582        0.853
##   240     31       4    0.614  0.0734        0.485        0.776
##   270     27       9    0.409  0.0741        0.287        0.584
## 
##                 mutant=N2, treatment=ct  
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    90     45       1    0.978  0.0220        0.936        1.000
##   120     44       2    0.933  0.0372        0.863        1.000
##   150     42       3    0.867  0.0507        0.773        0.972
##   180     39       2    0.822  0.0570        0.718        0.942
##   210     37       2    0.778  0.0620        0.665        0.909
##   240     35       6    0.644  0.0714        0.519        0.801
summary(surv)$table
##                             records n.max n.start events   *rmean *se(rmean)
## mutant=cgt-1, treatment=baf      46    46      46     31 226.3043   9.069979
## mutant=cgt-1, treatment=ct       49    49      49     22 236.9388   8.315940
## mutant=cgt-3, treatment=baf      45    45      45     29 194.6667  12.059933
## mutant=cgt-3, treatment=ct       44    44      44     25 216.1364  10.230888
## mutant=N2, treatment=baf         44    44      44     26 235.9091   7.809179
## mutant=N2, treatment=ct          45    45      45     16 240.6667   7.393023
##                             median 0.95LCL 0.95UCL
## mutant=cgt-1, treatment=baf    270     240     270
## mutant=cgt-1, treatment=ct      NA     270      NA
## mutant=cgt-3, treatment=baf    210     180      NA
## mutant=cgt-3, treatment=ct     240     210      NA
## mutant=N2, treatment=baf       270     240      NA
## mutant=N2, treatment=ct         NA      NA      NA

Now, let’s look at the graph first

life$mutant <- factor(life$mutant, levels = c("N2", "cgt-1", "cgt-3"))
life$treatment <- factor(life$treatment, levels = c("ct", "baf"))

ggsurvplot(surv, linetype="treatment", col = "mutant",
           conf.int = FALSE,
           pval = FALSE,
           title = "WT and mutants survival to PQ")

Now, some statistics (log rank tests that do pairwise comparisons)

### log rank
surv_diff_bac <- survdiff(Surv(minute, status) ~ mutant +treatment, data = life)

surv_diff_bac
## Call:
## survdiff(formula = Surv(minute, status) ~ mutant + treatment, 
##     data = life)
## 
##                              N Observed Expected (O-E)^2/E (O-E)^2/V
## mutant=N2, treatment=ct     45       16     27.1   4.52085     6.212
## mutant=N2, treatment=baf    44       26     25.5   0.00811     0.011
## mutant=cgt-1, treatment=ct  49       22     29.3   1.79712     2.517
## mutant=cgt-1, treatment=baf 46       31     25.2   1.36050     1.836
## mutant=cgt-3, treatment=ct  44       25     22.2   0.35099     0.462
## mutant=cgt-3, treatment=baf 45       29     19.8   4.29094     5.533
## 
##  Chisq= 13.9  on 5 degrees of freedom, p= 0.02
### posthoc
pairwise_survdiff(Surv(minute, status) ~ mutant +treatment, data = life, 
                  p.adjust.method = "bonferroni",
                  rho = 0)
## 
##  Pairwise comparisons using Log-Rank test 
## 
## data:  life and mutant + treatment 
## 
##                             mutant=N2, treatment=ct  mutant=N2, treatment=baf
## mutant=N2, treatment=baf    0.997                    -                       
## mutant=cgt-1, treatment=ct  1.000                    1.000                   
## mutant=cgt-1, treatment=baf 0.139                    1.000                   
## mutant=cgt-3, treatment=ct  0.613                    1.000                   
## mutant=cgt-3, treatment=baf 0.041                    1.000                   
##                             mutant=cgt-1, treatment=ct 
## mutant=N2, treatment=baf    -                          
## mutant=cgt-1, treatment=ct  -                          
## mutant=cgt-1, treatment=baf 0.714                      
## mutant=cgt-3, treatment=ct  1.000                      
## mutant=cgt-3, treatment=baf 0.260                      
##                             mutant=cgt-1, treatment=baf
## mutant=N2, treatment=baf    -                          
## mutant=cgt-1, treatment=ct  -                          
## mutant=cgt-1, treatment=baf -                          
## mutant=cgt-3, treatment=ct  1.000                      
## mutant=cgt-3, treatment=baf 1.000                      
##                             mutant=cgt-3, treatment=ct 
## mutant=N2, treatment=baf    -                          
## mutant=cgt-1, treatment=ct  -                          
## mutant=cgt-1, treatment=baf -                          
## mutant=cgt-3, treatment=ct  -                          
## mutant=cgt-3, treatment=baf 1.000                      
## 
## P value adjustment method: bonferroni

survival by just the drug

surv_drug <- survfit(Surv(minute, status) ~ treatment, data = life)
surv_drug
## Call: survfit(formula = Surv(minute, status) ~ treatment, data = life)
## 
##                 n events median 0.95LCL 0.95UCL
## treatment=ct  138     63     NA     270      NA
## treatment=baf 135     86    270     240     270
summary(surv_drug)
## Call: survfit(formula = Surv(minute, status) ~ treatment, data = life)
## 
##                 treatment=ct 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30    138       3    0.978  0.0124        0.954        1.000
##    60    135       2    0.964  0.0159        0.933        0.995
##    90    133       1    0.957  0.0174        0.923        0.991
##   120    132       6    0.913  0.0240        0.867        0.961
##   150    126      10    0.841  0.0312        0.782        0.904
##   180    116      11    0.761  0.0363        0.693        0.835
##   210    105       6    0.717  0.0383        0.646        0.797
##   240     99      18    0.587  0.0419        0.510        0.675
##   270     81       6    0.543  0.0424        0.466        0.633
## 
##                 treatment=baf 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30    135       2    0.985  0.0104        0.965        1.000
##    60    133       6    0.941  0.0203        0.902        0.981
##    90    127       5    0.904  0.0254        0.855        0.955
##   120    122       8    0.844  0.0312        0.785        0.908
##   150    114       6    0.800  0.0344        0.735        0.870
##   180    108      16    0.681  0.0401        0.607        0.765
##   210     92       9    0.615  0.0419        0.538        0.703
##   240     83      12    0.526  0.0430        0.448        0.617
##   270     71      22    0.363  0.0414        0.290        0.454
summary(surv_drug)$table
##               records n.max n.start events   *rmean *se(rmean) median 0.95LCL
## treatment=ct      138   138     138     63 231.5217   5.098177     NA     270
## treatment=baf     135   135     135     86 218.8889   5.871665    270     240
##               0.95UCL
## treatment=ct       NA
## treatment=baf     270
### log rank
survdiff_drug <- survdiff(Surv(minute, status) ~ treatment, data = life)

survdiff_drug
## Call:
## survdiff(formula = Surv(minute, status) ~ treatment, data = life)
## 
##                 N Observed Expected (O-E)^2/E (O-E)^2/V
## treatment=ct  138       63     78.5      3.07      7.28
## treatment=baf 135       86     70.5      3.42      7.28
## 
##  Chisq= 7.3  on 1 degrees of freedom, p= 0.007
### posthoc
pairwise_survdiff(Surv(minute, status) ~ treatment, data = life, 
                  p.adjust.method = "bonferroni",
                  rho = 0)
## 
##  Pairwise comparisons using Log-Rank test 
## 
## data:  life and treatment 
## 
##     ct   
## baf 0.007
## 
## P value adjustment method: bonferroni

survival of just mutants

surv_mts <- survfit(Surv(minute, status) ~ mutant, data = life)
surv_mts
## Call: survfit(formula = Surv(minute, status) ~ mutant, data = life)
## 
##               n events median 0.95LCL 0.95UCL
## mutant=N2    89     42     NA     270      NA
## mutant=cgt-1 95     53    270     270      NA
## mutant=cgt-3 89     54    240     210      NA
summary(surv_mts)
## Call: survfit(formula = Surv(minute, status) ~ mutant, data = life)
## 
##                 mutant=N2 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    90     89       2    0.978  0.0157        0.947        1.000
##   120     87       5    0.921  0.0285        0.867        0.979
##   150     82       4    0.876  0.0349        0.811        0.948
##   180     78       7    0.798  0.0426        0.719        0.886
##   210     71       5    0.742  0.0464        0.656        0.838
##   240     66      10    0.629  0.0512        0.536        0.738
##   270     56       9    0.528  0.0529        0.434        0.643
## 
##                 mutant=cgt-1 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     95       1    0.989  0.0105        0.969        1.000
##    60     94       3    0.958  0.0206        0.918        0.999
##   120     91       5    0.905  0.0300        0.848        0.966
##   150     86       5    0.853  0.0364        0.784        0.927
##   180     81      11    0.737  0.0452        0.653        0.831
##   210     70       3    0.705  0.0468        0.619        0.803
##   240     67       8    0.621  0.0498        0.531        0.727
##   270     59      17    0.442  0.0510        0.353        0.554
## 
##                 mutant=cgt-3 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     89       4    0.955  0.0220        0.913        0.999
##    60     85       5    0.899  0.0320        0.838        0.964
##    90     80       4    0.854  0.0374        0.784        0.931
##   120     76       4    0.809  0.0417        0.731        0.895
##   150     72       7    0.730  0.0470        0.644        0.829
##   180     65       9    0.629  0.0512        0.536        0.738
##   210     56       7    0.551  0.0527        0.456        0.664
##   240     49      12    0.416  0.0522        0.325        0.532
##   270     37       2    0.393  0.0518        0.304        0.509
summary(surv_mts)$table
##              records n.max n.start events   *rmean *se(rmean) median 0.95LCL
## mutant=N2         89    89      89     42 238.3146   5.379749     NA     270
## mutant=cgt-1      95    95      95     53 231.7895   6.163028    270     270
## mutant=cgt-3      89    89      89     54 205.2809   8.003739    240     210
##              0.95UCL
## mutant=N2         NA
## mutant=cgt-1      NA
## mutant=cgt-3      NA
### log rank
surv_diff_mts <- survdiff(Surv(minute, status) ~ mutant, data = life)

surv_diff_mts
## Call:
## survdiff(formula = Surv(minute, status) ~ mutant, data = life)
## 
##               N Observed Expected (O-E)^2/E (O-E)^2/V
## mutant=N2    89       42     52.6    2.1381    3.7124
## mutant=cgt-1 95       53     54.4    0.0361    0.0638
## mutant=cgt-3 89       54     42.0    3.4325    5.3595
## 
##  Chisq= 6.3  on 2 degrees of freedom, p= 0.04
### posthoc
pairwise_survdiff(Surv(minute, status) ~ mutant, data = life, 
                  p.adjust.method = "bonferroni",
                  rho = 0)
## 
##  Pairwise comparisons using Log-Rank test 
## 
## data:  life and mutant 
## 
##       N2   cgt-1
## cgt-1 0.92 -    
## cgt-3 0.05 0.40 
## 
## P value adjustment method: bonferroni

survival of just mutants

surv_mts <- survfit(Surv(minute, status) ~ mutant, data = life)
surv_mts
## Call: survfit(formula = Surv(minute, status) ~ mutant, data = life)
## 
##               n events median 0.95LCL 0.95UCL
## mutant=N2    89     42     NA     270      NA
## mutant=cgt-1 95     53    270     270      NA
## mutant=cgt-3 89     54    240     210      NA
summary(surv_mts)
## Call: survfit(formula = Surv(minute, status) ~ mutant, data = life)
## 
##                 mutant=N2 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    90     89       2    0.978  0.0157        0.947        1.000
##   120     87       5    0.921  0.0285        0.867        0.979
##   150     82       4    0.876  0.0349        0.811        0.948
##   180     78       7    0.798  0.0426        0.719        0.886
##   210     71       5    0.742  0.0464        0.656        0.838
##   240     66      10    0.629  0.0512        0.536        0.738
##   270     56       9    0.528  0.0529        0.434        0.643
## 
##                 mutant=cgt-1 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     95       1    0.989  0.0105        0.969        1.000
##    60     94       3    0.958  0.0206        0.918        0.999
##   120     91       5    0.905  0.0300        0.848        0.966
##   150     86       5    0.853  0.0364        0.784        0.927
##   180     81      11    0.737  0.0452        0.653        0.831
##   210     70       3    0.705  0.0468        0.619        0.803
##   240     67       8    0.621  0.0498        0.531        0.727
##   270     59      17    0.442  0.0510        0.353        0.554
## 
##                 mutant=cgt-3 
##  time n.risk n.event survival std.err lower 95% CI upper 95% CI
##    30     89       4    0.955  0.0220        0.913        0.999
##    60     85       5    0.899  0.0320        0.838        0.964
##    90     80       4    0.854  0.0374        0.784        0.931
##   120     76       4    0.809  0.0417        0.731        0.895
##   150     72       7    0.730  0.0470        0.644        0.829
##   180     65       9    0.629  0.0512        0.536        0.738
##   210     56       7    0.551  0.0527        0.456        0.664
##   240     49      12    0.416  0.0522        0.325        0.532
##   270     37       2    0.393  0.0518        0.304        0.509
summary(surv_mts)$table
##              records n.max n.start events   *rmean *se(rmean) median 0.95LCL
## mutant=N2         89    89      89     42 238.3146   5.379749     NA     270
## mutant=cgt-1      95    95      95     53 231.7895   6.163028    270     270
## mutant=cgt-3      89    89      89     54 205.2809   8.003739    240     210
##              0.95UCL
## mutant=N2         NA
## mutant=cgt-1      NA
## mutant=cgt-3      NA
### log rank
surv_diff_mts <- survdiff(Surv(minute, status) ~ mutant, data = life)

surv_diff_mts
## Call:
## survdiff(formula = Surv(minute, status) ~ mutant, data = life)
## 
##               N Observed Expected (O-E)^2/E (O-E)^2/V
## mutant=N2    89       42     52.6    2.1381    3.7124
## mutant=cgt-1 95       53     54.4    0.0361    0.0638
## mutant=cgt-3 89       54     42.0    3.4325    5.3595
## 
##  Chisq= 6.3  on 2 degrees of freedom, p= 0.04
### posthoc
pairwise_survdiff(Surv(minute, status) ~ mutant, data = life, 
                  p.adjust.method = "bonferroni",
                  rho = 0)
## 
##  Pairwise comparisons using Log-Rank test 
## 
## data:  life and mutant 
## 
##       N2   cgt-1
## cgt-1 0.92 -    
## cgt-3 0.05 0.40 
## 
## P value adjustment method: bonferroni