Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency.
The 7 matches
- [1] § Results › Offspring genetic background shapes individual differences in litter survival, B6-Chd8+/− maternal care, and nest quality ↔ data_visualization.ipynb, lines 270–282 · score 0.98 · B6 CC13, B6 CC16, B6 CC24, B6 CC28, B6 CC32, B6 CC44
- [2] § Results › Genetic background impacts the age to reach developmental milestones and pup activity levels during the third postnatal week ↔ data_visualization.ipynb, lines 270–282 · score 0.98 · B6 CC13, B6 CC16, B6 CC24, B6 CC28, B6 CC32, B6 CC44
- [3] § Results › Variation in the preweaning environment predicts postweaning traits and differential susceptibility to Chd8 haploinsufficiency ↔ data_visualization.ipynb, lines 25–38 · score 0.84 · adult body weights, fear extinction, pup crawl, DSI aggression, brain weight, fear expression
- [4] § Methods › Litter observations ↔ data_visualization.ipynb, lines 284–395 · score 0.83 · pup crawling, eye opening, Passive nursing, Active nursing, eating solid, dam resting
- [5] § Methods › Postweaning behavioral tests and weights ↔ data_visualization.ipynb, lines 199–225 · score 0.72 · Fear extinction, brain weights, body weights, Fear expression, Fear acquisition, room
- [6] § Methods › Statistics and reproducibility ↔ data_visualization.ipynb, lines 284–395 · score 0.69 · dam passive nursing, active nursing, Dam lick, Nest quality, nest build, outliers
- [7] § Results › Genetic background impacts the age to reach developmental milestones and pup activity levels during the third postnatal week ↔ data_visualization.ipynb, lines 172–196 · score 0.67 · pup eyes open, pup autogrooming, pup crawling, eating solid, R2, digging
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
Jupyter notebook · 441 lines · 15 KB · no license · 7 matches
- # %% [markdown]
- # # SHAP Modeling
- # ## "Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency"
- # %%
- # Required Import Statements
- import pandas as pd
- import numpy as np
- import shap
- from sklearn.tree import DecisionTreeRegressor
- from sklearn.metrics import r2_score
- import matplotlib.pyplot as plt
- from matplotlib.ticker import FuncFormatter
- import matplotlib.image as mpimg
- import seaborn as sns
- from matplotlib.lines import Line2D
- # %% [markdown]
- # ## Data Cleaning
- # %%
- # Import Data
- chd8_het_effect = pd.read_excel('chd8_het_effect.xlsx')
- # %%
- # Rename Columns for chd8 het effects dataframe
- chd8_het_effect = chd8_het_effect.rename(columns={'Weaning body weight': 'Weaning Body Weight', 'Adolescent body weight':'Adolescent Body Weight',
- 'Adult body weight':'Adult Body Weight', 'Terminal body weight':'Terminal Body Weight', 'Brain weight':'Brain Weight',
- 'DOF distance':'DOF Distance', 'DSI aggression':'DSI Aggression', 'DSI sniffing':'DSI Sniffing',
- 'BOF % center distance': 'BOF % Center Distance', 'Fear acquisition':'Fear Acquisition', 'Fear expression':'Fear Expression',
- 'Fear extinction': 'Fear Extinction'})
- chd8_het_effect = chd8_het_effect.rename(columns={'Nest quality':'Nest Quality', 'dam_active_nurse': 'Dam Active Nurse', 'dam run': 'Dam Run',
- 'dam_eat':'Dam Eat', 'dam_lick': 'Dam Lick', 'dam_nest_build': 'Dam Nest Build', 'dam_outnest': 'Dam Out of Nest',
- 'dam_pass nurse': 'Dam Passive Nurse', 'dam_rest':'Dam Rest', 'total nurse': 'Total Nurse',
- 'Pup_climb': 'Pup Climb', 'Pup_crawl/run': 'Pup Crawl/Run', 'Pup dig': 'Pup Dig', 'Pup autogroom':'Pup Autogroom',
- 'pup_eat solid':'Pup Eat Solid', 'pup_eyes open':'Pup Eyes Open', 'pup jump': 'Pup Jump', 'pup L/G':'Pup L/G',
- 'pup nest build':'Pup Nest Build', 'Litter size':'Litter Size'})
- # %%
- # List of target variables
- target_variables = ['Weaning Body Weight', 'Adolescent Body Weight',
- 'Adult Body Weight', 'Terminal Body Weight', 'Brain Weight',
- 'DOF Distance', 'DSI Aggression', 'DSI Sniffing',
- 'BOF % Center Distance', 'Fear Acquisition', 'Fear Expression',
- 'Fear Extinction']
- # %% [markdown]
- # ## Compute SHAP Models
- # %%
- def get_shap_tree(x, y):
- # Step 1: Fit a decision tree
- tree = DecisionTreeRegressor(random_state=42, max_depth=5)
- tree.fit(x, y)
- # Step 2: Compute SHAP values
- explainer = shap.TreeExplainer(tree)
- shap_values = explainer.shap_values(x)
- # Step 3: Get mean absolute SHAP values for feature importance
- shap_importance = np.abs(shap_values).mean(axis=0)
- shap_df = pd.DataFrame({
- 'feature': x.columns,
- 'importance': shap_importance
- }).sort_values(by='importance', ascending=False)
- # Step 4: Filter features with SHAP < 0.01 and keep top 5 (plus 'Sex')
- filtered_features = shap_df[shap_df['importance'] > 0.01].head(6)['feature'].tolist()
- if 'Sex' not in filtered_features:
- filtered_features.append('Sex')
- x_filtered = x[filtered_features]
- # Step 5: Refit the decision tree with filtered features
- tree_filtered = DecisionTreeRegressor(random_state=42, max_depth=5)
- tree_filtered.fit(x_filtered, y)
- # Step 6: Compute SHAP values again for the filtered model
- explainer_filtered = shap.TreeExplainer(tree_filtered)
- shap_values_filtered = explainer_filtered.shap_values(x_filtered)
- return shap_values_filtered, x_filtered, tree_filtered
- # %% [markdown]
- # ## SHAP Plotting
- # %%
- def graph_with_r2_and_clustering_sex_shaded(shap_vals, x, y, title, grad_boost):
- """
- Generate SHAP bar plot with sex cohorts and display R^2 value.
- Parameters:
- shap_vals: SHAP values
- x: Features dataframe
- y: Target variable series
- title: Title for the plot
- grad_boost: Trained model
- """
- ############## SHAP CALCULATIONS ##############
- # Calculate R2
- r2 = r2_score(y, grad_boost.predict(x))
- # Define sex cohorts for shading
- sex = ['Male' if x.iloc[i]['Sex'] == 0 else 'Female' for i in range(x.shape[0])]
- # Exclude 'Sex' column from features
- x_no_sex = x.drop(columns=['Sex'])
- # Filter SHAP values to exclude 'Sex'
- feature_names = x.columns.tolist()
- valid_features = [name for name in feature_names if name != 'Sex']
- feature_indices = [x.columns.get_loc(name) for name in valid_features]
- shap_vals_no_sex = shap_vals[:, feature_indices]
- shap_values_explanation = shap.Explanation(values=shap_vals_no_sex,
- data=x_no_sex,
- feature_names=x_no_sex.columns)
- clustering = shap.utils.hclust(x_no_sex, y)
- ############## PLOTTING ##############
- fig = plt.figure(figsize=[12,8]) # Explicit figure size
- ax = fig.add_subplot(111)
- ax.xaxis.set_major_formatter(FuncFormatter(lambda x, pos: f"{x:.2f}"))
- # Create the SHAP bar plot with sex cohorts
- shap.plots.bar(
- shap_values_explanation.cohorts(sex).abs.mean(0),
- clustering=clustering,
- clustering_cutoff=1,
- max_display=10,
- show=False,
- ax=ax,
- )
- ############## MANAGE LABEL FORMATTING ##############
- for text in ax.get_xticklabels() + ax.get_yticklabels():
- text.set_fontsize(24)
- for text in ax.get_xticklabels():
- text.set_text
- xlabel = ax.get_xlabel()
- if xlabel:
- ax.set_xlabel("Mean |SHAP|", fontsize=24)
- for child in ax.get_children():
- if hasattr(child, 'set_fontsize'):
- child.set_fontsize(24)
- legend = ax.get_legend()
- if legend is not None:
- if legend.get_title() is not None:
- legend.get_title().set_fontsize(20)
- for text in legend.get_texts():
- text.set_fontsize(20)
- ax.set_title(f'{title}\nR² = {r2:,.2f}', y=1, fontsize=24)
- ############## FINAL PLOTTING ##############
- # Save the plot with lower dpi to reduce file size
- plt.savefig(f'Images/{title}.png', bbox_inches='tight')
- # Display the plot
- plt.show()
- # %% [markdown]
- # ## Display SHAP Plots
- # %%
- for target in target_variables:
- # Define target variable
- y = chd8_het_effect[target]
- x = chd8_het_effect[['Nest Quality', 'Dam Active Nurse', 'Dam Run',
- 'Dam Eat', 'Dam Lick', 'Dam Nest Build', 'Dam Out of Nest',
- 'Dam Passive Nurse', 'Dam Rest', 'Total Nurse', 'Dam_PC1', 'Dam_PC2',
- 'Pup Climb', 'Pup Crawl/Run', 'Pup Dig', 'Pup Autogroom',
- 'Pup Eat Solid', 'Pup Eyes Open', 'Pup Jump', 'Pup L/G',
- 'Pup Nest Build', 'Litter Size', '% Chd8 Hets', '% Males', 'Sex']]
- # Delete parts of SHAP tree with values of ~0
- x_filtered = x
- zeros = True
- while zeros:
- shap_values_filtered, x_filtered, tree_filtered = get_shap_tree(x_filtered, y)
- if np.all(np.abs(shap_values_filtered).mean(axis=0) >= 0.01):
- zeros = False
- # Call the graphing function
- graph_with_r2_and_clustering_sex_shaded(shap_values_filtered, x_filtered, y, title=target, grad_boost=tree_filtered)
- plt.show()
- # %%
- ################## COMBINE PLOTS ##################
- fig, axes = plt.subplots(4, 3, figsize=(16, 12))
- images = [['Weaning Body Weight', 'Adolescent Body Weight',
- 'Adult Body Weight'], ['Terminal Body Weight', 'Brain Weight',
- 'DOF Distance'], ['DSI Aggression', 'DSI Sniffing',
- 'BOF % Center Distance'], ['Fear Acquisition', 'Fear Expression',
- 'Fear Extinction']]
- # Loop over the rows and columns to display images
- for row in [0, 1, 2, 3]:
- for column in [0, 1, 2]:
- ax = axes[row, column]
- ax.axis('off')
- image_name = images[row][column]
- img = mpimg.imread(f'Images/{image_name}.png')
- ax.imshow(img)
- # Adjust layout to make room for the figure title
- plt.tight_layout()
- # Save the figure with higher resolution
- plt.savefig('Images/decision_tree_shap.png', dpi=300, bbox_inches='tight')
- plt.rc('font', size=14)
- # Display the plot
- plt.show()
- # %% [markdown]
- # ## Distribution Plots
- # %%
- def get_final_cohort_df(cohorts, valid_features):
- # Create initial lists/dicts
- data = {feat: [] for feat in valid_features}
- data['Sex'] = []
- sexes = [k for k in cohorts.cohorts.keys() if k in ("Male", "Female")]
- # Add features and values to lists/dicts
- for sex in sexes:
- rows = cohorts.cohorts[sex].values
- for pup in rows:
- length = len(pup)
- for idx, feat in enumerate(valid_features):
- if idx < length:
- data[feat].append(pup[idx])
- data['Sex'].append(sex)
- return pd.DataFrame(data)
- # %%
- def get_cohorts(x_filtered, shap_values_filtered):
- # Define sex cohorts for shading
- sex = ['Male' if x_filtered.iloc[i]['Sex'] == 0 else 'Female' for i in range(x_filtered.shape[0])]
- # Exclude 'Sex' column from features
- x_no_sex = x_filtered.drop(columns=['Sex'])
- # Filter SHAP values to exclude 'Sex'
- feature_names = x_filtered.columns.tolist()
- valid_features = [name for name in feature_names if name != 'Sex']
- feature_indices = [x_filtered.columns.get_loc(name) for name in valid_features]
- shap_vals_no_sex = shap_values_filtered[:, feature_indices]
- shap_values_explanation = shap.Explanation(values=shap_vals_no_sex,
- data=x_no_sex,
- feature_names=x_no_sex.columns)
- return shap_values_explanation.cohorts(sex).abs
- # %%
- all_strains = ['B6-B6', 'B6-CC1', 'B6-CC2', 'B6-CC7', 'B6-CC10', 'B6-CC12',
- 'B6-CC13', 'B6-CC16', 'B6-CC22', 'B6-CC24', 'B6-CC25',
- 'B6-CC28', 'B6-CC32', 'B6-CC44', 'B6-CC57', 'B6-CC75']
- color_palette = ['#8ebaee', '#b3efee', '#5879a3', '#bec0bf', '#ac2e32',
- '#cc615d', '#e98733', '#5a8d53', '#e49fb6', '#c5905e',
- '#f5db7a', '#0b195d', '#726967', '#955fea', '#d5cea5',
- '#7cb872']
- # Same palette used earlier
- palette = dict(zip(
- all_strains,
- sns.color_palette(color_palette)
- ))
- # %%
- for target in target_variables:
- y = chd8_het_effect[target]
- x = chd8_het_effect[['Nest Quality', 'Dam Active Nurse', 'Dam Run',
- 'Dam Eat', 'Dam Lick', 'Dam Nest Build', 'Dam Out of Nest',
- 'Dam Passive Nurse', 'Dam Rest', 'Total Nurse', 'Dam_PC1', 'Dam_PC2',
- 'Pup Climb', 'Pup Crawl/Run', 'Pup Dig', 'Pup Autogroom',
- 'Pup Eat Solid', 'Pup Eyes Open', 'Pup Jump', 'Pup L/G',
- 'Pup Nest Build', 'Litter Size', '% Chd8 Hets', '% Males', 'Sex']]
- # --- Ensure Strain is present (add it to cohort_df if it's in the original x) ---
- # If chd8_het_effect contains 'Strain', grab it before dropping/transforming
- # Delete parts of SHAP tree with values of ~0
- x_filtered = x
- zeros = True
- while zeros:
- shap_values_filtered, x_filtered, tree_filtered = get_shap_tree(x_filtered, y)
- if np.all(np.abs(shap_values_filtered).mean(axis=0) >= 0.01):
- zeros = False
- # Get cohorts
- cohorts = get_cohorts(x_filtered, shap_values_filtered)
- feature_names = x_filtered.columns.tolist()
- valid_features = [name for name in feature_names if name != 'Sex']
- cohort_df = get_final_cohort_df(cohorts, valid_features)
- if 'Strain' in chd8_het_effect.columns and 'Strain' not in cohort_df.columns:
- # assume cohort_df index aligns with chd8_het_effect index; adjust merge as needed
- cohort_df = cohort_df.merge(chd8_het_effect[['Strain']], left_index=True, right_index=True, how='left')
- # Make dataframe long-format and keep Strain as an id_var
- long_df = cohort_df.melt(id_vars=['Sex','Strain'],
- value_vars=valid_features,
- var_name='Feature',
- value_name='Value')
- # Helper to extract outliers by Feature using IQR rule
- def find_outliers(df):
- def _outliers(group):
- q1 = group['Value'].quantile(0.25)
- q3 = group['Value'].quantile(0.75)
- iqr = q3 - q1
- lower = q1 - 1.5 * iqr
- upper = q3 + 1.5 * iqr
- return group[(group['Value'] < lower) | (group['Value'] > upper)]
- return df.groupby('Feature', group_keys=False).apply(_outliers)
- # Plot: one column per Sex so box grouping remains by Feature but outliers are colored by Strain
- sexes = sorted(long_df['Sex'].unique())
- ncols = 2
- fig, axes = plt.subplots(1, ncols, figsize=(6 * ncols, 6), sharey=True)
- # Store legend handles once
- legend_handles = None
- for ax, sex in zip(axes, sexes):
- subset = long_df[long_df['Sex'] == sex]
- sns.boxplot(
- data=subset,
- x='Feature',
- y='Value',
- showfliers=False,
- ax=ax,
- color='gray'
- )
- outliers = find_outliers(subset)
- strain_order = all_strains
- sns.stripplot(
- data=outliers,
- x='Feature',
- y='Value',
- hue='Strain',
- hue_order=strain_order,
- dodge=False,
- jitter=0.25,
- ax=ax,
- size=6,
- marker='o',
- edgecolor='gray',
- linewidth=0.3
- )
- # Grab handles only once (from first axis)
- if legend_handles is None:
- legend_handles, legend_labels = ax.get_legend_handles_labels()
- # Remove axis-level legend
- if ax.legend_:
- ax.legend_.remove()
- ax.set_title(f'{target} — Sex: {sex}')
- ax.set_xlabel('')
- ax.tick_params(axis='x', rotation=45)
- plt.ylabel('|SHAP Value|')
- # ✅ Add ONE legend to the full figure
- if legend_handles:
- legend = fig.legend(
- legend_handles,
- legend_labels,
- title='Strain',
- loc='center right',
- bbox_to_anchor=(1.02, 0.5)
- )
- legend.remove()
- plt.tight_layout(rect=[0, 0, 0.88, 1]) # leave space for legend
- plt.savefig(f'Images/boxplot_{target}_outliers_by_strain.png', bbox_inches='tight')
- plt.show()
- # %%
- legend_elements = [
- Line2D([0], [0],
- marker='o',
- color='w',
- label=strain,
- markerfacecolor=palette[strain],
- markeredgecolor='gray',
- markersize=8)
- for strain in all_strains
- ]
- # %%
- ################## COMBINE PLOTS ##################
- fig, axes = plt.subplots(6, 2, figsize=(14, 24))
- images = [['Weaning Body Weight', 'Adolescent Body Weight'],
- ['Adult Body Weight', 'Terminal Body Weight'], ['Brain Weight',
- 'DOF Distance'], ['DSI Aggression', 'DSI Sniffing'],
- ['BOF % Center Distance', 'Fear Acquisition'], ['Fear Expression',
- 'Fear Extinction']]
- plt.subplots_adjust(wspace=0.01)
- # Loop over the rows and columns to display images
- for row in [0, 1, 2, 3, 4, 5]:
- for column in [0, 1]:
- ax = axes[row, column]
- ax.axis('off')
- image_name = images[row][column]
- img = mpimg.imread(f'Images/boxplot_{image_name}_outliers_by_strain.png')
- ax.imshow(img)
- plt.subplots_adjust(right=0.90)
- plt.rc('font', size=14)
- fig.legend(
- handles=legend_elements,
- title='Strain',
- loc='center right',
- bbox_to_anchor=(1.02, 0.5)
- )
- # Save the figure with higher resolution
- plt.savefig('Images/boxplot_shap.png', dpi=300, bbox_inches='tight')
- # Display the plot
- plt.show()
data_visualization.ipynb at commit 840aae5, no license · at the source
Overview
- Division of Neurology, Department of Pediatrics and Developmental Neuroscience and Neurogenetics Program, Children’s Hospital Los Angeles, The Saban Research Institute,Los Angeles, CA USA
- Keck School of Medicine of the University of Southern California,Los Angeles, CA USA
- Department of Computer Science, University of Southern California,Los Angeles, CA USA
Abstract
The abstract is not reproduced here: the paper's license (CC BY-NC-ND) does not allow it. Read it in the paper, at the publisher or on Europe PMC.
Repository
Its files are read in the Code ↔ Paper reader above, with 7 matches between paragraphs and lines of code.
adidust4/Offspring-genetic-diversity-Chd8-haploinsufficiency
840aae596ae66870d0703c15dc195c65305732ac, 21 February 2026Availability: 1 check, the latest on 28 September 2026: the link answers
- 28 September 2026: the link answers
2 files
- data_visualization.ipynb
, Jupyter, 441 lines, 7 matches - README.md, Text, 42 lines
Code availability statement
The paper has a code availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it points to the authors' code: adidust4/
Offspring-genetic-divers ity-Chd8-haploinsufficie ncy
Read it in the paper: doi.org/10.1038/s42003-026-09908-0.
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 1 script, each with its path and the digest of its content;
- 7 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
Datasets cited
- figshare:31395966, at figshare; found in “Data availability”
Data availability statement
The paper has a data availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it points to a dataset: figshare 31395966
- it says that the data are available on request
Read it in the paper: doi.org/10.1038/s42003-026-09908-0.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 28 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 5 authors, 3 keywords, 12 MeSH terms, 3 funders, 39 references.
Cite
This paper
Tabbaa, M., Gamez, A., Dust, A., Matarić, M., & Levitt, P. (2026). Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency. Communications biology, 9(1), 1028. https://
BibTeX
@article{tabbaa2026offsp
author = {Tabbaa, Manal and Gamez, Alexis and Dust, A’di and Matarić, Maja and Levitt, Pat},
title = {{Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency}},
journal = {Communications biology},
year = {2026},
month = may,
volume = {9},
number = {1},
pages = {1028},
publisher = {Nature Publishing Group},
issn = {2399-3642},
doi = {10.1038/
url = {https://
pmid = {42115306},
pmcid = {PMC13424357}
}
RIS
TY - JOUR
AU - Tabbaa, Manal
AU - Gamez, Alexis
AU - Dust, A’di
AU - Matarić, Maja
AU - Levitt, Pat
TI - Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency
T2 - Communications biology
J2 - Commun Biol
PY - 2026
DA - 2026/
VL - 9
IS - 1
SP - 1028
SN - 2399-3642
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "Offspring genetic diversity regulates rearing experiences that predict differential susceptibility to Chd8 haploinsufficiency",
"container-title": "Communications biology",
"author": [
{
"family": "Tabbaa",
"given": "Manal"
},
{
"family": "Gamez",
"given": "Alexis"
},
{
"family": "Dust",
"given": "A’di"
},
{
"family": "Matarić",
"given": "Maja"
},
{
"family": "Levitt",
"given": "Pat"
}
],
"container-title-short":
"volume": "9",
"issue": "1",
"page": "1028",
"DOI": "10.1038/
"PMID": "42115306",
"PMCID": "PMC13424357",
"ISSN": "2399-3642",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
5,
11
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.1038/s41467-026-73416-2 [code]
- Defective ventral neurogenesis due to midfetal Chd8 mutation drives autistic-like behavior in mice.Journal: Nature communicationsIn common: seaborn, pandas, Matplotlib, 1 other tool, autism, developmental, mouse, 4 references
- [2] doi:10.1126/sciadv.adq6577 [code]
- Autism-like phenotypes and increased NMDAR2D expression in mice with KDM5B histone lysine demethylase deficiency.Journal: Science advancesIn common: seaborn, pandas, Matplotlib, 1 other tool, autism, mouse, 3 references
- [3] doi:10.3389/fgene.2026.1799530 [code]
- Sex-dependent prediction of autism.Journal: Frontiers in geneticsIn common: SHAP, seaborn, scikit-learn, 3 other tools, autism
- [4] doi:10.1017/s0033291726104103 [code]
- Linking brain structure to stress reactivity: cingulate surface area predicts acute cortisol responses.Journal: Psychological medicineIn common: SHAP, seaborn, scikit-learn, 3 other tools, developmental
- [5] doi:10.1038/s41467-026-76837-1 [code]
- Drug screen and machine learning predict neuroprotective agents in a preclinical human model of childhood dementia.Journal: Nature communicationsIn common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
- [6] doi:10.1371/journal.pone.0345854 [code]
- Shedding light on neural learning to rank models for anticancer drug prioritization.Journal: PloS oneIn common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
- [7] doi:10.3389/fonc.2026.1816015 [code]
- Modality-level attribution and redundancy-aware radiomics for MRI-based differentiation of melanoma and NSCLC brain metastases.Journal: Frontiers in oncologyIn common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
- [8] doi:10.3390/medicina62061169 [code]
- Survival Outcomes and Machine Learning-Based Prediction of 12-Month Mortality in Glioblastoma Before and During the COVID-19 Pandemic: A SEER Population-Based Study.Journal: Medicina (Kaunas, Lithuania)In common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
- [9] doi:10.1016/j.nicl.2026.104012 [code]
- Structural-functional multilayer brain network properties and outcome of combined repetitive transcranial magnetic stimulation and psychotherapy for obsessive-compulsive disorder.Journal: NeuroImage. ClinicalIn common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
- [10] doi:10.1038/s42003-026-10205-z [code]
- Source-space EEG alpha activity reveals brain age gaps due to neurodegeneration and disparity.Journal: Communications biologyIn common: SHAP, seaborn, scikit-learn, 3 other tools, other condition
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 1 repository of the authors' code, each at its verified commit and with its license, 1 script, and 7 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:355c034de617c80a…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
