An electrophysiological and proteomics roadmap for human induced glutamatergic neurons: fine-tuning of culture conditions for pathophysiological studies.
The 6 matches · 1 of them tie a paragraph to a whole file, not to given lines: a weak match, whose lines are not tinted
- [1] § Materials and methods › Taxonomic-based peptide annotation ↔ R/main.r, lines 2–52 · score 0.85 · mono culture sample, Rattus norvegicus, Spectronaut peptide, peptides quantified, annotate peptides, Proteoclade
- [2] § Materials and methods › Differential protein abundance analysis ↔ R/main.r, lines 2–52 · score 0.83 · median normalization, peptide quantification, proDa, annotated peptides, transformed, raw
- [3] § Materials and methods › Taxonomic-based peptide annotation ↔ python/main.py, the whole file · a weak match · score 0.66 · create pcdb, merge fastas, species, Spectronaut, max, peptides
- [4] § Results › PEI and PLO adhesion factors did not affect the neuronal networks’ electrophysiology ↔ R/main.r, lines 54–111 · score 0.60 · NB HD, NB LD, BP HD, BP LD, fitting, BrainPhys
- [5] § Results › Functional synaptic characterization of the best culture conditions to maintain long term and highly functional network ↔ R/main.r, lines 313–368 · score 0.56 · synaptic transmission, term synaptic, presynaptic, signals, synapses, Neurobasal
- [6] § Materials and methods › Gene set enrichment analysis ↔ R/main.r, lines 371–422 · score 0.54 · enrichment score, Gene Ontology, neuro, axon, filtered
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
R · 422 lines · 21 KB · no license · 5 matches
- #################################
- # Differential abundance analysis
- #################################
- ## Reading Proteoclade- and Spectronaut-annotate peptide raw intensity matrix
- suppressPackageStartupMessages(library(dplyr))
- # 1 - Filtering out peptides quantified in rat mono-culture and peptides not quantified in human cultures with rat-only annotation
- # 2 - Re-arrange Spectronaut peptide gene annotation, more accurate than corresponding Proteoclade annotation, to accomodate further median averagin of peptide intensity
- # 3 - Exclude Rat mono-culture samples from differential abundance analysis
- annotated_peptide_matrix <- read.delim("../inputs/annotated_raw_peptide_intensity_matrix.txt")
- annotated_peptide_matrix <- annotated_peptide_matrix %>%
- rename(Proteoclade_gene_anno = genes, Proteoclade_species_anno = species) %>%
- select(!organisms) %>%
- mutate(Rn_mono_intensity_sum = rowSums(annotated_peptide_matrix %>% select(grep(colsample_ids(.), pattern = "Rat_Astro")), na.rm = T),
- Hs_mono_intensity_sum = rowSums(annotated_peptide_matrix %>% select(grep(colsample_ids(.), pattern = paste(c("iPSC", "NPC"), collapse = "|"))), na.rm = T),
- Spectronaut_bool_hs_only_anno = ifelse(grepl(Spectronaut_species_anno, pattern = "Rattus norvegicus"), FALSE, TRUE),
- Proteoclade_bool_hs_only_anno = ifelse(grepl(Proteoclade_species_anno, pattern = "Rattus norvegicus"), FALSE, TRUE)) %>%
- filter(Rn_mono_intensity_sum == 0) %>%
- filter(Hs_mono_intensity_sum != 0 & Spectronaut_bool_hs_only_anno == TRUE | Hs_mono_intensity_sum != 0 & Proteoclade_bool_hs_only_anno == TRUE) %>%
- select(!c(Sequence, Rn_mono_intensity_sum, Hs_mono_intensity_sum, Spectronaut_bool_hs_only_anno, Proteoclade_bool_hs_only_anno, Spectronaut_species_anno, Proteoclade_gene_anno, Proteoclade_species_anno)) %>%
- mutate(Spectronaut_gene_anno = unlist(lapply(Spectronaut_gene_anno, function(x) {
- gene_anno <- unique(unlist(stringr::str_split(toupper(x), pattern = ";")));
- gene_anno <- paste(gene_anno[setdiff(1:length(gene_anno), which(gene_anno %in% ""))], collapse = "|")
- }))) %>%
- select(!grep(colnames(.), pattern = "Rat_Astro"))
- ## Formatting peptide matrix to fit proDa differential analysis pipeline
- suppressPackageStartupMessages(library(proDA))
- # Median averaging of peptide raw intensity followed by log2 transformation and median normalization
- median_collapsed_peptide_matrix <- apply(annotated_peptide_matrix[,-ncol(annotated_peptide_matrix)], 2, function(x) {
- tapply(x, annotated_peptide_matrix$Spectronaut_gene_anno, function(y) {
- mvec <- median(y, na.rm = T);
- })
- }) %>%
- log2() %>%
- median_normalization() %>%
- `colnames<-`(sub(colnames(.), pattern = "\\.raw.*", replacement = ".Median.Normalized.Pep.Quantity"))
- # Sample metadata organization to fit proDA model
- metadata <- read.delim("../inputs/proDA_formatted_sample_metadata.txt")
- fit_concat_variables <- proDA(median_collapsed_peptide_matrix, design = ~ 0 + Concat_variables + Cell_line, col_data = metadata)
- fit_phenotype <- proDA(median_collapsed_peptide_matrix, design = ~ 0 + Phenotype + Cell_line, col_data = metadata)
- contrasts <- lapply(c("Concat_variablesiNeurons_Neurobasal_HD-Concat_variablesiNeurons_Brainphysis_HD",
- "Concat_variablesiNeurons_Neurobasal_LD-Concat_variablesiNeurons_Brainphysis_LD",
- "Concat_variablesiNeurons_Brainphysis_LD-Concat_variablesiNeurons_Brainphysis_HD",
- "Concat_variablesiNeurons_Neurobasal_LD-Concat_variablesiNeurons_Neurobasal_HD",
- "Concat_variablesiNeurons_Neurobasal_LD-Concat_variablesiNeurons_Brainphysis_HD"),
- function(x) {
- test_diff(fit, x)
- }) %>%
- `names<-` (c("iNeu_NB_HD vs iNeu_BP_HD",
- "iNeu_NB_LD vs iNeu_BP_LD",
- "iNeu_BP_LD vs iNeu_BP_HD",
- "iNeu_NB_LD vs iNeu_NB_HD",
- "iNeu_NB_LD vs iNeu_BP_HD"))
- # openxlsx::write.xlsx(contrasts, "/home/ennio/repo/rna_seq_tutorial/cytof_tutorial/pclade/contrast_cc/contrasts.xlsx", quote = F, rowNames = F)
- # Target gene distribution heatmap accross iNeurons culture conditions
- target_gene_list <- openxlsx::read.xlsx("../resources/Common interested genes iN vs iPSC_Mod.xlsx")
- Concat_variables <- c("iPSC", "iNeurons_Brainphysis_LD", "iNeurons_Brainphysis_HD", "iNeurons_Neurobasal_LD", "iNeurons_Neurobasal_HD"),
- median_collapsed_concat_variables <- t(apply(t(median_collapsed_peptide_matrix), 2, function(x) {
- tapply(x, metadata$Concat_variables, function(y) median(y, na.rm = T))
- })) %>%
- `rownames<-`(NULL)
- pdf("iNeurons vs iPSC - Common interesting genes_median.pdf", height = 12, width = 12);
- p <- Heatmap(median_collapsed_concat_variables[target_gene_list[,1], Concat_variables], name = "Normalized Median",
- column_order = Concat_variables,
- row_order = target_gene_list[,1],
- na_col = "black",
- right_annotation = NULL,
- cluster_rows = FALSE,
- cluster_columns = FALSE,
- col = circlize::colorRamp2(c(min(median_collapsed_concat_variables, na.rm = T), max(median_collapsed_concat_variables, na.rm = T)), c("lightyellow", "darkred")),
- column_names_gp = gpar(fontsize = 10, fontface = "bold"),
- column_title_gp = gpar(fontface = "bold"),
- row_names_gp = gpar(fontface = "bold"),
- row_title_gp = gpar(fontface = "bold"));
- plot(p);
- dev.off()
- # Expression heatmap of target protein list
- suppressPackageStartupMessages(library(ComplexHeatmap))
- sample_info_df_ineu_filt <- sample_info_df %>% filter(phenotype == "iNeurons") %>% mutate(medium_density = paste0(medium, " ", density))
- target_gene_list <- openxlsx::read.xlsx("../resources/Lista geni sinapsi per Ennio.xlsx") %>% pull()
- target_gene_list <- c("ADGRB1", target_gene_list)
- # LFC hmap
- contrasts <- c("Neurobasal_LD vs Brainphysis_LD", "Neurobasal_LD vs Brainphysis_HD", "Neurobasal_LD vs Neurobasal_HD")
- daa_tabs_syngo_filtered <- do.call("rbind", lapply(1:3, function(x) { tab <- openxlsx::read.xlsx("../results/daa_table_syngo_filtered.xlsx", sheet = x) %>% mutate(contrast = rep(contrasts[x], nrow(.))) })) %>%
- filter(name %in% target_gene_list) %>%
- dplyr::select(name, LogFC = diff, contrast) %>%
- tidyr::spread(contrast, LogFC) %>%
- tibble::column_to_rownames("name") %>%
- as.matrix()
- col_fun <- circlize::colorRamp2(c(min(daa_tabs_syngo_filtered, na.rm = T), 0, max(daa_tabs_syngo_filtered, na.rm = T)), c("blue", "black", "red"));
- colnames(daa_tabs_syngo_filtered) <- NULL
- pdf("../article_graphs/iNeu_contrast_logFC_hmap.pdf", height = 1, width = 8)
- p <- Heatmap(daa_tabs_syngo_filtered, name = "LogFC",
- row_split = NULL,
- na_col = "darkgrey",
- right_annotation = NULL,
- cluster_rows = FALSE,
- cluster_columns = FALSE,
- col = col_fun,
- column_split = contrasts,
- column_title_rot = 45,
- column_names_gp = gpar(fontface = "bold", fontsize = 8),
- column_title_gp = gpar(fontface = "bold"),
- row_names_gp = gpar(fontface = "bold"),
- row_title_gp = gpar(fontface = "bold"))
- plot(p)
- dev.off()
- # PCA score plots displaying first two dimensions respectively labelled by Concat_variable and Cell_line
- pca <- prcomp(t(na.omit(median_collapsed_peptide_matrix)), center = TRUE, scale = TRUE)
- summ <- summary(pca)$importance
- panel <- ggarrange(score_plot1 <- cbind(as.data.frame(pca$x), metadata) %>% ggplot(aes(x = PC1, y = PC2, color = Concat_variables)) +
- geom_point(size = 5) +
- ggprism::theme_prism() +
- xlab(paste0("PC1 (", summ[2,1]*100, "%)")) +
- ylab(paste0("PC1 (", summ[2,2]*100, "%)")),
- score_plot2 <- cbind(as.data.frame(pca$x), metadata) %>% ggplot(aes(x = PC1, y = PC2, color = Cell_line)) +
- geom_point(size = 5) +
- ggprism::theme_prism() +
- xlab(paste0("PC1 (", summ[2,1]*100, "%)")) +
- ylab(paste0("PC1 (", summ[2,2]*100, "%)")), ncol = 2, align = "h", common.legend = F)
- pdf("../article_graphs/pca_pc1_pc2_merged_cond_1.pdf", height = 8, width = 16)
- annotate_figure(panel, top = text_grob("Pattern Recognition Analysis - Score Plot",
- face = "bold", size = 18))
- dev.off()
- ##################################################
- # Geneset enrichment analysis (GSEA) - GO database
- ##################################################
- suppressPackageStartupMessages(library(clusterProfiler))
- suppressPackageStartupMessages(library(org.Hs.eg.db))
- dir <- "../results/"
- files <- list.files(dir)[grep(list.files(dir), pattern ="iNeurons.*iPSC")]
- contrasts <- lapply(files, function(x) {openxlsx::read.xlsx(paste0(dir, x)) }) %>% `names<-`(files)
- # Converting HUGO gene symbols to ENTREZID
- ids <- bitr(unlist(stringr::str_split(contrasts[[1]][,"name"], pattern = "\\|")), fromType="SYMBOL", toType=c("ENTREZID"), OrgDb="org.Hs.eg.db")
- # GSEA of iNeurons vs iPSC contrasts
- gseas <- lapply(contrasts, function(x) {
- lfc_gene_vector <- x[match(ids$SYMBOL, x$name), "diff"] %>%
- arrange(desc(diff)) %>%
- select(diff) %>%
- pull() %>%
- `names<-`(ids[match(x$name, ids$SYMBOL),])
- ego <- gseGO(geneList = lfc_gene_vector,
- OrgDb = org.Hs.eg.db,
- ont = "BP",
- pvalueCutoff = 0.05,
- eps = 0,
- verbose = FALSE)
- })
- # Heatmap of top 20 down-regulated gene ontologies - iNeurons vs iPSC contrasts
- suppressPackageStartupMessages(library(ggplot2))
- heatmap_titles <- c("iNeurons_Brainphysis_HD vs iPSC",
- "iNeurons_Brainphysis_LD vs iPSC",
- "iNeurons_Neurobasal_HD vs iPSC",
- "iNeurons_Neurobasal_LD vs iPSC")
- pdf("../article_graphs/iNeu_v_iPSC_hmap_top_20_downregulated_ontologies.pdf", height = 16, width = 16)
- hmap <- do.call("rbind", lapply(c(1:4), function(x) {
- gseas[[x]][c(1:20),] %>%
- mutate(contrast = rep(titles[x], nrow(.)))})) %>%
- select(Description, contrast, NES) %>%
- merge(expand.grid(nes_matrix_top_20_dr_ont$Description, nes_matrix_top_20_dr_ont$contrast) %>%
- dplyr::rename(Description = Var1, contrast = Var2),., by = c("Description", "contrast"), all = T) %>%
- ggplot(aes(x = contrast, y = Description, fill = NES)) +
- geom_tile() +
- ggprism::theme_prism() +
- labs(fill = "NES") +
- theme(axis.title.y = element_blank(),
- axis.title.x = element_blank(),
- axis.text.x = element_text(hjust = 1, vjust = 1, angle = 45),
- legend.text = element_text(face = "bold"),
- legend.title = element_text(face = "bold")) +
- scale_fill_gradient(low="darkblue", high="skyblue", na.value = "grey") +
- ggtitle("GSEA - Gene Ontology Biological Process")
- plot(hmap)
- dev.off()
- # Tables of top 20 down-regulated gene ontologies - iNeurons vs iPSC contrasts
- ont_lists <- lapply(gseas, function(x) {
- x@result[order(x@result$NES, decreasing = F)[1:20],] %>%
- dplyr::select(Description, enrichmentScore, NES, p.adjust, core_enrichment_entrez_id = core_enrichment) %>%
- mutate(core_enrichment_hugo_symbol = unlist(lapply(x@result[order(x@result$NES, decreasing = F)[1:20], "core_enrichment"]), function(y) {
- ncbi_id <- as.integer(unlist(stringr::str_split(y, pattern = "/")))
- paste(ids[which(ids$ENTREZID %in% ncbi_id), "SYMBOL"], collapse = "/")
- }))
- }) %>% `names<-`(heatmap_titles)
- openxlsx::write.xlsx(ont_lists, "../results/iNeu_v_iPSC_table_top_20_downregulated_ontologies.xlsx", quote = F, rowNames = F)
- # Heatmap of target gene ontologies - iNeurons vs iPSC contrasts
- pathway_of_interest <- openxlsx::read.xlsx("../resources/Files to re-order the heatmap.xlsx")
- pathway_of_interest <- reord[-nrow(pathway_of_interest),]
- nes_matrix <- do.call("rbind", lapply(as.list(c(1:4)), function(x) {
- gseas[[x]] %>%
- filter(Description %in% pathway_of_interest$Description) %>%
- mutate(contrast = rep(heatmap_titles[x], nrow(.)))
- })) %>%
- select(contrast, Description, NES) %>%
- tidyr::spread(contrast, NES) %>%
- tibble::column_to_rownames("Description") %>%
- t()
- nes_matrix <- nes_matrix[c("iNeurons_Neurobasal_HD vs iPSC",
- "iNeurons_Neurobasal_LD vs iPSC",
- "iNeurons_Brainphysis_HD vs iPSC",
- "iNeurons_Brainphysis_LD vs iPSC"),]
- rownames(nes_matrix) <- NULL
- col_fun <- circlize::colorRamp2(c(min(nes_matrix, na.rm = T), max(nes_matrix, na.rm = T)), c("yellow", "red"));
- pdf("../article_graphs/iNeu_v_iPSC_hmap_target_ontologies.pdf", height = 16, width = 18)
- p <- Heatmap(nes_matrix, name = "NES",
- row_split = c("iNeurons_Neurobasal_HD vs iPSC",
- "iNeurons_Neurobasal_LD vs iPSC",
- "iNeurons_Brainphysis_HD vs iPSC",
- "iNeurons_Brainphysis_LD vs iPSC"),
- column_order = colnames(nes_matrix),
- na_col = "darkgrey",
- right_annotation = NULL,
- cluster_rows = FALSE,
- cluster_columns = FALSE,
- col = col_fun,
- column_names_gp = gpar(fontsize = 14, fontface = "bold"),
- column_title_gp = gpar(fontface = "bold"),
- row_names_gp = gpar(fontface = "bold"),
- row_title_gp = gpar(fontface = "bold"),
- column_names_max_height = unit(18, "cm"))
- plot(p)
- dev.off()
- # Tables of target gene ontologies - iNeurons vs iPSC contrasts
- ont_lists <- lapply(gseas, function(x) {
- x@result %>%
- filter(Description %in% pathway_of_interest$Description) %>%
- dplyr::select(Description, enrichmentScore, NES, p.adjust, core_enrichment_entrez_id = core_enrichment) %>%
- mutate(core_enrichment_hugo_symbol = unlist(lapply(x@result[order(@result$NES, decreasing = F)[1:20], "core_enrichment"]), function(y) {
- ncbi_id <- as.integer(unlist(stringr::str_split(y, pattern = "/")))
- paste(ids[which(ids$ENTREZID %in% ncbi_id), "SYMBOL"], collapse = "/")
- })) %>%
- arrange(desc(NES))
- }) %>%
- `names<-`(heatmap_titles)
- openxlsx::write.xlsx(ont_lists, "../results/iNeu_v_iPSC_table_target_ontologies.xlsx", quote = F, rowNames = F)
- # GSEA of contrasts between iNeurons culture conditions
- files <- list.files(dir)[grep(list.files(dir), pattern ="iNeurons.*iNeurons")][-1]
- contrasts <- lapply(as.list(files), function(x) {openxlsx::read.xlsx(paste0(dir, x)) %>% mutate(name = toupper(name))})
- gseas <- lapply(contrasts, function(x) {
- lfc_gene_vector <- x[match(ids$SYMBOL, x$name), "diff"] %>%
- arrange(desc(diff)) %>%
- select(diff) %>%
- pull() %>%
- `names<-`(ids[match(x$name, ids$SYMBOL),])
- <- gs(geneList = lfc_gene_vector,
- OrgDb = org.Hs.eg.db,
- ont = "BP",
- pvalueCutoff = 0.05,
- eps = 0,
- verbose = FALSE)
- })
- heatmap_titles <- c("iNeurons_Brainphysis_LD vs iNeurons_Brainphysis_HD ", "iNeurons_Neurobasal_HD vs iNeurons_Brainphysis_HD", "iNeurons_Neurobasal_LD vs iNeurons_Brainphysis_LD", "iNeurons_Neurobasal_LD vs iNeurons_Neurobasal_HD")
- ont_ind_to_exclude <- list(
- c("synaptic signaling", "regulation of trans-synaptic signaling", "chemical synaptic transmission"),
- c("anterograde trans-synaptic signaling", "trans-synaptic signaling", "chemical synaptic transmission","synapse organization","long-term synaptic potentiation","regulation of long-term synaptic potentiation","synapse assembly"),
- c("trans-synaptic signaling", "synapse organization", "synapse assembly", "regulation of synapse assembly","presynapse organization","synapse organization")
- )
- # Tables of target gene ontologies - contrasts between iNeurons culture conditions
- ont_lists <- lapply(as.list(c(1:3)), function(x) {
- gseas[[x]] %>%
- filter(grepl(Description, pattern = paste(c("axon", "synap", "neuro"), collapse = "|"))) %>%
- filter(!Description %in% ont_ind_to_exclude[[x]]) %>%
- dplyr::select(Description, enrichmentScore, NES, p.adjust, core_enrichment_entrez_id = core_enrichment) %>%
- mutate(core_enrichment_hugo_symbol = unlist(lapply(x@result[order(@result$NES, decreasing = F)[1:20], "core_enrichment"]), function(y) {
- ncbi_id <- as.integer(unlist(stringr::str_split(y, pattern = "/")))
- paste(ids[which(ids$ENTREZID %in% ncbi_id), "SYMBOL"], collapse = "/")
- })) %>%
- arrange(desc(NES))
- }) %>%
- `names<-`(heatmap_titles)
- openxlsx::write.xlsx(ont_lists, "../results/iNeu_v_iNeu_hmap_target_ontologies_list.xlsx", quote = F, rowNames = F)
- # Heatmap of target gene ontologies - contrasts between iNeurons culture conditions
- nes_matrix <- expand.grid(tab4$Description, heatmap_titles) %>%
- dplyr::rename(Description = Var1, contrast = Var2) %>%
- merge(.,do.call("rbind", lapply(as.list(c(1:3)), function(x) {
- gseas[[x]][-ro[[x]],] %>% mutate(contrast = rep(titles[x], nrow(.)))
- })), by = c("Description", "contrast"), all = T) %>%
- select(contrast, Description, NES) %>% distinct(NES, .keep_all = TRUE) %>%
- tidyr::spread(., contrast, NES) %>%
- tibble::column_to_rownames("Description") %>%
- t() %>%
- `rownames<-`(NULL)
- col_fun <- circlize::colorRamp2(c(min(nes_matrix, na.rm = T), max(nes_matrix, na.rm = T)), c("yellow", "red"));
- pdf("./article_graphs/iNeu_v_iNeu_hmap_target_ontologies.pdf", height = 10, width = 14)
- p <- Heatmap(nes_matrix, name = "NES",
- row_split = contrast,
- column_order = colnames(nes_matrix),
- na_col = "darkgrey",
- right_annotation = NULL,
- cluster_rows = FALSE,
- cluster_columns = FALSE,
- col = col_fun,
- column_names_gp = gpar(fontsize = 12, fontface = "bold"),
- column_title_gp = gpar(fontface = "bold"),
- row_names_gp = gpar(fontface = "bold"),
- row_title_gp = gpar(fontface = "bold"),
- column_names_max_height = unit(11, "cm"))
- plot(p)
- dev.off()
main.r at commit b2eed08, no license · at the source
Overview
- Dipartimento di Medicina Sperimentale, Università di Genova,Genoa, Italy
- Center for Synaptic Neuroscience and Technology, Istituto Italiano di Tecnologia,Genoa, Italy
- IRCCS Azienda Ospedaliera Metropolitana,Genoa, Italy
- Core Facility for Omics Science, IRCCS Istituto Giannina Gaslini,Genoa, Italy
- Department of Informatics, Bioengineering, Robotics, and Systems Engineering (DIBRIS), University of Genova,Genoa, Italy
- Unit of Medical Genetics, IRCCS Istituto Giannina Gaslini,Genoa, Italy
- Department of Neurosciences, Rehabilitation, Ophthalmology, Genetics, Maternal and Child Health (DiNOGMI), University of Genova,Genoa, Italy
Abstract
Induced glutamatergic neurons (iGluNeurons) generated by Neurogenin-2 (NGN2) overexpression in human pluripotent stem cells are a powerful model for studying human neuronal maturation and function; however, NGN2-based protocols still lack standardized culture conditions that critically affect neuronal development and function. Three key factors have been identified by previous literature, namely the composition of extracellular matrix coating, the initial plating density, and the choice of culture medium, but the differential effects of their combination have not been thoroughly analyzed. Here, we investigated the combinatorial effects of these three variables, testing eight distinct culture conditions resulting from the combinations of two coatings (poly-L-ornithine and polyethyleneimine), two media (BrainPhys and Neurobasal), and two cell densities (4800 and 1200 cells/
Reproduced under the paper's license (CC BY), from the paper cited above.
Repositories
Its files are read in the Code ↔ Paper reader above, with 6 matches between paragraphs and lines of code.
mathworks.com/matlabcentral/fileexchange
Availability: 2 checks, the latest on 27 September 2026: the link answers (HTTP 200)
- 27 September 2026: the link answers (HTTP 200)
- 27 September 2026: unreachable at the last attempt (HTTP 403)
ennionano/functional_roadmap_for_induced_glut-neurons
b2eed084c19115a196048dfda737faecfdc5ff9f, 11 March 2026Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
3 files
- R/
main.r , R, 422 lines, 5 matches - python/
main.py , Python, 5 lines, 1 match - README.md, Text, 2 lines
Code availability
The code is available on the following GitHub page “https://
Reproduced under the paper's license (CC BY), from the paper cited above.
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:
- 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 2 scripts, each with its path and the digest of its content;
- 6 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
No dataset and no data link were found in the paper.
Data availability
The data that support the findings of this study are available from the corresponding author upon reasonable request.
Reproduced under the paper's license (CC BY), from the paper cited above.
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, 27 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 17 authors, 3 keywords, 4 funders, 88 references.
Cite
This paper
Servetti, M., Parodi, G., Caramia, M., Nano, E., Bartolucci, M., Marte, A., Mazzoni, G., Giubbolini, S., Diab, F., Petretto, A., Valente, P., Martinoia, S., Baldassari, S., Fassio, A., Benfenati, F., Corradi, A., & Sterlini, B. (2026). An electrophysiological and proteomics roadmap for human induced glutamatergic neurons: fine-tuning of culture conditions for pathophysiological studies. Cell death discovery, 12(1), 333. https://
BibTeX
@article{servetti2026ele
author = {Servetti, Martina and Parodi, Giulia and Caramia, Martino and Nano, Ennio and Bartolucci, Martina and Marte, Antonella and Mazzoni, Giacomo and Giubbolini, Simone and Diab, Farah and Petretto, Andrea and Valente, Pierluigi and Martinoia, Sergio and Baldassari, Simona and Fassio, Anna and Benfenati, Fabio and Corradi, Anna and Sterlini, Bruno},
title = {{An electrophysiological and proteomics roadmap for human induced glutamatergic neurons: fine-tuning of culture conditions for pathophysiological studies}},
journal = {Cell death discovery},
year = {2026},
month = jun,
volume = {12},
number = {1},
pages = {333},
publisher = {Nature Publishing Group},
issn = {2058-7716},
doi = {10.1038/
url = {https://
pmid = {42248859},
pmcid = {PMC13458295}
}
RIS
TY - JOUR
AU - Servetti, Martina
AU - Parodi, Giulia
AU - Caramia, Martino
AU - Nano, Ennio
AU - Bartolucci, Martina
AU - Marte, Antonella
AU - Mazzoni, Giacomo
AU - Giubbolini, Simone
AU - Diab, Farah
AU - Petretto, Andrea
AU - Valente, Pierluigi
AU - Martinoia, Sergio
AU - Baldassari, Simona
AU - Fassio, Anna
AU - Benfenati, Fabio
AU - Corradi, Anna
AU - Sterlini, Bruno
TI - An electrophysiological and proteomics roadmap for human induced glutamatergic neurons: fine-tuning of culture conditions for pathophysiological studies
T2 - Cell death discovery
J2 - Cell Death Discov
PY - 2026
DA - 2026/
VL - 12
IS - 1
SP - 333
SN - 2058-7716
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "An electrophysiological and proteomics roadmap for human induced glutamatergic neurons: fine-tuning of culture conditions for pathophysiological studies",
"container-title": "Cell death discovery",
"author": [
{
"family": "Servetti",
"given": "Martina"
},
{
"family": "Parodi",
"given": "Giulia"
},
{
"family": "Caramia",
"given": "Martino"
},
{
"family": "Nano",
"given": "Ennio"
},
{
"family": "Bartolucci",
"given": "Martina"
},
{
"family": "Marte",
"given": "Antonella"
},
{
"family": "Mazzoni",
"given": "Giacomo"
},
{
"family": "Giubbolini",
"given": "Simone"
},
{
"family": "Diab",
"given": "Farah"
},
{
"family": "Petretto",
"given": "Andrea"
},
{
"family": "Valente",
"given": "Pierluigi"
},
{
"family": "Martinoia",
"given": "Sergio"
},
{
"family": "Baldassari",
"given": "Simona"
},
{
"family": "Fassio",
"given": "Anna"
},
{
"family": "Benfenati",
"given": "Fabio"
},
{
"family": "Corradi",
"given": "Anna"
},
{
"family": "Sterlini",
"given": "Bruno"
}
],
"container-title-short":
"volume": "12",
"issue": "1",
"page": "333",
"DOI": "10.1038/
"PMID": "42248859",
"PMCID": "PMC13458295",
"ISSN": "2058-7716",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
6,
5
]
]
}
}
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.1523/jneurosci.0912-25.2026 [code]
- Hierarchical Afferent Connectivity Drives Population-Wide Bursting Dynamics in a Computational Model of Human-Derived Excitatory Neuronal Networks.Journal: The Journal of neuroscience : the official journal of the Society for NeuroscienceIn common: 4 references, author Sergio Martinoia
- [2] doi:10.1038/s41467-026-74753-y [code]
- A human-specific microRNA controls the timing of excitatory synaptogenesis.Journal: Nature communicationsIn common: circlize, ComplexHeatmap, ggplot2, 1 other tool, 4 references
- [3] doi:10.1016/j.isci.2026.115488 [code]
- An integrated &
lt;i& gt;i& lt;/ i& gt; & lt;i& gt;n vitro& lt;/ i& gt; platform and biophysical modeling approach for studying synaptic transmission in isolated neuronal pairs. Journal: iScienceIn common: 7 references - [4] doi:10.1073/pnas.2609132123 [code]
- A human lysosomal storage disorder toolkit for decoding proteome landscapes in cortical-like and dopaminergic-like induced neurons.Journal: Proceedings of the National Academy of Sciences of the United States of AmericaIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, genetics / omics, 2 references
- [5] doi:10.1242/dev.205342 [code]
- Proteomic profile of hippocampal growth cones through early postnatal development.Journal: Development (Cambridge, England)In common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, genetics / omics, 2 references
- [6] doi:10.1186/s11689-026-09713-0 [code]
- DRP1 mutations associated with EMPF1 encephalopathy perturb the transcriptional profile and maturation of cortical neurons.Journal: Journal of neurodevelopmental disordersIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, 3 references
- [7] doi:10.1016/j.isci.2026.116412 [code]
- KOLF2.1J iTF-Microglia: A standardized platform to study microglial transcriptional regulatory networks in CNS disease.Journal: iScienceIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, genetics / omics, 2 references
- [8] doi:10.1038/s41586-026-10214-2 [code]
- Multidimensional profiling of heterogeneity in supratentorial ependymomas.Journal: NatureIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, genetics / omics, 2 references
- [9] doi:10.7554/elife.107393 [code]
- Chromosome-scale genome assembly of the European common cuttlefish &
lt;i& gt;Sepia officinalis& lt;/ i& gt;. Journal: eLifeIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, 2 references - [10] doi:10.1016/j.xcrm.2026.102682 [code]
- TET CpG sequence-context-specifi
c DNA demethylation shapes progression of IDH-mutant gliomas. Journal: Cell reports. MedicineIn common: circlize, clusterProfiler, ComplexHeatmap, 2 other tools, genetics / omics, 1 reference
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: 2 repositories of the authors' code, each at its verified commit and with its license, 2 scripts, and 6 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:82416aeb4b0238d3…
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.
