GRNmap Testing Report 16 Test Files from Dahlquist-data 2015-05-26 TM

From OpenWetWare
Jump to navigationJump to search

Sigmoidal

Estimate + Forward

Forward only

Michaelis Menten

Estimate + Forward

Forward only

Testing each GRNmap input

  • Follow the protocol described by Dr. Dahlquist to prepare the data and select a list of candidate transcription factors to test.

Create the Input Excel Workbook for the Model

  1. Your file will be similar to the file "21-genes_50-edges_Dahlquist-data_Sigmoid_estimation.xls", but with your expression data and network. You should download this file, change the name, and edit it to include your data. Make sure to give it a meaningful filename that includes your last name or initials. Click this link to download the sample file from the GRNmap GitHub repository.)
  2. The first thing you need to do is determine the transcription factors that you are including in your network. You are going to use the "transposed" Regulation Matrix that you generated from YEASTRACT in the previous section.
    • Copy the transposed matrix from your "network" sheet and paste it into the worksheets called "network" and "network_weights".
    • Note that the transcription factor names have to be in the same order and same format across the top row and first column. CIN5 does not match Cin5p, so the latter will need to be changed to CIN5 if you have not already done so.
    • It may be easier for you if you put the transcription factors in alphabetical order (using the sort feature in Excel), but whether you leave your list the same as it is from the YEASTRACT assignment or in alphabetical order, make sure it is the same order for all of the worksheets.
  3. The next worksheet to edit is the one called "degradation_rates".
    • Paste your list of transcription factors from your "network" sheet into the column named "StandardName". You will need to look up the "SystematicName" of your genes. YEASTRACT has a feature that will allow you to paste your list of standard names in to retrieve the systematic names here.
    • Next, you will need to look up the degradation rates for your list of transcription factors. These rates have been calculated from protein half-life data from a paper by Belle et al. (2006). Look up the rates for your transcription factors from this file and include them in your "degradation_rates" worksheet.
    • If a transcription factor does not appear in the file above, use the value "0.027182242" for the degradation rate.
  4. The next worksheet to edit is the one called "production_rates".
    • Paste the "SystematicName" and "StandardName" columns from your "degradation_rates" sheet into the "production_rates" sheet.
    • The initial guesses for the production rates we are using for the model are two times the degradation rate. Compute these values from your degradation rates and paste the values into the column titled "ProductionRate".
  5. Next you will input the expression data for the wild type strain and one other strain (dcin5, dgln3, dhap4, dhmo1, dzap1, or spar; note that we can't use dswi4 because it only has 2 cold shock timepoints). You need to include only the data for the genes in your network, in the same order as they appear in the other worksheets.
    • Put the wild type data in the sheet called "wt".
    • The sample spreadsheet has a worksheet named "dcin5". Change this name to match the strain you are using (listed above). The instructions below should be followed for each strain sheet.
    • Paste the SystematicName and StandardName columns from one of your previous sheets into this one.
    • This data in this sheet is the Log Fold Changes for each replicate and each timepoint from the "Rounded_Normalized_Data" worksheet from the big Excel workbook in which you computed the statistics. We are only going to use the cold shock timepoints for the modeling. Thus your column headings for the data should be "15", "30", and "60". There will be multiple columns for each timepoint (typically 4) to represent the replicate data, but they will all have the same name. For example, you may have four columns with the header "15".
    • Copy and paste the data from your spreadsheet into this one. You need to include only the data for the genes in your network. Make sure that the genes are in the same order as in the other sheets.
  6. The "optimization_parameters" worksheet should have the following values:
    • alpha should be 0.01
    • kk_max should be 1
    • MaxIter should be 1e08 (one hundred million in plain English)
    • TolFun should be 1e-6
    • MaxFunEval should be 1e08 (one hundred million in plain English)
    • TolX should be 1e-6
    • Sigmoid should be 1
    • estimateParams should be 1
    • makeGraphs should be 1
    • fix_P should be 0
    • fix_b should be 1
    • For the parameter "time" (Cell A13), we should have "15", "30", and "60", since these are the timepoints we have in our data.
    • For the parameter "Strain" (Cell A14), replace "dcin5" with the name of the second strain you are using, making sure that the capitalizaiton and spelling is the same as what you named the worksheet containing that strain's expression data. We are only going to compare two strains, so you can delete the other strain information.
    • For the parameter "Sheet" (Cell A15), give the number of the worksheet from left to right that your "Strain" log2 expression data is in. Delete any extra numbers because we are only comparing two strains.
  7. For the parameter "Deletion", leave the zero in cell B15 (corresponding to wt). In cell C15, put a number corresponding to the position in the list of gene names that the gene that was deleted appears. In the sample file, CIN5 is number 3 in the list. Note, disregard the column header in this count and only consider the actual gene names themselves.
    • For the parameter, "simtime", you perform the forward simulation of the expression in five minute increments from 0 to 60 minutes. Thus, this row should read: simtime should be 0, 5, <...fill by steps of 5...>, 60, each number in a different cell.
  8. The last sheet you will need to modify is called "network_b".
    • Paste in the list of standard names for your transcription factors from one of your previous sheets. Note that this sheet does not have a column for the Systematic Name.
    • Cell A1 in the sample files has the text "rows genes affected/cols genes controlling". I believe you can either have this text in cell A1 or "StandardName".
    • The "threshold" value for each gene should be "0".
  9. When you have completed the modifications to your file, upload it to LionShare and send Dr. Dahlquist an e-mail with a link to the file.

Running GRNmap

You will now finally run the GRNmap model on the input workbook you created above. You will run the optimization twice; once where the threshold parameters, b, are not estimated and once where the threshold parameters 'are estimated. You will compare the estimated weight and production rate parameters outputted by these two runs with each other.

  1. Download the current version of GRNmap from GitHub. Version 1.0.6 can be downloaded by following this link.
    • For the sake of organization, save it into a new folder called "GRNmap" either on your Desktop or within your "Microarray Analysis" folder.
    • Unzip the file by right-clicking on it and choosing 7-zip > Extract here.
  2. Open the "GRNmap-1.0.6" folder and open the "matlab" subfolder. Double-click on the file "GRNmodel.m" to open GRNmap in MATLAB 2014b.
  3. Click on the green triangle "Run" button to run the model.
    • You will be prompted by an Open dialog to find your input file that you created in the previous section. Browse and select this input file and click OK.
    • Note that the Open dialog will default to show files of *.xlsx only. If your file is saved as *.xls, you will need to select the drop-down menu to show all files.
    • A window called "Figure 1" will appear. The counter is showing the number of iterations of the least squares optimization algorithm. The top plot is showing the values of all the parameters being estimated. You should see some movement of the diamonds each time the counter iterates.
  4. Once the model has completed its run, plots showing the expression over time for all of the genes in the network will appear. Since we selected "makeGraphs = 1" these will automatically be saved as *.jpg files in the same folder as your input file. Compile the figures into a single PowerPoint file. Please label things clearly, placing an appropriate number of graphs on each page for a readable visual. Take some care to make sure that the graphs are the same size and the aspect ratio has not been changed.
  5. Create a new workbook for analyzing the weight data. In this workbook, create a new sheet: call it estimated_weights. In this new worksheet, create a column of labels of the form ControllerGeneA -> TargetGeneB, replacing these generic names with the standard gene names for each regulatory pair in your network. Remember that columns represent Controllers and rows represent Targets in your network and network_weights sheets.
  6. Extract the non-zero optimized weights from their worksheet and put them in a single column next to the corresponding ControllerGeneA -> TargetGeneB label.
  7. Now we will run the model a second time, this time estimating the threshold parameters, b. Save the input workbook that you previously created as a new file with a meaningful name (e.g. append "estimate-b" to the previous filename), and change fix_b to 0 in the "optimization_parameters" worksheet, so that the thresholds will be estimated. Rerun GRNmodel with the new input sheet.
  8. Repeat Parts (4) through (6) with the new output.
  9. Create an empty excel workbook, and copy both sets of weights into a worksheet.
  10. Create a bar chart in order to compare the "fixed b" and "estimated b" weights.
  11. Create bar charts to compare the production rates from each run.
  12. Copy the two bar charts into your powerpoint.
  13. Visualize the output of each of your model runs with GRNsight.
    • In order for this to work, you need to alter your output workbook slightly. You need to change the name of the sheet called "out_network_optimized_weights" to "network_optimized_weights"; i.e., delete the "out_" from that sheet name.
    • Arrange the genes in the same order you used to display them previously when you visualized the networks from YEASTRACT for both of your model output runs. Take a screenshot of each of the results and paste it into your PowerPoint presentation. Clearly label which screenshot belongs to which run.
    • Note that GRNsight will display differently now that you have estimated the weights. For positive weights > 0, the edge will be given a regular (pointy) arrowhead to indicate an activation relationship between the two nodes. For negative weights < 0, the edge will be given a blunt arrowhead (a line segment perpendicular to the edge direction) to indicate a repression relationship between the two nodes. The thickness of the edge will vary based on the magnitude of the absolute value of the weight. Larger magnitudes will have thicker edges and smaller magnitudes will have thinner edges. The way that GRNsight determines the edge thickness is as follows. GRNsight divides all weight values by the absolute value of the maximum weight in the matrix to normalize all the values to between zero and 1. GRNsight then adjusts the thickness of the lines to vary continuously from the minimum thickness (for normalized weights near zero) to maximum thickness (normalized weights of 1). The color of the edge also imparts information about the regulatory relationship. Edges with positive normalized weight values from 0.05 to 1 are colored magenta; edges with negative normalized weight values from -0.05 to -1 are colored cyan. Edges with normalized weight values between -0.05 and 0.05 are colored grey to emphasize that their normalized magnitude is near zero and that they have a weak influence on the target gene.
  14. Upload your PowerPoint, your two input workbooks, and your two output workbooks and link to them in your individual journal. Also upload the workbook where you made the bar charts comparing the weights from both runs.
    • Interpret the results of the model simulation.
      • Examine the graphs that were output by each of the runs. Which genes in the model have the closest fit between the model data and actual data? Which genes have the worst fit between the model and actual data? Why do you think that is? (Hint: how many inputs do these genes have?) How does this help you to interpret the microarray data?
      • Which genes showed the largest dynamics over the timecourse? In other words, which genes had a log fold change that is different than zero at one or more timepoints. The p values from the Week 11 ANOVA analysis are informative here. Does this seem to have an effect on the goodness of fit (see question above)?
      • Which genes showed differences in dynamics between the wild type and the other strain your group is using? Does the model adequately capture these differences? Given the connections in your network (see the visualization in GRNsight), does this make sense? Why or why not?
      • Examine the bar charts comparing the weights and production rates between the two runs. Were there any major differences between the two runs? Why do you think that was? Given the connections in your network (see the visualization in GRNsight), does this make sense? Why or why not?
      • Finally, based on the results of your entire project, which transcription factors are most likely to regulate the cold shock response and why?
    • Based on these results, what future directions do you want to take?


Dahlquist Lab Navigation