Eyoung20 journal week 10

From LMU BioDB 2019
Jump to navigation Jump to search

Purpose

The goal of this weeks exercise is to prepare the data that has been collected since week 7 in the proper formatting within an excel worksheet. This worksheet will then be run through the grnsight program. Then to collect the visual results of the gene regulatory network after it is run through the program.

Methods

make sure to change the log2 headers and re-upload the excel sheet

Creating the GRNmap Input Workbook

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.

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 contained the initial guesses for the production rate parameters, P, for all genes in the network.
  • It was Assumed that the system was in steady state with the relative expression of all genes equal to 1, (P/2) - lambda = 0, where lambda was the degradation rate, was a reasonable initial guess.
  • The sheet contained two columns (from left to right) entitled, "id", "production_rate".
    • The id was an identifier that the user will use to identify a particular gene. In this case, "StandardName" was what was being used, for example, GLN3.
    • The "production_rate" column contained the initial guesses for the P parameter as described above, rounded to four decimal places.
      • The production rates were provided in a Microsoft Access database, which yo could be download from here.
      • A query was preformed to get the list of production rates for each gene as a group.
      • When the query was performed, these steps were followed.
        1. Imported the list of genes to a new table in the database. Clicked on the "External Data" tab and selected the Excel icon with the "up" arrow on it.
        2. Clicked the "Browse" button and selected the Excel file containing the network that was used to upload to GRNsight.
        3. Made sure the button next to "Import the source data into a new table in the current database" and clicked "OK".
        4. In the next window, selected the "network" worksheet, if it wasn't already automatically selected. Clicked "Next".
        5. In the next window, made sure the "First Row Contains Column Headings" was checked. Clicked "Next".
        6. In the next window, the left-most column was be highlighted. Changed the "Field Name" to "id". Clicked "Next".
        7. In the next window, selected the button for "Choose my own primary key." and chose the "id" field from the drop down next to it. Clicked "Next".
        8. In the next field, made sure it said "Import to Table: network". Clicked Finish.
        9. In the next window there was no need to save the import steps, so "Close" was clicked.
        10. A table called "network" appeared in the list of tables at the left of the window.
        11. The "Create" tab was opened. The icon for "Query Design" was then selected.
        12. In the window that appearsed, the "network" table was clicked and the "Add" option was sleeted. Clicked on the "production_rates" table and clicked the "Add". Then closed the window by clicking "Close".
        13. The two tables appeared in the main part of the window. Then Access was told which fields in the two tables correspond to each other.To do that the word "id" in the network table was clicked and dragged to the "standard_name" field in the "production_rates" table, and released. Then a line appeared between those two words.
        14. Right-clicked on the line between those words and selected "Join Properties" from the menu that appeared. Selected Option "2: Include ALL records from 'network' and only those records from 'production_rates' where the joined fields are equal." Clicked "OK".
        15. Clicked on the "id" word in the "network" table and dragged it to the bottom of the screen to the first column next to the word "Field" and released it.
        16. Clicked on the "production_rate" field in the "production_rates" table and dragged it to the bottom of the screen to the second column next to the word "Field" and released it.
        17. Right-clicked anywhere in the gray area near the two tables. In the menu that appeared, selected "Query Type > Make Table Query...".
        18. In the window that appeared, the table was named "production_rates_1" because their could not have been two tables with the same name in the database. Made sure that "Current Database" was selected and Clicked "OK".
        19. The "Query Tools: Menus" tab was opened. Clicked on the exclamation point icon. A window appeared that gave informations on how many rows were pasting into the new table. Clicked "Yes".
        20. The "production_rates_1" table then appeared in the list at the left. The table name was Double-clicked to open it.
        21. The data in this table was copied and pasted it back into the Excel workbook. When pasted "Paste Special > Paste values" was used so that the Access formatting did not get carried along.
  • Note that the genes should be listed in the same order in all the sheets in the Excel workbook.

degradation_rates sheet

  • This sheet contained degradation rates of all genes in the network, which were provided by the user.
  • Currently, the Dahlquist Lab is using data based on published mRNA half-life data from 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 contained 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 contained the absolute value of the degradation rate for the corresponding gene as described above, rounded to four decimal places.
      • To obtain these values, the same file was used, Microsoft Access database that was used to obtain the production rates in the first worksheet. Again, The instructions were followed to execute a query, substituting the appropriate "degradation_rates" table in the query.
  • Again note, the genes were 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 has its own sheet in the workbook.
    • Each sheet was given a unique name that follows the convention "STRAIN_log2_expression", where the word "STRAIN" was replaced by the strain designation, which will appear in the optimization_diagnostics sheet.
      • Everyone in the class had at least one expression worksheet called "wt_log2_expression".
      • The network included the transcription factors GLN3, HAP4, and CIN5. Thus, the expression data from the dGLN3, dHAP4, dCIN5 deletion strains were used in the workbooks as well, The worksheets were named "dgln3_log2_expression", "dhap4_log2_expression", and "dcin5_expression".
  • The sheet had the following columns in this order:
    1. "id": list of all genes. The genes were listed in the same order in all the sheets in the Excel workbook.
    2. The next series of columns contained the expression data for each gene at a given timepoint given as log2 ratios (log2 fold changes). The column header was the time at which the data were collected, without any units. For example, the 15 minute timepoint had the column header "15" and the 30 minute timepoint had the column header "30". GRNmap supported replicate data for each of the timepoints. Replicated data for the same timepoint should was placed in columns immediately next to each other and had the same column headers. For example, the three replicates of the 15 minute timepoint had "15", "15", "15" as the column headers.
    3. Data was provided for multiple strains, each strain had data for the same timepoints, although the number of replicates varied.
  • The worksheets included the data for the 15, 30, and 60 minute timepoints, but not the 90 or 120 minute timepoints.
  • The data used is contained in the Expression-and-Degradation-rate-database_2019.accdb file that was used to obtain the production and degradation rates.
  • It is tedious to copy and paste all of these data by hand, so a query was executed in Microsoft Access to do it. The steps listed for the "production_rates" sheet for each strains expression data were used to complete the query. After the data was imported into Excel, the column headers were changed to "15", "15", etc., as described above.

network sheet

  • The network that wasderived from the YEASTRACT database for the Week 5 assignment was copied and pasted into the network sheet directly.
    • This sheet contained an adjacency matrix representation of the gene regulatory network.
    • The columns corresponded to the transcription factors and the rows corresponded to the target genes controlled by those transcription factors.
    • A “1” meant there is an edge connecting them and a “0” meant that there is no edge connecting them.
    • The upper-left cell (A1) contained the text “cols regulators/rows targets”. This text was there as a reminder of the direction of the regulatory relationships specified by the adjacency matrix.
    • The rest of row 1 contained the names of the transcription factors that were controlling the other genes in the network, one transcription factor name per column.
    • The rest of column A contained the names of the target genes that were being controlled by the transcription factors heading each of the columns in the matrix, one target gene name per row.
    • The transcription factor names corresponded to the "id" in the other sheets in the workbook. They were capitalized the same way and occurred in the same order along the top and side of the matrix. The matrix was symmetrical, i.e., the same transcription factors appeared along the top and left side of the matrix. The genes were listed in the same order in all the sheets in the Excel workbook.
    • Each cell in the matrix contained a zero (0) if there was no regulatory relationship between those two transcription factors, or a one (1) if there was a regulatory relationship between them. Again, the columns corresponded to the transcription factors and the rows corresponded to the target genes controlled by those transcription factors.

network_weights sheet

  • These were the initial guesses for the estimation of the weight parameters, w.
  • Since these weights were initial guesses which will be optimized by GRNmap, the content of this sheet could be identical to the "network" sheet.

optimization_parameters sheet

  • The optimization_parameters sheet had two columns (from left to right) entitled, "optimization_parameter" and "value".
  • This worksheet was copied from the sample workbook provided. The only row that was modified is row 15, "Strain". Included just the strain designations for which there were corresponding STRAIN_log2_expression sheet.
  • What is 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 were the initial guesses for the estimation of the threshold_b parameters.
  • There should be two columns.
    • The left-most column contained the header "id" and listed the standard names taken from the earlier sheets in the workbook so that they were in the same order as in the other sheets.
    • The second column had the header "threshold_b" and contained the initial guesses, used all 0 for this column.

Dynamical Systems Modeling of your Gene Regulatory Network

  • To run GRNmap from code, had to have MATLAB R2014b installed on computer.
    1. Downloaded the GRNmap v1.10 code from the GRNmap Downloads page.
    2. Unzipped the file. (Right-click, 7-zip > Extract here)
    3. Launched MATLAB R2014b.
    4. Open GRNmodel.m, which was in the directory that was unzipped GRNmap-1.10 > matlab
    5. Clicked the Run button (green "play" arrow).
    6. then there was a prompt to select your input workbook.
    7. Saw an optimization diagnostics graphic that shows the progress of the estimation.
    8. There were errors that occured in attempting to run this on Tuesday 11/5. Dr. Dahlquist is going to trouble shoot to figure out the issue with the input.
      1. Dr. Dahlquist was able to find and correct the error in the workbook file.
    9. When the run was over, expression plots were displayed.
    10. Output .xlsx and .mat files were be saved in the same folder as the input folder, along with .jpg files containing the optimization diagnostic and individual expression plots. These files were saved.

Data and Files

GRNmap Input Workbook

dCIN5 profile #2

Stem run profile results

dCIN5_ANOVA spread sheet

dCIN5_STEM txt file

dCIN5 genelists

dCIN5 GO lists

Conclusion

So far in this weeks lab work all the data for the dCIN5 profile #2 gene regulatoryy network has been complied. Then it was formated to be compatable to the grnsight program. The data will be run through the program to create a model of the gene regulatory network. The program was successfully run through the GRNsight modeling software using MATlab. This resulted in a visual representation of the gene network.

Acknowledgements

I would like to acknowledge my home work partners Ivy, Delisa, and Mihir with there help with checking our work and helping to answer questions about the procedure. Also [[user:Ntesfaio|Naomi for her help by answering some questions I had while we were both in lab. I would like to acknowledge that the methods were taken from week 10 and then adapted to fit the actual lab methods preformed. I would like to acknowledge Dr. Dahlquist for her instruction on the topic and the procedure. Also for her help in troubleshooting the workbook when it did not run in MATlab.

"Except for what is noted above, this individual journal entry was completed by me and not copied from another source." Eyoung20 (talk) 20:38, 6 November 2019 (PST)

References

LMU BioDB 2019. (2019). Week 10. Retrieved November 4, 2019, from https://xmlpipedb.cs.lmu.edu/biodb/fall2019/index.php/Week_10 Eyoung20 user page

Assignment pages Individual Journal Class Journal
week 1 Eyoung20 journal week 1 Class Journal Week 1
week 2 Eyoung20 journal week 2 Class Journal Week 2
week 3 ASP1/YDR321W Week 3 Class Journal Week 3
week 4 Eyoung20 journal week 4 Class Journal Week 4
week 5 Ancient mtDNA Week 5 Class Journal Week 5
week 6 Eyoung20 journal week 6 Class Journal Week 6
week 7 Eyoung20 journal week 7 Class Journal Week 7
week 8 Eyoung20 journal week 8 Class Journal Week 8
week 9 Eyoung20 journal week 9 Class Journal Week 9
week 10 Eyoung20 journal week 10 Class Journal Week 10
week 11 Eyoung20 journal week 11 FunGals
week 12/13 Knguye66 Eyoung20 Week 12/13 FunGals
week 15 Knguye66 Eyoung20 Week 15 FunGals