Analysis: 20251104

!pip install nucleus-cdk==0.5.0rc2 | tail -n2
Requirement already satisfied: asttokens in /opt/homebrew/anaconda3/lib/python3.12/site-packages (from stack-data->ipython>=6.1.0->ipywidgets==8.*->jupyter-bokeh<5.0.0,>=4.0.5->nucleus-cdk==0.5.0rc2) (2.0.5)
Requirement already satisfied: pure-eval in /opt/homebrew/anaconda3/lib/python3.12/site-packages (from stack-data->ipython>=6.1.0->ipywidgets==8.*->jupyter-bokeh<5.0.0,>=4.0.5->nucleus-cdk==0.5.0rc2) (0.2.2)
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

from cdk.analysis.cytosol import platereader as pr

# Initialize plotting
pr.plot_setup()

Load the data

Provide a CSV file containing the data, and a platemap. This function returns both the data with the plate map mapped to it, and the platemap by itself, which is useful for certain tasks.

data_file = "./20251104-cytation3-pure-timecourse-gfp-NucleusPURE_deGFP-biotek-cdk.txt"
platemap_file = "./20251104-NucleusPURE-deGFP-platemap.csv"

data, platemap = pr.load_platereader_data(data_file, platemap_file)

Basic Analysis

Curves

Curves of RFU over time, by named sample.

K=pr.plot_curves(data)
K.savefig('Kinetics')
<Figure size 854.688x500 with 1 Axes>
K2=pr.plot_curves(data, units="Well", estimator=None)
K2.axes.flatten()[0].axvline(pd.to_timedelta("04:00:00"), c="red", ls="--")
K2.savefig('Kinetics2')
<Figure size 854.688x500 with 1 Axes>

Steady state

Bar graph of steady-state endpoint of each sample. Steady state is calculated as the maximum fluorescence value over a 3-sample rolling average on the data.

g = sns.catplot(
    data=data[data["Time"] == "04:00:00"],
    x="Name",
    y="Data",
    kind="bar"
)

g.set_xticklabels(rotation=90)
g.savefig('Steadystate')
<Figure size 511.111x500 with 1 Axes>
S= pr.plot_steadystate(data)
S.savefig('endpoint')
<Figure size 611.111x400 with 1 Axes>

Kinetics

These functions calculate key kinetic parameters of the time series.

pr.plot_kinetics(data)
PROVIDING AVERAGED KINETICS
(<seaborn.axisgrid.FacetGrid at 0x30c13e850>, Velocity \ Time Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 00:32:16.243958277 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 0 days 00:32:40.052704496 Cytosol w/o DNA GFP-F-G35 0 days 03:29:05.730264123 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 00:54:38.904421908 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 0 days 00:56:11.920378355 \ Data Max Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 24947.79 69624.69 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 27331.90 76261.25 Cytosol w/o DNA GFP-F-G35 262.36 63.86 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 29285.52 43609.02 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 27094.04 38333.68 Lag \ Time Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 00:10:46.377326716 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 0 days 00:11:09.642098174 Cytosol w/o DNA GFP-F-G35 -1 days +23:22:35.625353708 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 00:14:21.235910727 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 0 days 00:13:46.621002335 \ Data Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 4625.45 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 4912.16 Cytosol w/o DNA GFP-F-G35 78.34 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 3323.52 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 2861.89 Steady State \ Time Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 01:03:55.210751325 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 0 days 01:04:19.820347956 Cytosol w/o DNA GFP-F-G35 0 days 09:32:00.010966036 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 0 days 01:53:58.243123064 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 0 days 01:58:39.159726033 \ Data Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 47400.80 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 51930.60 Cytosol w/o DNA GFP-F-G35 498.48 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 55642.48 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 51478.68 Fit \ params Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 [49895.57951478418, 5.582110894788535, 0.53784... Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 [54663.79376255666, 5.580083137013733, 0.54445... Cytosol w/o DNA GFP-F-G35 [524.7139407465794, 0.4868169886601768, 3.4849... PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 [58571.03311500861, 2.978292371722782, 0.91080... PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 [54188.08333108027, 2.8299959420167853, 0.9366... R^2 drift Name Read Cytosol + pOpen-deGFP (maxi +etOH) GFP-F-G35 1.00 232.62 Cytosol + pOpen-deGFP (maxi only) GFP-F-G35 1.00 275.87 Cytosol w/o DNA GFP-F-G35 1.00 -25.33 PURExpress + pOpen-deGFP (maxi +etOH) GFP-F-G35 1.00 720.75 PURExpress + pOpen-deGFP (maxi only) GFP-F-G35 1.00 727.99 )
<Figure size 1800x800 with 5 Axes>

We can also calculate the kinetics and display the parameters as a table.

pr.kinetic_analysis(data)
Loading...