Difference between revisions of "Week 9"
Kdahlquist (talk | contribs) (begin page with under construction tag) |
Kdahlquist (talk | contribs) (replace zap1 with cin5) |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | '''This journal entry is due on Thursday, October 31, at 12:01am Pacific time.''' | |
+ | |||
+ | '''''Note that you have an interim deadline of Tuesday, October 29, at 12:01am Pacific time, the content of which will be determined in class on Thursday; see stopping point below.''''' | ||
+ | |||
+ | == Objectives == | ||
+ | |||
+ | The purpose of this assignment is: | ||
+ | * to conduct the "analyze" step of the data life cycle for a DNA microarray dataset. | ||
+ | * to "think like a cell" to interpret the clusters and associated Gene Ontology terms. | ||
+ | * to develop an intuition about gene regulatory networks. | ||
+ | * to keep a detailed electronic laboratory notebook to facilitate reproducible research. | ||
+ | |||
+ | == Individual Journal Assignment == | ||
+ | |||
+ | * Store this journal entry as "''username'' Week 9" (i.e., this is the text to place between the square brackets when you link to this page). | ||
+ | * '''''Invoke''''' your template on your journal entry page so that you: | ||
+ | ** Link from your journal entry page to this Assignment page. | ||
+ | ** Link from your journal entry to your user page. | ||
+ | ** Add the "Journal Entry" category to the end of your wiki page. | ||
+ | * Because you have invoked your template on your user page, you should also have a: | ||
+ | ** Link from your user page to this Assignment page. | ||
+ | ** Link to your journal entry from your user page. | ||
+ | * The sections you need for this week are Purpose, Methods/Results (one combined section), Data & Files, Conclusion, Acknowledgments, and References (as specified by the [[Week_1 | Week 1]] assignment). | ||
+ | * For your assignment this week, the electronic laboratory notebook you will keep on your individual wiki page is crucial. An electronic laboratory notebook records all the manipulations you perform on the data and the answers to the questions throughout the protocol. Like a paper lab notebook found in a wet lab, it should contain enough information so that you or someone else could reproduce what you did using only the information from the notebook. | ||
+ | ** We will be performing a series of computations on a microarray dataset, primarily using Microsoft Excel. In the interests of reproducible research, it is appropriate to copy and paste the methods from this assignment into your individual journal entry. | ||
+ | ** You '''''must''''' then '''''modify''''' the general instructions (which are generic to the whole class) to your own data analysis, recording the specific modifications and equations that you used on '''your''' dataset. | ||
+ | ** Record the answers to the questions posed in the protocol at the place in which they appear in the method. You do not need to separate them out in a different results section. | ||
+ | ** All files generated in the protocol must be uploaded to the wiki and linked to from your journal entry page in a "Data and Files" section. | ||
+ | ** You will write a summary paragraph that gives the conclusions from this week's analysis. | ||
+ | |||
+ | === Homework Partners === | ||
+ | |||
+ | You will work in groups of three or four for the next two weeks of assignments. You will keep the same group for this week as you did last week. Please sit next to your group members in class. You will be expected to consult with your group members, in order to complete the assignment. However, unless otherwise stated, each partner must submit his or her own work as the individual journal entry (direct copies of each other's work is not allowed). Homework partners for this week are: | ||
+ | |||
+ | * Marcus & Jonar, Christina & Kaitlyn ([[Media:BIOL367_F19_microarray-data_wt.xlsx | wild type data]]) | ||
+ | * Ivy & Emma, DeLisa & Mihir ([[Media:BIOL367_F19_microarray-data_dCIN5.xlsx | ''Δcin5'' data]]) | ||
+ | * Iliana, Mike, Joey ([[Media:BIOL367_F19_microarray-data_dGLN3.xlsx | ''Δgln3'' data]]) | ||
+ | * Aby, David, Naomi ([[Media:BIOL367_F19_microarray-data_dHAP4.xlsx | ''Δhap4'' data]]) | ||
+ | |||
+ | === Microarray Data Analysis === | ||
+ | |||
+ | We will be working on the protocols in class on Thursday, October 24 and Tuesday, October 29. Based on the progress that is made during class, the milestone of what needs to be completed by the Week 9 journal deadline will be announced in class. We will conclude this protocol in Week 10. | ||
+ | |||
+ | ==== Background ==== | ||
+ | |||
+ | This is a list of steps required to analyze DNA microarray data. | ||
+ | |||
+ | #Quantitate the fluorescence signal in each spot | ||
+ | #Calculate the ratio of red/green fluorescence | ||
+ | #Log<sub>2</sub> transform the ratios | ||
+ | #* Steps 1-3 have been performed for you by the GenePix Pro software (which runs the microarray scanner). | ||
+ | #Normalize the ratios on each microarray slide | ||
+ | #Normalize the ratios for a set of slides in an experiment | ||
+ | #* Steps 4-5 was performed for you using a script in R, a statistics package (see: [https://openwetware.org/wiki/Dahlquist:Microarray_Data_Analysis_Workflow#Steps_4-5:_Within-_and_Between-chip_Normalization Microarray Data Analysis Workflow]) | ||
+ | #* You will perform the following steps: | ||
+ | #Perform statistical analysis on the ratios | ||
+ | #Compare individual genes with known data | ||
+ | #* Steps 6-7 are performed in Microsoft Excel | ||
+ | #Pattern finding algorithms (clustering) | ||
+ | #Map onto biological pathways | ||
+ | #* We will use software called STEM for the clustering and mapping | ||
+ | #* [https://academic.oup.com/bioinformatics/article/21/suppl_1/i159/203147 Ernst, J., & Bar-Joseph, Z. (2006). STEM: a tool for the analysis of short time series gene expression data. ''BMC bioinformatics'', ''7''(1), 191. DOI: 10.1093/bioinformatics/bti1022] | ||
+ | # Identifying regulatory transcription factors responsible for observed changes in gene expression (YEASTRACT) | ||
+ | #* [https://academic.oup.com/nar/article/46/D1/D348/4191333 Teixeira, M. C., Monteiro, P. T., Palma, M., Costa, C., Godinho, C. P., Pais, P., ... & Sá-Correia, I. (2017). YEASTRACT: an upgraded database for the analysis of transcription regulatory networks in ''Saccharomyces cerevisiae''. ''Nucleic acids research'', ''46''(D1), D348-D353.] | ||
+ | # Dynamical systems modeling of the gene regulatory network ([http://kdahlquist.github.io/GRNmap/ GRNmap]) | ||
+ | #* [https://link.springer.com/article/10.1007/s11538-015-0092-6 Dahlquist, K. D., Fitzpatrick, B. G., Camacho, E. T., Entzminger, S. D., & Wanner, N. C. (2015). Parameter estimation for gene regulatory networks from microarray data: cold shock response in ''Saccharomyces cerevisiae''. ''Bulletin of mathematical biology'', ''77''(8), 1457-1492. DOI: 10.1007/s11538-015-0092-6] | ||
+ | # Viewing modeling results in [http://dondi.github.io/GRNsight/ GRNsight] | ||
+ | #* [https://peerj.com/articles/cs-85/ Dahlquist, K. D., Dionisio, J. D. N., Fitzpatrick, B. G., Anguiano, N. A., Varshneya, A., Southwick, B. J., & Samdarshi, M. (2016). GRNsight: a web application and service for visualizing models of small-to medium-scale gene regulatory networks. ''PeerJ Computer Science'', ''2'', e85. DOI: 10.7717/peerj-cs.85] | ||
+ | |||
+ | ==== Clustering and GO Term Enrichment with stem ==== | ||
+ | |||
+ | ''Note that this section is continued from [[Week 8]]; the entire section is included even though you have completed some of it already.'' | ||
+ | |||
+ | # '''Prepare your microarray data file for loading into STEM.''' | ||
+ | #* Insert a new worksheet into your Excel workbook, and name it "(STRAIN)_stem". | ||
+ | #* Select all of the data from your "(STRAIN)_ANOVA" worksheet and Paste special > paste values into your "(STRAIN)_stem" worksheet. | ||
+ | #** Your leftmost column should have the column header "Master_Index". Rename this column to "SPOT". Column B should be named "ID". Rename this column to "Gene Symbol". Delete the column named "Standard_Name". | ||
+ | #** Filter the data on the B-H corrected p value to be > 0.05 (that's '''greater than''' in this case). | ||
+ | #*** Once the data has been filtered, select all of the rows (except for your header row) and delete the rows by right-clicking and choosing "Delete Row" from the context menu. Undo the filter. This ensures that we will cluster only the genes with a "significant" change in expression and not the noise. | ||
+ | #** Delete all of the data columns '''''EXCEPT''''' for the Average Log Fold change columns for each timepoint (for example, wt_AvgLogFC_t15, etc.). | ||
+ | #** Rename the data columns with just the time and units (for example, 15m, 30m, etc.). | ||
+ | #** Save your work. Then use ''Save As'' to save this spreadsheet as Text (Tab-delimited) (*.txt). Click OK to the warnings and close your file. | ||
+ | #*** Note that you should turn on the file extensions if you have not already done so. | ||
+ | # '''Now download and extract the STEM software.''' [http://www.cs.cmu.edu/~jernst/stem/ Click here to go to the STEM web site]. | ||
+ | #* Click on the [http://www.sb.cs.cmu.edu/stem/stem.zip download link] and download the <code>stem.zip</code> file to your Desktop. | ||
+ | #* Unzip the file. In Seaver 120, you can right click on the file icon and select the menu item ''7-zip > Extract Here''. | ||
+ | #* This will create a folder called <code>stem</code>. | ||
+ | #** You now need to download the Gene Ontology and yeast GO annotations and place them in this folder. | ||
+ | #** Click here to download the file [https://lmu.box.com/s/t8i5s1z1munrcfxzzs7nv7q2edsktxgl "gene_ontology.obo"]. | ||
+ | #** Click here to download the file [https://lmu.box.com/s/zlr1s8fjogfssa1wl59d5shyybtm1d49 "gene_association.sgd.gz"]. | ||
+ | #*Inside the folder, double-click on the <code>stem.jar</code> to launch the STEM program. | ||
+ | # '''Running STEM''' | ||
+ | ## In section 1 (Expression Data Info) of the the main STEM interface window, click on the ''Browse...'' button to navigate to and select your file. | ||
+ | ##* Click on the radio button ''No normalization/add 0''. | ||
+ | ##* Check the box next to ''Spot IDs included in the data file''. | ||
+ | ## In section 2 (Gene Info) of the main STEM interface window, leave the default selection for the three drop-down menu selections for Gene Annotation Source, Cross Reference Source, and Gene Location Source as "User provided". | ||
+ | ## Click the "Browse..." button to the right of the "Gene Annotation File" item. Browse to your "stem" folder and select the file "gene_association.sgd.gz" and click Open. | ||
+ | ## In section 3 (Options) of the main STEM interface window, make sure that the Clustering Method says "STEM Clustering Method" and do not change the defaults for Maximum Number of Model Profiles or Maximum Unit Change in Model Profiles between Time Points. | ||
+ | ## In section 4 (Execute) click on the yellow Execute button to run STEM. | ||
+ | ##* If you get an error, there are some known reasons why stem might not work. If you had #DIV/0! errors in your input file, it will cause problems. Re-open your file and open the Find/Replace dialog. Search for #DIV/0!, but don't put anything in the replace field. Click "Replace all" to remove the #DIV/0! errors. Then save your file and try again with stem. | ||
+ | ##* '''''This is the stopping point for the [[Week 8]] assignment and the beginning point for Week 9''''' | ||
+ | # '''Viewing and Saving STEM Results''' | ||
+ | ## A new window will open called "All STEM Profiles (1)". Each box corresponds to a model expression profile. Colored profiles have a statistically significant number of genes assigned; they are arranged in order from most to least significant p value. Profiles with the same color belong to the same cluster of profiles. The number in each box is simply an ID number for the profile. | ||
+ | ##* Click on the button that says "Interface Options...". At the bottom of the Interface Options window that appears below where it says "X-axis scale should be:", click on the radio button that says "Based on real time". Then close the Interface Options window. | ||
+ | ##*Take a screenshot of this window (on a PC, simultaneously press the <code>Alt</code> and <code>PrintScreen</code> buttons to save the view in the active window to the clipboard) and paste it into a PowerPoint presentation to save your figures. | ||
+ | ## Click on each of the SIGNIFICANT profiles (the colored ones) to open a window showing a more detailed plot containing all of the genes in that profile. | ||
+ | ##* Take a screenshot of each of the individual profile windows and save the images in your PowerPoint presentation. | ||
+ | ##* At the bottom of each profile window, there are two yellow buttons "Profile Gene Table" and "Profile GO Table". For each of the profiles, click on the "Profile Gene Table" button to see the list of genes belonging to the profile. In the window that appears, click on the "Save Table" button and save the file to your desktop. Make your filename descriptive of the contents, e.g. "wt_profile#_genelist.txt", where you replace the number symbol with the actual profile number. | ||
+ | ##** Upload these files to the wiki and link to them on your individual journal page. (Note that it will be easier to [[Week_4#Compressing_and_Decompressing_Files_with_7-Zip | zip all the files together]] and upload them as one file). | ||
+ | ##* For each of the significant profiles, click on the "Profile GO Table" to see the list of Gene Ontology terms belonging to the profile. In the window that appears, click on the "Save Table" button and save the file to your desktop. Make your filename descriptive of the contents, e.g. "wt_profile#_GOlist.txt", where you use "wt", "dGLN3", etc. to indicate the dataset and where you replace the number symbol with the actual profile number. At this point you have saved all of the primary data from the STEM software and it's time to interpret the results! | ||
+ | ##** Upload these files to the wiki and link to them on your individual journal page. (Note that it will be easier to [[Week_4#Compressing_and_Decompressing_Files_with_7-Zip | zip all the files together]] and upload them as one file). | ||
+ | # '''Analyzing and Interpreting STEM Results''' | ||
+ | ## Select '''''one''''' of the profiles you saved in the previous step for further intepretation of the data. I suggest that you choose one that has a pattern of up- or down-regulated genes at the cold shock timepoints. '''''Each member of your group should choose a different profile.''''' Answer the following: | ||
+ | ##* '''''Why did you select this profile? In other words, why was it interesting to you?''''' | ||
+ | ##* '''''How many genes belong to this profile?''''' | ||
+ | ##* '''''How many genes were expected to belong to this profile?''''' | ||
+ | ##* '''''What is the p value for the enrichment of genes in this profile?''''' Bear in mind that we just finished computing p values to determine whether each individual gene had a significant change in gene expression at each time point. This p value determines whether the number of genes that show this particular expression profile across the time points is significantly more than expected. | ||
+ | ##* Open the GO list file you saved for this profile in Excel. This list shows all of the Gene Ontology terms that are associated with genes that fit this profile. Select the third row and then choose from the menu Data > Filter > Autofilter. Filter on the "p-value" column to show only GO terms that have a p value of < 0.05. '''''How many GO terms are associated with this profile at p < 0.05?''''' The GO list also has a column called "Corrected p-value". This correction is needed because the software has performed thousands of significance tests. Filter on the "Corrected p-value" column to show only GO terms that have a corrected p value of < 0.05. '''''How many GO terms are associated with this profile with a corrected p value < 0.05?''''' | ||
+ | ##* Select the top 6 Gene Ontology terms from your filtered list (either p < 0.05 or corrected p < 0.05). | ||
+ | <!--##** Each member of the group will be reporting on his or her own cluster in your research presentation. You should take care to choose terms that are the most significant, but that are also not too redundant. For example, "RNA metabolism" and "RNA biosynthesis" are redundant with each other because they mean almost the same thing.--> | ||
+ | ##*** Note whether the same GO terms are showing up in multiple clusters. | ||
+ | ##**'''''Look up the definitions for each of the terms at [http://geneontology.org http://geneontology.org]. In your research presentation, you will discuss the biological interpretation of these GO terms. In other words, why does the cell react to cold shock by changing the expression of genes associated with these GO terms? Also, what does this have to do with the transcription factor being deleted (for the groups working with deletion strain data)?''''' | ||
+ | ##** To easily look up the definitions, go to [http://geneontology.org http://geneontology.org]. | ||
+ | ##** Copy and paste the GO ID (e.g. GO:0044848) into the search field on the left of the page. | ||
+ | ##** In the [http://amigo.geneontology.org/amigo/medial_search?q=GO%3A0044848 results] page, click on the button that says "Link to detailed information about <term>, in this case "biological phase"". | ||
+ | ##** The definition will be on the next results page, e.g. [http://amigo.geneontology.org/amigo/term/GO:0044848 here]. | ||
+ | |||
+ | '''''This is the stopping point for the interim deadline of 12:01am, Tuesday October 29.''''' | ||
+ | |||
+ | ==== Using YEASTRACT to Infer which Transcription Factors Regulate a Cluster of Genes (Tuesday, October 29)==== | ||
+ | |||
+ | In the previous analysis using STEM, we found a number of gene expression profiles (aka clusters) which grouped genes based on similarity of gene expression changes over time. The implication is that these genes share the same expression pattern because they are regulated by the same (or the same set) of transcription factors. We will explore this using the YEASTRACT database. | ||
+ | |||
+ | # Open the gene list in Excel for the one of the significant profiles from your stem analysis. Choose a cluster with a clear cold shock/recovery up/down or down/up pattern. You should also choose one of the largest clusters. | ||
+ | #* Copy the list of gene IDs onto your clipboard. | ||
+ | # Launch a web browser and go to the [http://www.yeastract.com/ YEASTRACT database]. | ||
+ | #* On the left panel of the window, click on the link to [http://www.yeastract.com/formrankbytf.php ''Rank by TF'']. | ||
+ | #* Paste your list of genes from your cluster into the box labeled ''ORFs/Genes''. | ||
+ | #* Check the box for ''Check for all TFs''. | ||
+ | #* Accept the defaults for the Regulations Filter (Documented, DNA binding plus expression evidence) | ||
+ | #* Do '''''not''''' apply a filter for "Filter Documented Regulations by environmental condition". | ||
+ | #* Rank genes by TF using: The % of genes in the list and in YEASTRACT regulated by each TF. | ||
+ | #* Click the ''Search'' button. | ||
+ | # Answer the following questions: | ||
+ | #* In the results window that appears, the p values colored green are considered "significant", the ones colored yellow are considered "borderline significant" and the ones colored pink are considered "not significant". '''''How many transcription factors are green or "significant"?''''' | ||
+ | #* '''''Copy the table of results from the web page and paste it into a new Excel workbook to preserve the results.''''' | ||
+ | #** '''''Upload the Excel file to the wiki and link to it in your electronic lab notebook.''''' | ||
+ | #** '''''Are CIN5, GLN3, and/or HAP4 on the list? If so, what is their "% in user set", "% in YEASTRACT", and "p value".''''' | ||
+ | # For the mathematical model that we will build, we need to define a ''gene regulatory network'' of transcription factors that regulate other transcription factors. We can use YEASTRACT to assist us with creating the network. We want to generate a network with approximately 15-20 transcription factors in it. | ||
+ | #* You need to select from this list of "significant" transcription factors, which ones you will use to run the model. You will use these transcription factors and add GLN3, HAP4, and CIN5 if they are not in your list. Explain in your electronic notebook how you decided on which transcription factors to include. Record the list and your justification in your electronic lab notebook. Each group member will select a different network (they can have some overlapping transcription factors, but some should also be different). | ||
+ | #* Go back to the YEASTRACT database and follow the link to ''[http://www.yeastract.com/formregmatrix.php Generate Regulation Matrix]''. | ||
+ | #* Copy and paste the list of transcription factors you identified (plus HAP4, GLN3, and CIN5) into both the "Transcription factors" field and the "Target ORF/Genes" field. | ||
+ | #* We are going to use the "Regulations Filter" options of "Documented", "'''Only''' DNA binding evidence" | ||
+ | #** Click the "Generate" button. | ||
+ | #** In the results window that appears, click on the link to the "Regulation matrix (Semicolon Separated Values (CSV) file)" that appears and save it to your Desktop. Rename this file with a meaningful name so that you can distinguish it from the other files you will generate. | ||
+ | |||
+ | ==== Visualizing Your Gene Regulatory Networks with GRNsight ==== | ||
+ | |||
+ | We will analyze the regulatory matrix files you generated above in Microsoft Excel and visualize them using GRNsight to determine which one will be appropriate to pursue further in the modeling. | ||
+ | # First we need to properly format the output files from YEASTRACT. | ||
+ | #* Open the file in Excel. It will not open properly in Excel because a semicolon was used as the column delimiter instead of a comma. To fix this, Select the entire Column A. Then go to the "Data" tab and select "Text to columns". In the Wizard that appears, select "Delimited" and click "Next". In the next window, select "Semicolon", and click "Next". In the next window, leave the data format at "General", and click "Finish". This should now look like a table with the names of the transcription factors across the top and down the first column and all of the zeros and ones distributed throughout the rows and columns. This is called an "adjacency matrix." If there is a "1" in the cell, that means there is a connection between the trancription factor in that row with that column. | ||
+ | #* Save this file in Microsoft Excel workbook format (.xlsx). | ||
+ | <!--#* Check to see that all of the transcription factors in the matrix are connected to at least one of the other transcription factors by making sure that there is at least one "1" in a row or column for that transcription factor. If a factor is not connected to any other factor, delete its row and column from the matrix. Make sure that you still have somewhere between 15 and 30 transcription factors in your network after this pruning. | ||
+ | #** Only delete the transcription factor if there are all zeros in its column '''AND''' all zeros in its row. You may find visualizing the matrix in GRNsight (below) can help you find these easily.--> | ||
+ | #* For this adjacency matrix to be usable in GRNmap (the modeling software) and GRNsight (the visualization software), we need to transpose the matrix. Insert a new worksheet into your Excel file and name it "network". Go back to the previous sheet and select the entire matrix and copy it. Go to you new worksheet and click on the A1 cell in the upper left. Select "Paste special" from the "Home" tab. In the window that appears, check the box for "Transpose". This will paste your data with the columns transposed to rows and vice versa. This is necessary because we want the transcription factors that are the "regulatORS" across the top and the "regulatEES" along the side. | ||
+ | #* The labels for the genes in the columns and rows need to match. Thus, delete the "p" from each of the gene names in the columns. Adjust the case of the labels to make them all upper case. | ||
+ | #* In cell A1, copy and paste the text "rows genes affected/cols genes controlling". | ||
+ | #* Finally, for ease of working with the adjacency matrix in Excel, we want to alphabatize the gene labels both across the top and side. | ||
+ | #** Select the area of the entire adjacency matrix. | ||
+ | #** Click the Data tab and click the custom sort button. | ||
+ | #** Sort Column A alphabetically, being sure to exclude the header row. | ||
+ | #** Now sort row 1 from left to right, excluding cell A1. In the Custom Sort window, click on the options button and select sort left to right, excluding column 1. | ||
+ | #* Name the worksheet containing your organized adjacency matrix "network" and Save. | ||
+ | # Now we will visualize what these gene regulatory networks look like with the GRNsight software. | ||
+ | #* Go to the [http://dondi.github.io/GRNsight/ GRNsight] home page. | ||
+ | #* Select the menu item File > Open and select the regulation matrix .xlsx file that has the "network" worksheet in it that you formatted above. If the file has been formatted properly, GRNsight should automatically create a graph of your network. You can click the "Grid Layout" button to arrange the nodes in a grid, or you can click and drag the nodes (genes) around until you get a layout that you like and take a screenshot of the results. Paste it into your PowerPoint presentation. | ||
+ | #** If you have nodes (genes) floating around in the display that are not connected to any other nodes, we need to delete them from the network for the modeling to work properly. Go back to the Excel workbook and network sheet and delete both the row and column with the floating gene's name. Then re-upload the edited file to GRNsight to visualize it. Use this final version in your PowerPoint and subsequent modeling. | ||
+ | |||
+ | ==== Creating the GRNmap Input Workbook ==== | ||
+ | |||
+ | TBD | ||
+ | <!-- | ||
+ | Now that you have identified the gene regulatory network that you want to model, the next step is to generate the input Excel workbook that you will run in the GRNmap modeling software. | ||
+ | |||
+ | [https://github.com/kdahlquist/DahlquistLab/raw/master/data/Spring2019/15-genes_28-edges_sample_Sigmoid_estimation_2019.xlsx Click here to download a sample workbook] on which to base the one specific to your network and microarray data. | ||
+ | |||
+ | Note that when following the instructions below, you need to follow them precisely, to the letter, or GRNmap will return an error. | ||
+ | |||
+ | ==== production_rates sheet ==== | ||
+ | |||
+ | * This sheet contains initial guesses for the production rate parameters, ''P'', for all genes in the network. | ||
+ | * Assuming that the system is in steady state with the relative expression of all genes equal to 1, (P/2) - lambda = 0, where lambda is the degradation rate, is a reasonable initial guess. | ||
+ | * The sheet should contain two columns (from left to right) entitled, "id", "production_rate". | ||
+ | ** The id is an identifier that the user will use to identify a particular gene. In our case, we are using the "StandardName", for example, GLN3. | ||
+ | ** The "production_rate" column should then contain the initial guesses for the ''P'' parameter as described above, rounded to four decimal places. | ||
+ | *** The production rates are provided in a Microsoft Access database, which you can [https://github.com/kdahlquist/DahlquistLab/raw/master/data/Spring2019/Expression-and-Degradation-rate-database_2019.accdb download from here.] | ||
+ | *** You can copy and paste the values one-by-one from the "production_rates" table, or perform a query to grab them as a group. | ||
+ | *** To perform the query, you will need to follow these steps. | ||
+ | ***# Import a your list of genes to a new table in the database. Click on the "External Data" tab and select the Excel icon with the "up" arrow on it. | ||
+ | ***# Click the "Browse" button and select your Excel file containing your network that you used to upload to GRNsight. | ||
+ | ***# Make sure the button next to "Import the source data into a new table in the current database" and click "OK". | ||
+ | ***# In the next window, select the "network" worksheet, if it hasn't already been automatically selected for you. Click "Next". | ||
+ | ***# In the next window, make sure the "First Row Contains Column Headings" is checked. Click "Next". | ||
+ | ***# In the next window, the left-most column will be highlighted. Change the "Field Name" to "id" if it doesn't say that already. Click "Next". | ||
+ | ***# In the next window, select the button for "Choose my own primary key." and choose the "id" field from the drop down next to it. Click "Next". | ||
+ | ***# In the next field, make sure it says "Import to Table: network". Click Finish. | ||
+ | ***# In the next window you do not need to save the import steps, so just click "Close". | ||
+ | ***# A table called "network" should appear in the list of tables at the left of the window. | ||
+ | ***# Go to the "Create" tab. Click on the icon for "Query Design". | ||
+ | ***# In the window that appears, click on the "network" table and click "Add". Click on the "production_rates" table and click "Add". Click "Close". | ||
+ | ***# The two tables should appear in the main part of the window. We need to tell Access which fields in the two tables correspond to each other. Click on the word "id" in the network table and drag your mouse to the "standard_name" field in the "production_rates" table, and release. You will see a line appear between those two words. | ||
+ | ***# Right-click on the line between those words and select "Join Properties" from the menu that appears. Select Option "2: Include ALL records from 'network' and only those records from 'production_rates' where the joined fields are equal." Click "OK". | ||
+ | ***# Click on the "id" word in the "network" table and drag it to the bottom of the screen to the first column next to the word "Field" and release. | ||
+ | ***# Click on the "production_rate" field in the "production_rates" table and drag it to the bottom of the screen to the second column next to the word "Field" and release. | ||
+ | ***# Right-click anywhere in the gray area near the two tables. In the menu that appears, select "Query Type > Make Table Query...". | ||
+ | ***# In the window that appears, name your table "production_rates_1" because you can't have two tables with the same name in the database. Make sure that "Current Database" is selected and Click "OK". | ||
+ | ***# Go to the "Query Tools: Menus" tab. Click on the exclamation point icon. A window will appear that tells you how many rows you are pasting into a new table. Click "Yes". | ||
+ | ***# Your new "production_rates_1" table will appear in the list at the left. Double-click on that table name to open it. | ||
+ | ***# You can copy the data in this table and paste it back into your Excel workbook. Make sure that when you paste that you use "Paste Special > Paste values" so that the Access formatting doesn't get carried along. You can also choose to export this table to Excel going to the "External Data" tab and selecting the Excel icon with the arrow pointing to the right. Select the workbook you want to export the table to, making sure that "Preserve Access formatting" is '''not''' checked. Click "OK", click "Close". | ||
+ | * Note that the genes should be listed in the same order in all the sheets in the Excel workbook. | ||
+ | |||
+ | ==== degradation_rates sheet ==== | ||
+ | |||
+ | * This sheet contains degradation rates for all genes in the network, which are provided by the user. | ||
+ | * Currently, the Dahlquist Lab is using data based on published mRNA half-life data from [http://rnajournal.cshlp.org/content/20/10/1645.full Neymotin et al. (2006)]. | ||
+ | ** We converted the half-life data values to the degradation rates by taking the natural log of the half-life and dividing by 2. | ||
+ | * The sheet should contain two columns (from left to right) entitled "id", and "degradation_rate". | ||
+ | ** The id is an identifier that the user will use to identify a particular gene. | ||
+ | ** The "degradation_rate" column should then contain the absolute value of the degradation rate for the corresponding gene as described above, rounded to four decimal places. | ||
+ | *** To obtain these values, you will use the same file, [https://github.com/kdahlquist/DahlquistLab/raw/master/data/Spring2019/Expression-and-Degradation-rate-database_2019.accdb Microsoft Access database] that you used to obtain the production rates in the first worksheet. Again, you can copy and paste the values one-by-one or you can follow the instructions to execute a query, substituting the appropriate "degradation_rates" table in the query. Note that you don't need to re-import your "network" table, you just need to create and execute the query. | ||
+ | * Again note, the genes should be listed in the same order in all the sheets in the Excel workbook. | ||
+ | |||
+ | ==== Expression Data Sheets for Individual Yeast Strains ==== | ||
+ | |||
+ | * Expression data can be provided for either a single strain or multiple strains of yeast (for example, the wild type strain and a transcription factor deletion strain). | ||
+ | ** Each strain will have its own sheet in the workbook. | ||
+ | ** Each sheet should be given a unique name that follows the convention "STRAIN_log2_expression", where the word "STRAIN" is replaced by the strain designation, which will appear in the optimization_diagnostics sheet. | ||
+ | *** Everyone in the class will have at least one expression worksheet called "wt_log2_expression". | ||
+ | *** You should have included the transcription factors GLN3, HAP4, and | ||
+ | CIN5 in your network. Thus, we will use the expression data from the dGLN3, dHAP4, dCIN5 deletion strains in our workbooks as well, naming the worksheets "dgln3_log2_expression", "dhap4_log2_expression", and "dcin5_expression". | ||
+ | **** If, for some reason, you don't have all three of those genes in your network, only include expression data for the wild type and the genes out of those three that you have in your network. | ||
+ | * The sheet should have the following columns in this order: | ||
+ | *# "id": list of all genes. The genes should be listed in the same order in all the sheets in the Excel workbook. | ||
+ | *# The next series of columns should contain the expression data for each gene at a given timepoint given as log2 ratios (log2 fold changes). The column header should be the time at which the data were collected, without any units. For example, the 15 minute timepoint would have a column header "15" and the 30 minute timepoint would have the column header "30". GRNmap supports replicate data for each of the timepoints. Replicate data for the same timepoint should be in columns immediately next to each other and have the same column headers. For example, three replicates of the 15 minute timepoint would have "15", "15", "15" as the column headers. | ||
+ | *# If data are provided for multiple strains, each strain should have data for the same timepoints, although the number of replicates can vary. | ||
+ | * Include the data for the 15, 30, and 60 minute timepoints, but not the 90 or 120 minute timepoints. | ||
+ | * The data you will be using is contained in the [https://github.com/kdahlquist/DahlquistLab/raw/master/data/Spring2019/Expression-and-Degradation-rate-database_2019.accdb Expression-and-Degradation-rate-database_2019.accdb] file that you used to obtain the production and degradation rates. | ||
+ | * It is tedious to copy and paste all of these data by hand, so we will execute a query in Microsoft Access to do it for you. Follow the steps listed for the "production_rates" sheet for each strains expression data. After you import the data into Excel, you will need to change the column headers to "15", "15", etc., as described above. | ||
+ | |||
+ | ==== network sheet ==== | ||
+ | |||
+ | * The network you derived from the YEASTRACT database for the [[BIOL388/S19:Week 5 | Week 5]] assignment can be copied and pasted into this sheet directly. You may need to edit the contents of cell A1, but the rest should be good to go (especially since you previewed it in GRNsight). The description below just explains what is already in this worksheet. | ||
+ | ** This sheet contains an adjacency matrix representation of the gene regulatory network. | ||
+ | ** The columns correspond to the transcription factors and the rows correspond to the target genes controlled by those transcription factors. | ||
+ | ** A “1” means there is an edge connecting them and a “0” means that there is no edge connecting them. | ||
+ | ** The upper-left cell (A1) should contain the text “cols regulators/rows targets”. This text is there as a reminder of the direction of the regulatory relationships specified by the adjacency matrix. | ||
+ | ** The rest of row 1 should contain the names of the transcription factors that are controlling the other genes in the network, one transcription factor name per column. | ||
+ | ** The rest of column A should contain the names of the target genes that are being controlled by the transcription factors heading each of the columns in the matrix, one target gene name per row. | ||
+ | ** The transcription factor names should correspond to the "id" in the other sheets in the workbook. They should be capitalized the same way and occur in the same order along the top and side of the matrix. The matrix needs to be symmetric, i.e., the same transcription factors should appear along the top and left side of the matrix. The genes should be listed in the same order in all the sheets in the Excel workbook. | ||
+ | ** Each cell in the matrix should then contain a zero (0) if there is no regulatory relationship between those two transcription factors, or a one (1) if there is a regulatory relationship between them. Again, the columns correspond to the transcription factors and the rows correspond to the target genes controlled by those transcription factors. | ||
+ | |||
+ | ==== network_weights sheet ==== | ||
+ | |||
+ | * These are the initial guesses for the estimation of the weight parameters, ''w''. | ||
+ | * Since these weights are initial guesses which will be optimized by GRNmap, the content of this sheet can be identical to the "network" sheet. | ||
+ | |||
+ | ==== optimization_parameters sheet ==== | ||
+ | |||
+ | * The optimization_parameters sheet should have two columns (from left to right) entitled, "optimization_parameter" and "value". | ||
+ | * You should copy this worksheet from the [https://github.com/kdahlquist/DahlquistLab/raw/master/data/Spring2019/15-genes_28-edges_sample_Sigmoid_estimation_2019.xlsx sample workbook] provided. The only row that you need to modify is row 15, "Strain". Include just the strain designations for which you have a corresponding STRAIN_log2_expression sheet. If you don't have the dgln3, dhap4, or dcin5 expression sheets, then you will delete those from this row. If you do so, make sure that you don't leave any gaps between cells. | ||
+ | * What follows below is an explanation of what the optimization_parameters mean. | ||
+ | ** alpha: Penalty term weighting (from the L-curve analysis) | ||
+ | ** kk_max: Number of times to re-run the optimization loop. In some cases re-starting the optimization loop can improve performance of the estimation. | ||
+ | ** MaxIter: Number of times MATLAB iterates through the optimization scheme. If this is set too low, MATLAB will stop before the parameters are optimized. | ||
+ | ** TolFun: How different two least squares evaluations should be before the program determines that it is not making any improvement | ||
+ | ** MaxFunEval: maximum number of times the program will evaluate the least squares cost | ||
+ | ** TolX: How close successive least squares cost evaluations should be before the program determines that it is not making any improvement. | ||
+ | ** production_function: = Sigmoid (case-insensitive) if sigmoidal model, =MM (case-insensitive) if Michaelis-Menten model | ||
+ | ** L_curve: =0 if an L-curve analysis should NOT be run or =1 if an L-curve analysis SHOULD be run. The L-curve analysis will automatically run sequential rounds of estimation for an array of fixed alpha values (0.8, 0.5, 0.2, 0.1,0.08, 0.05,0.02,0.01, 0.008, 0.005, 0.002, 0.001, 0.0008, 0.0005, 0.0002, and 0.0001). GRNmap makes a copy of the user's selected input workbook and changes alpha to the first alpha in the list. The estimation runs and the resulting parameter values are used as the initial guesses for the next round of estimation with the next alpha value. This process repeats until all alpha values have been run. New input and output workbooks are generated for each alpha value, although currently, the graphs are only saved for the last run. | ||
+ | ** estimate_params =1 if want to estimate parameters and =0 if the user wants to do just one forward run | ||
+ | ** make_graphs =1 to output graphs; =0 to not output graphs | ||
+ | ** fix_P =1 if the user does not want to estimate the production rate, ''P'', parameter, just use the initial guess and never change; =0 to estimate | ||
+ | ** fix_b =1 if the user does not want to estimate the ''b'' parameter, just use the initial guess and never change; =0 to estimate | ||
+ | ** expression_timepoints: A row containing a list of the time points when the data was collected experimentally. Should correspond to the timepoint column headers in the STRAIN_log2_expression sheets. | ||
+ | ** Strain: A row containing a list of all of the strains for which there is expression data in the workbook. Should correspond to the "STRAIN" portion of the names of the STRAIN_log2_expression sheets for each strain. Note that GRNmap will run the model for the wild type network (all genes present in the network) and for networks where the gene deleted from the designated STRAIN has been deleted from the network. | ||
+ | ** simulation_timepoints: A row containing a list of the time points at which to evaluate the differential equations to generate the simulated data. This does not need to correspond to the actual measurement times, but should be in the same units (e.g. minutes). | ||
+ | |||
+ | ==== threshold_b sheet ==== | ||
+ | |||
+ | * These are the initial guesses for the estimation of the ''threshold_b'' parameters. | ||
+ | * There should be two columns. | ||
+ | ** The left-most column should contain the header "id" and list the standard names for the genes in the model in the same order as in the other sheets. | ||
+ | ** The second column should have the header "threshold_b" and should contain the initial guesses, we are going to use all 0. | ||
+ | --> | ||
+ | |||
+ | ==== Data and Files ==== | ||
+ | |||
+ | Your data and files section should include: | ||
+ | * Your Excel workbook with all of your calculations (you may have had to make corrections since the last version). | ||
+ | ** Note that you will be working with this workbook for the next week or two, adding computations to it. Save the new versions to the wiki with the '''same filename'''. The wiki will store each version of the file so you can always go back to a previous version, if need be. | ||
+ | * Your PowerPoint slide with a summary table of p values, updated with the screenshots from the stem software and the GRNsight network. | ||
+ | ** You will also be adding to the PowerPoint presentation during subsequent steps in the analysis. | ||
+ | * The input .txt file that you used to run stem. | ||
+ | * The file that you uploaded to GRNsight. | ||
+ | * The zipped together genelist and GOlist files for each of your significant profiles. | ||
+ | |||
+ | ==== Conclusion (Summary Paragraph) ==== | ||
+ | |||
+ | * Write a summary paragraph that gives the conclusions from this week's analysis. | ||
+ | |||
+ | == Shared Journal Assignment == | ||
+ | |||
+ | * Store your journal entry in the shared [[Class Journal Week 9]] page. If this page does not exist yet, go ahead and create it (congratulations on getting in first ''':)''' ) | ||
+ | * Link to your journal entry from your user page. | ||
+ | * Link back from the journal entry to your user page. | ||
+ | **'''''NOTE: you can easily fulfill the links part of these instructions by adding them to your template and using the template on your user page.''''' | ||
+ | * Sign your portion of the journal with the standard wiki signature shortcut (<code><nowiki>~~~~</nowiki></code>). | ||
+ | * Add the "Journal Entry" and "Shared" categories to the end of the wiki page (if someone has not already done so). | ||
+ | |||
+ | === Reflect === | ||
+ | |||
+ | This week marks the end of Part 2 "Going Deeper" unit of the course. At this point in the semester, you have worked with 7-8 other people in the class as partners on journal assignments. Next week, you will be placed on teams of four that you will stay with throughout the rest of the semester. Ultimately the teams will be assigned by Dr. Dahlquist based on balancing areas of expertise amongst the team members. However, I will also be gathering your input into the formation of the teams. In class on Thursday, October 31, you will confidentially fill out a card giving me the names of three other people in the class whom you want to be on your team (you are allowed choose people that haven't been your journal partner yet) and one person whom you prefer not to be on your team. | ||
+ | |||
+ | As we get ready for the team projects, please reflect upon working in teams either in this class or in previous classes. Reading each others's reflections may also give you some insight into whom you want on your team. | ||
+ | |||
+ | # What kinds of characteristics do you want in your teammates, and why? | ||
+ | # What kinds of things make teamwork go smoothly? | ||
+ | # What kinds of things make teamwork not go so smoothly? | ||
+ | |||
+ | [[Category:Assignment]] |
Latest revision as of 14:47, 29 October 2019
This journal entry is due on Thursday, October 31, at 12:01am Pacific time.
Note that you have an interim deadline of Tuesday, October 29, at 12:01am Pacific time, the content of which will be determined in class on Thursday; see stopping point below.
Contents
- 1 Objectives
- 2 Individual Journal Assignment
- 2.1 Homework Partners
- 2.2 Microarray Data Analysis
- 2.2.1 Background
- 2.2.2 Clustering and GO Term Enrichment with stem
- 2.2.3 Using YEASTRACT to Infer which Transcription Factors Regulate a Cluster of Genes (Tuesday, October 29)
- 2.2.4 Visualizing Your Gene Regulatory Networks with GRNsight
- 2.2.5 Creating the GRNmap Input Workbook
- 2.2.6 Data and Files
- 2.2.7 Conclusion (Summary Paragraph)
- 3 Shared Journal Assignment
Objectives
The purpose of this assignment is:
- to conduct the "analyze" step of the data life cycle for a DNA microarray dataset.
- to "think like a cell" to interpret the clusters and associated Gene Ontology terms.
- to develop an intuition about gene regulatory networks.
- to keep a detailed electronic laboratory notebook to facilitate reproducible research.
Individual Journal Assignment
- Store this journal entry as "username Week 9" (i.e., this is the text to place between the square brackets when you link to this page).
- Invoke your template on your journal entry page so that you:
- Link from your journal entry page to this Assignment page.
- Link from your journal entry to your user page.
- Add the "Journal Entry" category to the end of your wiki page.
- Because you have invoked your template on your user page, you should also have a:
- Link from your user page to this Assignment page.
- Link to your journal entry from your user page.
- The sections you need for this week are Purpose, Methods/Results (one combined section), Data & Files, Conclusion, Acknowledgments, and References (as specified by the Week 1 assignment).
- For your assignment this week, the electronic laboratory notebook you will keep on your individual wiki page is crucial. An electronic laboratory notebook records all the manipulations you perform on the data and the answers to the questions throughout the protocol. Like a paper lab notebook found in a wet lab, it should contain enough information so that you or someone else could reproduce what you did using only the information from the notebook.
- We will be performing a series of computations on a microarray dataset, primarily using Microsoft Excel. In the interests of reproducible research, it is appropriate to copy and paste the methods from this assignment into your individual journal entry.
- You must then modify the general instructions (which are generic to the whole class) to your own data analysis, recording the specific modifications and equations that you used on your dataset.
- Record the answers to the questions posed in the protocol at the place in which they appear in the method. You do not need to separate them out in a different results section.
- All files generated in the protocol must be uploaded to the wiki and linked to from your journal entry page in a "Data and Files" section.
- You will write a summary paragraph that gives the conclusions from this week's analysis.
Homework Partners
You will work in groups of three or four for the next two weeks of assignments. You will keep the same group for this week as you did last week. Please sit next to your group members in class. You will be expected to consult with your group members, in order to complete the assignment. However, unless otherwise stated, each partner must submit his or her own work as the individual journal entry (direct copies of each other's work is not allowed). Homework partners for this week are:
- Marcus & Jonar, Christina & Kaitlyn ( wild type data)
- Ivy & Emma, DeLisa & Mihir ( Δcin5 data)
- Iliana, Mike, Joey ( Δgln3 data)
- Aby, David, Naomi ( Δhap4 data)
Microarray Data Analysis
We will be working on the protocols in class on Thursday, October 24 and Tuesday, October 29. Based on the progress that is made during class, the milestone of what needs to be completed by the Week 9 journal deadline will be announced in class. We will conclude this protocol in Week 10.
Background
This is a list of steps required to analyze DNA microarray data.
- Quantitate the fluorescence signal in each spot
- Calculate the ratio of red/green fluorescence
- Log2 transform the ratios
- Steps 1-3 have been performed for you by the GenePix Pro software (which runs the microarray scanner).
- Normalize the ratios on each microarray slide
- Normalize the ratios for a set of slides in an experiment
- Steps 4-5 was performed for you using a script in R, a statistics package (see: Microarray Data Analysis Workflow)
- You will perform the following steps:
- Perform statistical analysis on the ratios
- Compare individual genes with known data
- Steps 6-7 are performed in Microsoft Excel
- Pattern finding algorithms (clustering)
- Map onto biological pathways
- We will use software called STEM for the clustering and mapping
- Ernst, J., & Bar-Joseph, Z. (2006). STEM: a tool for the analysis of short time series gene expression data. BMC bioinformatics, 7(1), 191. DOI: 10.1093/bioinformatics/bti1022
- Identifying regulatory transcription factors responsible for observed changes in gene expression (YEASTRACT)
- Dynamical systems modeling of the gene regulatory network (GRNmap)
- Viewing modeling results in GRNsight
Clustering and GO Term Enrichment with stem
Note that this section is continued from Week 8; the entire section is included even though you have completed some of it already.
- Prepare your microarray data file for loading into STEM.
- Insert a new worksheet into your Excel workbook, and name it "(STRAIN)_stem".
- Select all of the data from your "(STRAIN)_ANOVA" worksheet and Paste special > paste values into your "(STRAIN)_stem" worksheet.
- Your leftmost column should have the column header "Master_Index". Rename this column to "SPOT". Column B should be named "ID". Rename this column to "Gene Symbol". Delete the column named "Standard_Name".
- Filter the data on the B-H corrected p value to be > 0.05 (that's greater than in this case).
- Once the data has been filtered, select all of the rows (except for your header row) and delete the rows by right-clicking and choosing "Delete Row" from the context menu. Undo the filter. This ensures that we will cluster only the genes with a "significant" change in expression and not the noise.
- Delete all of the data columns EXCEPT for the Average Log Fold change columns for each timepoint (for example, wt_AvgLogFC_t15, etc.).
- Rename the data columns with just the time and units (for example, 15m, 30m, etc.).
- Save your work. Then use Save As to save this spreadsheet as Text (Tab-delimited) (*.txt). Click OK to the warnings and close your file.
- Note that you should turn on the file extensions if you have not already done so.
- Now download and extract the STEM software. Click here to go to the STEM web site.
- Click on the download link and download the
stem.zip
file to your Desktop. - Unzip the file. In Seaver 120, you can right click on the file icon and select the menu item 7-zip > Extract Here.
- This will create a folder called
stem
.- You now need to download the Gene Ontology and yeast GO annotations and place them in this folder.
- Click here to download the file "gene_ontology.obo".
- Click here to download the file "gene_association.sgd.gz".
- Inside the folder, double-click on the
stem.jar
to launch the STEM program.
- Click on the download link and download the
- Running STEM
- In section 1 (Expression Data Info) of the the main STEM interface window, click on the Browse... button to navigate to and select your file.
- Click on the radio button No normalization/add 0.
- Check the box next to Spot IDs included in the data file.
- In section 2 (Gene Info) of the main STEM interface window, leave the default selection for the three drop-down menu selections for Gene Annotation Source, Cross Reference Source, and Gene Location Source as "User provided".
- Click the "Browse..." button to the right of the "Gene Annotation File" item. Browse to your "stem" folder and select the file "gene_association.sgd.gz" and click Open.
- In section 3 (Options) of the main STEM interface window, make sure that the Clustering Method says "STEM Clustering Method" and do not change the defaults for Maximum Number of Model Profiles or Maximum Unit Change in Model Profiles between Time Points.
- In section 4 (Execute) click on the yellow Execute button to run STEM.
- If you get an error, there are some known reasons why stem might not work. If you had #DIV/0! errors in your input file, it will cause problems. Re-open your file and open the Find/Replace dialog. Search for #DIV/0!, but don't put anything in the replace field. Click "Replace all" to remove the #DIV/0! errors. Then save your file and try again with stem.
- This is the stopping point for the Week 8 assignment and the beginning point for Week 9
- In section 1 (Expression Data Info) of the the main STEM interface window, click on the Browse... button to navigate to and select your file.
- Viewing and Saving STEM Results
- A new window will open called "All STEM Profiles (1)". Each box corresponds to a model expression profile. Colored profiles have a statistically significant number of genes assigned; they are arranged in order from most to least significant p value. Profiles with the same color belong to the same cluster of profiles. The number in each box is simply an ID number for the profile.
- Click on the button that says "Interface Options...". At the bottom of the Interface Options window that appears below where it says "X-axis scale should be:", click on the radio button that says "Based on real time". Then close the Interface Options window.
- Take a screenshot of this window (on a PC, simultaneously press the
Alt
andPrintScreen
buttons to save the view in the active window to the clipboard) and paste it into a PowerPoint presentation to save your figures.
- Click on each of the SIGNIFICANT profiles (the colored ones) to open a window showing a more detailed plot containing all of the genes in that profile.
- Take a screenshot of each of the individual profile windows and save the images in your PowerPoint presentation.
- At the bottom of each profile window, there are two yellow buttons "Profile Gene Table" and "Profile GO Table". For each of the profiles, click on the "Profile Gene Table" button to see the list of genes belonging to the profile. In the window that appears, click on the "Save Table" button and save the file to your desktop. Make your filename descriptive of the contents, e.g. "wt_profile#_genelist.txt", where you replace the number symbol with the actual profile number.
- Upload these files to the wiki and link to them on your individual journal page. (Note that it will be easier to zip all the files together and upload them as one file).
- For each of the significant profiles, click on the "Profile GO Table" to see the list of Gene Ontology terms belonging to the profile. In the window that appears, click on the "Save Table" button and save the file to your desktop. Make your filename descriptive of the contents, e.g. "wt_profile#_GOlist.txt", where you use "wt", "dGLN3", etc. to indicate the dataset and where you replace the number symbol with the actual profile number. At this point you have saved all of the primary data from the STEM software and it's time to interpret the results!
- Upload these files to the wiki and link to them on your individual journal page. (Note that it will be easier to zip all the files together and upload them as one file).
- A new window will open called "All STEM Profiles (1)". Each box corresponds to a model expression profile. Colored profiles have a statistically significant number of genes assigned; they are arranged in order from most to least significant p value. Profiles with the same color belong to the same cluster of profiles. The number in each box is simply an ID number for the profile.
- Analyzing and Interpreting STEM Results
- Select one of the profiles you saved in the previous step for further intepretation of the data. I suggest that you choose one that has a pattern of up- or down-regulated genes at the cold shock timepoints. Each member of your group should choose a different profile. Answer the following:
- Why did you select this profile? In other words, why was it interesting to you?
- How many genes belong to this profile?
- How many genes were expected to belong to this profile?
- What is the p value for the enrichment of genes in this profile? Bear in mind that we just finished computing p values to determine whether each individual gene had a significant change in gene expression at each time point. This p value determines whether the number of genes that show this particular expression profile across the time points is significantly more than expected.
- Open the GO list file you saved for this profile in Excel. This list shows all of the Gene Ontology terms that are associated with genes that fit this profile. Select the third row and then choose from the menu Data > Filter > Autofilter. Filter on the "p-value" column to show only GO terms that have a p value of < 0.05. How many GO terms are associated with this profile at p < 0.05? The GO list also has a column called "Corrected p-value". This correction is needed because the software has performed thousands of significance tests. Filter on the "Corrected p-value" column to show only GO terms that have a corrected p value of < 0.05. How many GO terms are associated with this profile with a corrected p value < 0.05?
- Select the top 6 Gene Ontology terms from your filtered list (either p < 0.05 or corrected p < 0.05).
- Note whether the same GO terms are showing up in multiple clusters.
- Look up the definitions for each of the terms at http://geneontology.org. In your research presentation, you will discuss the biological interpretation of these GO terms. In other words, why does the cell react to cold shock by changing the expression of genes associated with these GO terms? Also, what does this have to do with the transcription factor being deleted (for the groups working with deletion strain data)?
- To easily look up the definitions, go to http://geneontology.org.
- Copy and paste the GO ID (e.g. GO:0044848) into the search field on the left of the page.
- In the results page, click on the button that says "Link to detailed information about <term>, in this case "biological phase"".
- The definition will be on the next results page, e.g. here.
- Select one of the profiles you saved in the previous step for further intepretation of the data. I suggest that you choose one that has a pattern of up- or down-regulated genes at the cold shock timepoints. Each member of your group should choose a different profile. Answer the following:
This is the stopping point for the interim deadline of 12:01am, Tuesday October 29.
Using YEASTRACT to Infer which Transcription Factors Regulate a Cluster of Genes (Tuesday, October 29)
In the previous analysis using STEM, we found a number of gene expression profiles (aka clusters) which grouped genes based on similarity of gene expression changes over time. The implication is that these genes share the same expression pattern because they are regulated by the same (or the same set) of transcription factors. We will explore this using the YEASTRACT database.
- Open the gene list in Excel for the one of the significant profiles from your stem analysis. Choose a cluster with a clear cold shock/recovery up/down or down/up pattern. You should also choose one of the largest clusters.
- Copy the list of gene IDs onto your clipboard.
- Launch a web browser and go to the YEASTRACT database.
- On the left panel of the window, click on the link to Rank by TF.
- Paste your list of genes from your cluster into the box labeled ORFs/Genes.
- Check the box for Check for all TFs.
- Accept the defaults for the Regulations Filter (Documented, DNA binding plus expression evidence)
- Do not apply a filter for "Filter Documented Regulations by environmental condition".
- Rank genes by TF using: The % of genes in the list and in YEASTRACT regulated by each TF.
- Click the Search button.
- Answer the following questions:
- In the results window that appears, the p values colored green are considered "significant", the ones colored yellow are considered "borderline significant" and the ones colored pink are considered "not significant". How many transcription factors are green or "significant"?
- Copy the table of results from the web page and paste it into a new Excel workbook to preserve the results.
- Upload the Excel file to the wiki and link to it in your electronic lab notebook.
- Are CIN5, GLN3, and/or HAP4 on the list? If so, what is their "% in user set", "% in YEASTRACT", and "p value".
- For the mathematical model that we will build, we need to define a gene regulatory network of transcription factors that regulate other transcription factors. We can use YEASTRACT to assist us with creating the network. We want to generate a network with approximately 15-20 transcription factors in it.
- You need to select from this list of "significant" transcription factors, which ones you will use to run the model. You will use these transcription factors and add GLN3, HAP4, and CIN5 if they are not in your list. Explain in your electronic notebook how you decided on which transcription factors to include. Record the list and your justification in your electronic lab notebook. Each group member will select a different network (they can have some overlapping transcription factors, but some should also be different).
- Go back to the YEASTRACT database and follow the link to Generate Regulation Matrix.
- Copy and paste the list of transcription factors you identified (plus HAP4, GLN3, and CIN5) into both the "Transcription factors" field and the "Target ORF/Genes" field.
- We are going to use the "Regulations Filter" options of "Documented", "Only DNA binding evidence"
- Click the "Generate" button.
- In the results window that appears, click on the link to the "Regulation matrix (Semicolon Separated Values (CSV) file)" that appears and save it to your Desktop. Rename this file with a meaningful name so that you can distinguish it from the other files you will generate.
Visualizing Your Gene Regulatory Networks with GRNsight
We will analyze the regulatory matrix files you generated above in Microsoft Excel and visualize them using GRNsight to determine which one will be appropriate to pursue further in the modeling.
- First we need to properly format the output files from YEASTRACT.
- Open the file in Excel. It will not open properly in Excel because a semicolon was used as the column delimiter instead of a comma. To fix this, Select the entire Column A. Then go to the "Data" tab and select "Text to columns". In the Wizard that appears, select "Delimited" and click "Next". In the next window, select "Semicolon", and click "Next". In the next window, leave the data format at "General", and click "Finish". This should now look like a table with the names of the transcription factors across the top and down the first column and all of the zeros and ones distributed throughout the rows and columns. This is called an "adjacency matrix." If there is a "1" in the cell, that means there is a connection between the trancription factor in that row with that column.
- Save this file in Microsoft Excel workbook format (.xlsx).
- For this adjacency matrix to be usable in GRNmap (the modeling software) and GRNsight (the visualization software), we need to transpose the matrix. Insert a new worksheet into your Excel file and name it "network". Go back to the previous sheet and select the entire matrix and copy it. Go to you new worksheet and click on the A1 cell in the upper left. Select "Paste special" from the "Home" tab. In the window that appears, check the box for "Transpose". This will paste your data with the columns transposed to rows and vice versa. This is necessary because we want the transcription factors that are the "regulatORS" across the top and the "regulatEES" along the side.
- The labels for the genes in the columns and rows need to match. Thus, delete the "p" from each of the gene names in the columns. Adjust the case of the labels to make them all upper case.
- In cell A1, copy and paste the text "rows genes affected/cols genes controlling".
- Finally, for ease of working with the adjacency matrix in Excel, we want to alphabatize the gene labels both across the top and side.
- Select the area of the entire adjacency matrix.
- Click the Data tab and click the custom sort button.
- Sort Column A alphabetically, being sure to exclude the header row.
- Now sort row 1 from left to right, excluding cell A1. In the Custom Sort window, click on the options button and select sort left to right, excluding column 1.
- Name the worksheet containing your organized adjacency matrix "network" and Save.
- Now we will visualize what these gene regulatory networks look like with the GRNsight software.
- Go to the GRNsight home page.
- Select the menu item File > Open and select the regulation matrix .xlsx file that has the "network" worksheet in it that you formatted above. If the file has been formatted properly, GRNsight should automatically create a graph of your network. You can click the "Grid Layout" button to arrange the nodes in a grid, or you can click and drag the nodes (genes) around until you get a layout that you like and take a screenshot of the results. Paste it into your PowerPoint presentation.
- If you have nodes (genes) floating around in the display that are not connected to any other nodes, we need to delete them from the network for the modeling to work properly. Go back to the Excel workbook and network sheet and delete both the row and column with the floating gene's name. Then re-upload the edited file to GRNsight to visualize it. Use this final version in your PowerPoint and subsequent modeling.
Creating the GRNmap Input Workbook
TBD
Data and Files
Your data and files section should include:
- Your Excel workbook with all of your calculations (you may have had to make corrections since the last version).
- Note that you will be working with this workbook for the next week or two, adding computations to it. Save the new versions to the wiki with the same filename. The wiki will store each version of the file so you can always go back to a previous version, if need be.
- Your PowerPoint slide with a summary table of p values, updated with the screenshots from the stem software and the GRNsight network.
- You will also be adding to the PowerPoint presentation during subsequent steps in the analysis.
- The input .txt file that you used to run stem.
- The file that you uploaded to GRNsight.
- The zipped together genelist and GOlist files for each of your significant profiles.
Conclusion (Summary Paragraph)
- Write a summary paragraph that gives the conclusions from this week's analysis.
- Store your journal entry in the shared Class Journal Week 9 page. If this page does not exist yet, go ahead and create it (congratulations on getting in first :) )
- Link to your journal entry from your user page.
- Link back from the journal entry to your user page.
- NOTE: you can easily fulfill the links part of these instructions by adding them to your template and using the template on your user page.
- Sign your portion of the journal with the standard wiki signature shortcut (
~~~~
). - Add the "Journal Entry" and "Shared" categories to the end of the wiki page (if someone has not already done so).
Reflect
This week marks the end of Part 2 "Going Deeper" unit of the course. At this point in the semester, you have worked with 7-8 other people in the class as partners on journal assignments. Next week, you will be placed on teams of four that you will stay with throughout the rest of the semester. Ultimately the teams will be assigned by Dr. Dahlquist based on balancing areas of expertise amongst the team members. However, I will also be gathering your input into the formation of the teams. In class on Thursday, October 31, you will confidentially fill out a card giving me the names of three other people in the class whom you want to be on your team (you are allowed choose people that haven't been your journal partner yet) and one person whom you prefer not to be on your team.
As we get ready for the team projects, please reflect upon working in teams either in this class or in previous classes. Reading each others's reflections may also give you some insight into whom you want on your team.
- What kinds of characteristics do you want in your teammates, and why?
- What kinds of things make teamwork go smoothly?
- What kinds of things make teamwork not go so smoothly?