Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
r_test [2021/05/17 03:59] – [Question 1] 91.99.183.235r_test [2021/10/14 20:08] (current) – [Question 3] admin
Line 40: Line 40:
 ==== Question 3 ==== ==== Question 3 ====
  
-**A)**  Using the [[https://bioconductor.org/packages/release/bioc/vignettes/maftools/inst/doc/maftools.html|maftools]] and [[http://bioconductor.org/packages/release/bioc/html/TCGAbiolinks.html|TCGAbiolinks]] packages, determine the 3 most frequently mutated genes in liver cancer. Which of these 3 mutations is more predictive of survival? To answer this question, write a function that takes as input a gene name, and save KM plots in png format. Add the p-value as a legend in the plot. Deliverables are similar to question 1.+**A)** Using the [[https://bioconductor.org/packages/release/bioc/vignettes/maftools/inst/doc/maftools.html|maftools]] and [[http://bioconductor.org/packages/release/bioc/html/TCGAbiolinks.html|TCGAbiolinks]] packages, determine the 3 most frequently mutated genes in liver cancer. Which of these 3 mutations is more predictive of survival? To answer this question, write a function that takes as input a gene name, and save KM plots in png format. Add the p-value as a legend in the plot. Deliverables are similar to question 2.
  
- \\ **B)**  Let's define the //impact//  of a set of genes to be the p-value of a log-rank test that determines whether that gene set is associated with survival. Specifically, the null hypothesis of the log-rank test is that when all of these genes __are mutated together__, the survival does not change. I.e., we compare the cases who have mutations in all of these genes with the the rest of cases to compute a p-value. A small p-value indicates a significant difference between the two survival curves (KM plots) corresponding to these two groups. \\  \\ Write a function ''most.impact()''  that takes as input two ''k1''  and ''n1''  integers, and in the list of ''n1''  most mutated genes, finds the names of the ''k1''  genes with the best impact. Your function should return the names of the best ''k1''  genes (i.e., the set of genes with the best log-rank p-value), and also their impact. Run your function for ''k1=3'', and ''n1=3'', ''10'', and ''100''. What is the biological interpretation of your results?+\\ 
 +**B)** Let's define the //impact// of a set of genes to be the p-value of a log-rank test that determines whether that gene set is associated with survival. Specifically, the null hypothesis of the log-rank test is that when all of these genes __are mutated together__, the survival does not change. I.e., we compare the cases who have mutations in all of these genes with the the rest of cases to compute a p-value. A small p-value indicates a significant difference between the two survival curves (KM plots) corresponding to these two groups.\\ 
 +\\ 
 +Write a function ''most.impact()'' that takes as input two ''k1'' and ''n1'' integers, and in the list of ''n1'' most mutated genes, finds the names of the ''k1'' genes with the best impact. Your function should return the names of the best ''k1'' genes (i.e., the set of genes with the best log-rank p-value), and also their impact. Run your function for ''k1=3'', and ''n1=3'', ''10'', and ''100''. What is the biological interpretation of your results?
  
-__Hint:__  Use the ''utils::c?m?n()''  function, where you need to guess the question marks.+__Hint:__ Solution 1: Use the ''utils::c?m?n()'' function, where you need to guess the question marks.\\ 
 +Solution 2: Use another R function that uses ''utils::c?m?n()''.
  
-**Bonus**: Implement the ''utils::c?m?n()''  function yourself using dynamic programming. Compare the running time of your implementation vs. the utils implementations using large inputs that require at least a couple of minutes.+Deliverables are similar to question 2 plus you need to guess the above question marks and copy the line of the code on which ''c?m?n()'' is used in a short paragraph titled “Question marks”. 
 + 
 +**Bonus**: Implement the ''utils::c?m?n()'' function yourself using dynamic programming. Compare the running time of your implementation vs. the utils implementations using large inputs that require at least a couple of minutes.