BB2490/DD2399, Analysis of data from high-throughput molecular biology experiments
Lab intructions, Computer exercise 1
Calculating FDRs and q-values
Data
lab1.xls (Please copy this spread sheet to your local drive)
This lab is based on the theory in Storey and Tibshirani's,
"Statistical significance for genomewide studies", PNAS, 2003. It will
be helpful to read it through in beforehand, and to have a copy of the article at hand.
Introduction
This computer exercise involves calculating false discovery rates (FDRs) for an LC-MS/MS high-throughput experiment, but
the methods used here are generally applicable to any high-throughput data. We will employ the widely used Excel, or
Open Office Spreadsheet, to perform the calculations, but other methods are also fine (python, perl, etc.).
After this exercise you will have to hand in a small text document (in .odt, .doc, .docx, .pdf or .rtf format) with answer to the questions.
Also include the graph created under point 4. The deadline for handing in the answers is one week after the laboratory exercise, and should be
done through e-mail to any of the teaching assistants.
Please work in pairs, as long as possible, and hand in one file per group.
More about the data
You will be using a data set consisting of
4 technical replicates each, of two E. coli samples spiked into a human epithelial kidney cell background.
In these two samples, labelled 1x and 8x, peptides have been identified using tandem mass spectrometry. The
peptides are represented on the different rows, and the purpose of the lab is to identify which peptides
that differs in abundance between samples 1x and 8x.
The abundance of the peptides of each sample is indicated by the numbers in the columns marked with 1x or 8x. This
number relates to the intensity of the peptide signal in the mass spectrometer.
Task
We will use a common statistical test to identify differences in signal strength, which we assume are related to difference in peptide concentration.
Differences in peptide concentration can be naively determined by
fold changes (log{8x/1x}) but more effectively determined by using a statistic such
as the t-test. Below, we'll go through the task referring to the spreadsheet, if you're unfamiliar with Excel, feel free to
write a script to perform the test and the multiple hypothesis correction.
- Use the t-test for each peptide to determine if the amount of peptide in the 8x and the 1x data sample differs.
- In the P-value column, use the Excel "TTEST" function, (ex: =TTEST(<range-of-8x-values>,<range-of-1x-values>,
<number-of-tails>,<t-test-type>) )
- The "TTEST" function takes four arguments: the first group of measurements, the second group of
measurements, the number of tails, and the type of t-test. The output is a p-value, indicating the probability that the
two groups have an equal mean.
- The number of tails in this case is 2, as we in principle have no idea which of the two groups has the highest mean. In a 1-tailed test,
on the other hand, we assume that one of the groups is always larger.
- The type of the t-test here is 3, which refers to that the two-samples have unequal variance.
- Sort data.
- Perform the t-test for all peptides in the spreadsheet.
- Sort the fields in the sheet "sort" in accending p-value order using the dialog under "Data > Sort".
In the menu that shows up, select that you want to sort according to the column with the p-values.
- Correct t-test p-values for multiple hypothesis testing by calculating the False Discovery Rate (FDR).
- Note the number of peptides we're analyzing.
- In a new column, for the q value, apply the formula:
QVALUE = min(p-value threshold * total_number_of_peptides/rank_of_current_peptide, qvalue_for_peptide_one_row_below)
See Equations on page 9443 of Storey and Tibshirani (PNAS, 2003).
- Beneficially use the MIN() function, it outputs the smallest value of the two arguments.
QUESTION 1: Why do we use the MIN-function?
(Hint: look for q values in Storey and Tibshirani (PNAS, 2003))
- Antoher useful function is the ROWS() function, which outputs the number of rows defined by the range.
- In the cell below your last entry (probably R5002) enter the value 1.0.
- QUESTION 2: How many features are being significantly different at FDR=0.01?
- Calcuation of the prior null probability, pi_0
- In a new column, called PI0, apply the formula:
pi0(lambda) = #{p>lambda}/(num_rows*(1-lambda)), where lambda represents the p-value on each row.
- Make a "chart" using the sequence "Insert > Chart", and specify a scatterplot illustrating pi0(lambda) as a function of
lambda (p-value).
- Following the same reasoning as in Figure 3 of Storey and Tibshirani (PNAS, 2003), estimate pi0.
- QUESTION 3: What is the value and meaning, in this case, of pi0?
- Calculate the FDR using pi0
- Adjust your FDR calculation so that it incorporates the new pi0 estimate in the column FDR_with_pi0.
- QUESTION 4: How many features are now significantly different at the FDR=0.01? And
how does this relate to the number of deviating features when pi0 was estimated as 1?
Questions
Can be e-mailed to any of the Teaching assistants.