Skip to the content.

Plant Stuff

Personal Project:

Improving carbon fixation efficiency by channeling C3 pathway into the more efficient C4 Pathway. Current model shows reduced viability rates when a gene is supressed, so we are looking into partial supression as opposed to complete supression of the genes in order to increase the viability of the plant.


import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
from scipy.stats import ttest_ind
from statsmodels.stats.multitest import multipletests

# Ensure plots render correctly in Jupyter Notebook
%matplotlib inline

# Load provided dataset from PubMed source
# 1. At1g71720 Mutant Phenotype Data (Mesophyll-Specific Suppression)
chloroplast_data = {
    "Gene_Locus": ["At1g71720"],
    "Mutant_Allele": ["SAIL_162_G11"],
    "Phenotype": ["Seedling lethal (Mesophyll-specific suppression)"],
    "Rescue_Under_High_CO2": ["No"],
    "Plastid_Defect": ["Severe grana stacking disruption (Mesophyll only)"],
    "Viability_Days": [14]
}
chloroplast_df = pd.DataFrame(chloroplast_data)

# 2. Protein Abundance in Chloroplast-Defective Mutants
protein_data = {
    "AGI_Locus": ["At1g67090", "At2g04030", "At4g09650"],
    "Gene_Name": ["rbcL", "Hsp90", "ATP_synthase"],
    "Fold_Change_WT_vs_Mutant": [-1.64, 2.41, 0.72],
    "Function": ["Rubisco large subunit (Mesophyll-suppressed only)", "Chaperone", "ATP synthase δ-subunit"]
}
protein_df = pd.DataFrame(protein_data)

# 3. C3 Plant Carbon Fixation Parameters (Wild-Type Baseline)
c3_baseline = {
    "Parameter": ["Vcmax", "Jmax", "Rd", "CO2_compensation_point"],
    "Value": [100, 180, 1.5, 40],
    "Description": [
        "Max carboxylation rate",
        "Max electron transport rate",
        "Day respiration",
        "Γ* (CO2 comp. point)"
    ]
}
c3_df = pd.DataFrame(c3_baseline)

# 4. Regulatory Elements for Evolutionary Modeling
regulatory_data = {
    "Gene": ["PEP carboxylase", "rbcL"],
    "Species": ["Zea mays (C4)", "Oryza sativa (C3)"],
    "Cell_Specificity": ["Mesophyll", "Bundle Sheath"],
    "ACR_Count": [3, 1]
}
regulatory_df = pd.DataFrame(regulatory_data)

# Display sample data
display(chloroplast_df.head())
display(protein_df.head())
display(c3_df.head())
display(regulatory_df.head())




Gene_Locus Mutant_Allele Phenotype Rescue_Under_High_CO2 Plastid_Defect Viability_Days
0 At1g71720 SAIL_162_G11 Seedling lethal (Mesophyll-specific suppression) No Severe grana stacking disruption (Mesophyll only) 14
AGI_Locus Gene_Name Fold_Change_WT_vs_Mutant Function
0 At1g67090 rbcL -1.64 Rubisco large subunit (Mesophyll-suppressed only)
1 At2g04030 Hsp90 2.41 Chaperone
2 At4g09650 ATP_synthase 0.72 ATP synthase δ-subunit
Parameter Value Description
0 Vcmax 100.0 Max carboxylation rate
1 Jmax 180.0 Max electron transport rate
2 Rd 1.5 Day respiration
3 CO2_compensation_point 40.0 Γ* (CO2 comp. point)
Gene Species Cell_Specificity ACR_Count
0 PEP carboxylase Zea mays (C4) Mesophyll 3
1 rbcL Oryza sativa (C3) Bundle Sheath 1