{ "cells": [ { "cell_type": "markdown", "id": "1114843e-744c-4a86-8639-9d793cad18c1", "metadata": {}, "source": [ "# Problem 11.1: Temporal gene expression and inferring a circuit\n", "\n", "
" ] }, { "cell_type": "markdown", "id": "4ab07ca0-73c2-4209-931e-fd4b2315dfdd", "metadata": {}, "source": [ "You suspect three genes, A, B, and C are part of a (possibly disconnected) three-gene circuit. You have fluoroscent markers for each, so you can monitor the amount of A, B, and C protein in a given cell. You acquire temporal measurements of the protein quantity in 100 cells. (The cells are independent, so the levels in one cell do not affect those in another.) The data are available in the file [problem_11.1_time_traces.csv](problem_11.1_time_traces.csv). Note that these are not real data; they were generated using stochastic simulation of model circuits, a technique discussed in later chapters.\n", "\n", "**a)** Make plots of protein level versus time for two or three cells. *Hint*: You can load in the data and parse it using [Pandas](https://pandas.pydata.org). For example, to obtain the time points and intensities for cell 16, you could do the following." ] }, { "cell_type": "code", "execution_count": 1, "id": "2c4e8f64-f610-4125-95bb-16ca8147a6bc", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "\n", "# Load the data into a Pandas data frame\n", "df = pd.read_csv('problem_11.1_time_traces.csv')\n", "\n", "# Extract the time points as a Numpy array\n", "t = df.loc[df['cell']==16, 'time (min)'].values\n", "\n", "# Extract the time points as a Numpy array\n", "t = df.loc[df['cell']==16, 'time (min)'].values\n", "\n", "# Extract the fluorescence values as a Numpy arrays\n", "a = df.loc[df['cell']==16, 'A intensity (a.u.)'].values\n", "b = df.loc[df['cell']==16, 'B intensity (a.u.)'].values\n", "c = df.loc[df['cell']==16, 'C intensity (a.u.)'].values" ] }, { "cell_type": "markdown", "id": "9ad5df9a-9c0f-4701-805e-8e84937ddf54", "metadata": {}, "source": [ "Furthermore, you can verify for yourself if you like, but the time points of the measurements are the same for all cells and the time points are evenly spaced.\n", "\n", "**b)** Compute the autocorrelation for the A, B, and C levels. Also compute all pairwise cross-correlations (A-B, A-C, and B-C). Display plots of these for the same cells you considered in part (a).\n", "\n", "**c)** Compute the mean autocorrelation and all mean pairwise cross-correlations. That is, average the results from part (b) over the 100 cells. Plot these mean correlations.\n", "\n", "**d)** From your analysis and plots in the previous section, propose one or two possible three-gene circuit architectures that are consistent with measured data and explain why they may be reasonable. Propose one or two architectures that are _not_ consistent with the measured data and explain why.\n", "\n", "**e)** You expect a fourth gene, which we will call X, might be coupled to one or more of the components of the putative A-B-C circuit. The fluorescent intensities for X are also included in the data set. Is there evidence that X is connected to the A-B-C circuit?" ] }, { "cell_type": "markdown", "id": "5d47ca1b-6b7b-446e-87f7-b7a283a50b71", "metadata": {}, "source": [ "
" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.10" } }, "nbformat": 4, "nbformat_minor": 5 }