OSCR

Co-expression-based models improve eQTL predictions for transcriptome-wide association studies and highlight new schizophrenia-associated genes.

Code ↔ Paper

18 matches between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 18 matches · 4 of them tie a paragraph to a whole file, not to given lines: weak matches, whose lines are not tinted
  1. [1] § Results › INGENE and MODULE increase the number of predicted genes across brain regions › Evaluation of cis and trans model training performance ↔ STEP10. Average_Network_Predictions/3.Get_final_INGENE.R, lines 120–187 · score 0.90 · dorsal anterior cingulate, subgenual anterior cingulate, dorsolateral prefrontal cortex, sACC, dACC, hippocampus
  2. [2] § Methods › Analysis pipeline › cis-eQTL discovery ↔ STEP2.Training_cis/cisEQTL_helper_functions.R, lines 77–198 · score 0.77 · robust linear models, SNP gene pair, cross validated, cis eQTLs, ranked, fold
  3. [3] § Methods › Analysis pipeline › Expression quantification and preprocessing ↔ STEP1.Process_Data/1.RemoveOutliers.R, lines 139–206 · score 0.76 · removed outlier, mitochondrial genes, log2, RPKMs, median, zero
  4. [4] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › MODULE ↔ STEP2.Training_cis/cisEQTL_helper_functions.R, lines 77–198 · score 0.66 · robust linear models, eQTLs, cross validation, stratified, ranked, fold
  5. [5] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › INGENE ↔ STEP2.Training_cis/training_helper_functions.R, lines 76–137 · score 0.61 · cv.glmnet, cross validation, adjusted R2, penalty, coefficients, elastic
  6. [6] § Methods › Data sources › LIBD RNA-seq data ↔ STEP11.Combine_Cis_Trans_Predictions/config.R, lines 1–82 · score 0.60 · RNA seq, sACC, dACC, caudate, amygdala, pipeline
  7. [7] § Methods › coTWAS analysis in PGC3 cohorts › Conditional analysis ↔ STEP13.coTWAS_Analysis/conditional_analysis/4.corr.matrix.R, the whole file · a weak match · score 0.59 · root effective sample, correlation matrix, neff, cohort, weighting, gene
  8. [8] § Methods › coTWAS analysis in PGC3 cohorts › Conditional analysis ↔ STEP13.coTWAS_Analysis/conditional_analysis/5.stepwise.conditional.R, the whole file · a weak match · score 0.58 · Forward stepwise joint, FDR, threshold, gene
  9. [9] § Methods › Data sources › LIBD RNA-seq data ↔ STEP11.Combine_Cis_Trans_Predictions/config_cmc.R, lines 1–82 · score 0.57 · RNA seq, sACC, dACC, pipeline, LIBD, DLPFC
  10. [10] § Results › Combination of cis and trans scores enhances gene expression prediction in GTEx ↔ STEP11.Combine_Cis_Trans_Predictions/config_cmc.R, lines 1–82 · score 0.57 · linear model, sACC, dACC, trans predictors, combining cis, EpiXcan
  11. [11] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › INGENE ↔ scripts/EpiXcan_CV_elasticNet_penalty.R, lines 10–159 · score 0.57 · cv.glmnet, cross validation, penalty, zero, elastic, R2
  12. [12] § Results › INGENE and MODULE increase the number of predicted genes across brain regions › Evaluation of cis and trans model training performance ↔ STEP11.Combine_Cis_Trans_Predictions/config.R, lines 1–82 · score 0.56 · RNA seq, sACC, dACC, EpiXcan, caudate, amygdala
  13. [13] § Methods › coTWAS analysis in PGC3 cohorts › Conditional analysis ↔ STEP13.coTWAS_Analysis/conditional_analysis/5.stepwise.conditional.R, the whole file · a weak match · score 0.56 · CoCo, unit variance, betas, genes
  14. [14] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › MODULE ↔ coTWAS_Source_Code.zip/STEP3.Training_MODULE/training_helper_functions.R, lines 412–451 · score 0.55 · module eigengene, principal component, PC1, brain region, matrix, network
  15. [15] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › MODULE ↔ coTWAS_Source_Code.zip/STEP3.Training_MODULE/3.coeQTL.R, the whole file · a weak match · score 0.55 · cross validation, robustbase, sfsmisc, co, pruning, ranked
  16. [16] § Methods › Model evaluation › ANOVA analysis in GTEx ↔ STEP2.Training_cis/3.Training.R, lines 41–92 · score 0.54 · RNA rate, mapping rate, sex, age, brain region, covariates
  17. [17] § Methods › Model evaluation › ANOVA analysis in GTEx ↔ STEP2.Training_cis/3.Training_EpiXcan.R, lines 44–97 · score 0.54 · RNA rate, mapping rate, sex, age, brain region, covariates
  18. [18] § Methods › Training and application of coexpression-based predictive models: INGENE and MODULE › MODULE ↔ STEP7.Training_INGENE/5.Training.R, lines 1–39 · score 0.52 · imputed expression, cross validation, consolidate, Elastic, INGENE, weights

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 · 362 lines · 15 KB · MIT · 2 matches

  1. #####################################################################
  2. # Helper Functions for cis-eQTL Analysis
  3. #####################################################################
  4. #' Generate stratified fold IDs based on diagnosis
  5. #' @description Creates cross-validation fold assignments while maintaining balanced
  6. #' representation of diagnosis groups across folds
  7. #' @param n_folds Number of folds for cross-validation
  8. #' @param covariates Data frame containing sample covariates including diagnosis (Dx)
  9. #' @return Vector of fold assignments (1 to n_folds) for each sample
  10. generate_fold_ids_stratified = function(n_folds, covariates) {
  11. set.seed(070892)
  12. covariates$Dx = as.character(covariates$Dx)
  13. unique_dx = unique(covariates$Dx)
  14. if(length(table(covariates$Dx)) == 1) {
  15. return(generate_fold_ids_notstratified(n_folds, covariates))
  16. }
  17. fold_assignments = map(unique_dx, function(dx_value) {
  18. dx_data = covariates %>% filter(Dx == dx_value)
  19. sample(1:n_folds, size = nrow(dx_data), replace = TRUE)
  20. })
  21. do.call(c, fold_assignments)
  22. }
  23. #' Filter genes and SNPs within cis window
  24. #' @description Identifies SNP-gene pairs within a specified genomic distance (cis window)
  25. #' @details For each gene, finds all SNPs that lie within the specified window size
  26. #' upstream or downstream of the gene boundaries
  27. #' @param gene_annot Data frame with gene annotations (chr, tss positions)
  28. #' @param snp_annot Data frame with SNP annotations (chromosome, position)
  29. #' @param chromosome Current chromosome being analyzed
  30. #' @param cis_window Size of cis window in base pairs
  31. #' @return List containing filtered genes, SNPs and their pairwise associations
  32. filter_cis_pairs = function(gene_annot, snp_annot, chromosome, cis_window) {
  33. # Filter genes and SNPs on current chromosome
  34. chr_genes = gene_annot[gene_annot$chr == chromosome, ]
  35. chr_snps = snp_annot[snp_annot$Chromosome == chromosome, ]
  36. if(nrow(chr_genes) == 0 || nrow(chr_snps) == 0) return(NULL)
  37. # Create pairs within cis window
  38. cis_pairs = list()
  39. for(i in 1:nrow(chr_genes)) {
  40. gene_id = chr_genes$gencodeID[i]
  41. gene_tss = chr_genes[i,"tss"]
  42. gene_end = chr_genes[i,"end"] + cis_window
  43. # Find SNPs in cis window for this gene
  44. cis_snps = chr_snps[chr_snps$Position >= gene_tss - cis_window &
  45. chr_snps$Position <= gene_tss + cis_window,]
  46. if(nrow(cis_snps) > 0) {
  47. cis_pairs[[gene_id]] = unique(cis_snps$SNP)
  48. }
  49. }
  50. return(list(
  51. genes = chr_genes,
  52. snps = chr_snps,
  53. pairs = cis_pairs
  54. ))
  55. }
  56. # Function for fixed-effect inverse variance meta-analysis
  57. meta_effect = function(betas, ses) {
  58. weights = 1 / (ses^2)
  59. beta_meta = sum(weights * betas) / sum(weights)
  60. se_meta = sqrt(1 / sum(weights))
  61. z_meta = beta_meta / se_meta
  62. p_meta = 2 * pnorm(-abs(z_meta))
  63. return(c(beta_meta, se_meta, p_meta))
  64. }
  65. #' Run robust linear model analysis for cis-eQTLs with cross-validation
  66. #' @description Performs cross-validated robust linear regression to identify eQTLs
  67. #' @details For each SNP-gene pair:
  68. #' 1. Splits data into train/test folds
  69. #' 2. Fits robust linear models controlling for covariates
  70. #' 3. Calculates association statistics and rankings
  71. #' @param gene Gene identifier being analyzed
  72. #' @param expression Expression data matrix for the gene
  73. #' @param genotypes Matrix of genotypes for cis-window SNPs
  74. #' @param snp_annot SNP annotation information
  75. #' @param covariates Sample covariates to include in the model
  76. #' @param n_folds Number of cross-validation folds
  77. #' @param n_cores Number of CPU cores for parallel processing
  78. #' @param output_dir Directory to save results
  79. #' @param data_dir Directory containing input data
  80. #' @param cv_fold_id Identifier for CV fold assignments
  81. #' @param brain_region Brain region being analyzed
  82. #' @return Data frame of significant eQTL associations
  83. run_rlm_analysis = function(gene, expression, genotypes, snp_annot, covariates, n_folds=4, n_cores = 1,
  84. output_dir, data_dir, cv_fold_id, brain.region) {
  85. # Match samples between expression, genotype and covariates
  86. expression = expression[which(rownames(expression) %in% rownames(genotypes)),,drop=F]
  87. genotypes = genotypes[which(rownames(genotypes) %in% rownames(expression)),,drop=F]
  88. expression = expression[match(rownames(genotypes), rownames(expression)),,drop=F]
  89. stopifnot(identical(rownames(expression), rownames(genotypes)))
  90. covariates = covariates[which(rownames(covariates) %in% rownames(genotypes)),,drop=F]
  91. covariates = covariates[match(rownames(genotypes), rownames(covariates)),,drop=F]
  92. stopifnot(identical(rownames(covariates), rownames(genotypes)))
  93. ## Remove SNPs with missing values (Elastic Net training does not handle NAs)
  94. genotypes = genotypes[, apply(genotypes, 2, function(x) all(!is.na(x)))]
  95. # Generate fold assignments
  96. fold_file = file.path(data_dir,
  97. paste0(cv_fold_id, '_cv_4fold_', brain.region, '_ids.RData'))
  98. fold_ids = if(!file.exists(fold_file)) {
  99. ids = generate_fold_ids_stratified(n_folds, covariates)
  100. save(ids, file = fold_file)
  101. ids
  102. } else {
  103. get(load(fold_file))
  104. }
  105. # Run cross-validation
  106. cv_results = lapply(1:n_folds, function(fold) {
  107. # Split into train/test sets
  108. train_idx = ids != fold
  109. test_idx = ids == fold
  110. x_train = genotypes[train_idx, ]
  111. y_train = expression[train_idx, ]
  112. covs_train = covariates[train_idx, ]
  113. ## Run rlm for each SNP
  114. QTL.rlm = mclapply(colnames(x_train), function(snp) {
  115. if (length(unique(x_train[, snp])) == 1) return(NULL) # Skip SNPs with no variability
  116. df = data.frame(y_train = y_train, snp_value = x_train[, snp]) # Base dataframe
  117. # Include covariates if available
  118. #covar_terms = colnames(covs_train)[grepl("Age|Sex|Dx|C[1-5]|PC", colnames(covs_train))]
  119. #df = cbind(df, covs_train) # Add covariates to the dataframe
  120. # df$Sex = as.numeric(df$Sex)
  121. # df$Dx = as.numeric(df$Dx)
  122. #formula_str = paste("y_train ~", paste(c(covar_terms, "snp_value"), collapse = " + "))
  123. formula_str = paste("y_train ~ snp_value")
  124. form = as.formula(formula_str)
  125. # Fit RLM model with error handling
  126. tryCatch(rlm(form, data = df), error = function(e) NULL)
  127. }, mc.cores = n_cores, mc.preschedule = FALSE)
  128. names(QTL.rlm) = colnames(x_train)
  129. QTL.rlm = QTL.rlm[!sapply(QTL.rlm, is.null)]
  130. # Extract coefficients and p-values
  131. coef_stats = lapply(QTL.rlm, function(model) {
  132. coef_summary = summary(model)$coefficients # Extract coefficients
  133. snp_idx = which(rownames(coef_summary) == "snp_value") # Find SNP row
  134. coef_summary[snp_idx, ]
  135. })
  136. p_values = lapply(QTL.rlm, function(model) {
  137. f.robftest(model, var = "snp_value")$p.value
  138. })
  139. # Format results for this fold
  140. fold_results = data.frame(
  141. snp = names(QTL.rlm),
  142. beta = unlist(lapply(coef_stats, function(x) x[1])),
  143. st_err = unlist(lapply(coef_stats, function(x) x[2])),
  144. t_value = unlist(lapply(coef_stats, function(x) x[3])),
  145. p_value = unlist(p_values)
  146. )
  147. # Add fold-specific rankings
  148. fold_results = fold_results[order(fold_results$p_value),]
  149. fold_results$rank = rank(fold_results$p_value)
  150. return(fold_results)
  151. })
  152. # Get significant SNPs and save results
  153. significant_eqtls = getSignificantQTLs(
  154. cv_list = cv_results,
  155. snp_pos = snp_annot,
  156. genotype = genotypes
  157. )
  158. significant_eqtls$gene = gene
  159. return(significant_eqtls)
  160. }
  161. ## Function to perform pruning
  162. #' Calculate linkage disequilibrium between SNPs
  163. #' @description Computes r-squared values between a target SNP and neighboring SNPs
  164. #' within a specified genomic window
  165. #' @details For a given SNP:
  166. #' 1. Identifies all SNPs within the flanking window
  167. #' 2. Calculates pairwise r-squared values
  168. #' 3. Returns SNPs exceeding the LD threshold for pruning
  169. #' @param genotypes Matrix of genotype values
  170. #' @param flank Size of flanking region (in base pairs) to check for LD
  171. #' @param association Data frame containing SNP positions and association statistics
  172. #' @param snp Index of the target SNP in the association data frame
  173. #' @param rsquared R-squared threshold for considering SNPs in LD
  174. #' @return List containing:
  175. #' - cut: r-squared values above threshold
  176. #' - new.genotypes: Genotype matrix with LD SNPs removed
  177. #' - new.association: Association results with LD SNPs removed
  178. #' - snp: IDs of SNPs removed due to LD
  179. SNPr2 = function(genotypes, flank, association, snp, rsquared) {
  180. #print(snp)
  181. index = which(association[,2]==association[snp,2] &
  182. association[,3]>= association[snp,3]-flank &
  183. association[,3]<= association[snp,3]+flank)
  184. marker = row.names(association)[index]
  185. window = genotypes[,which(colnames(genotypes) %in% marker), drop=F]
  186. r2 = cor(window, genotypes[,association[snp,1]], use="pairwise.complete.obs")^2
  187. cut = subset(r2, r2[,1] >= rsquared)
  188. snp_r2 = row.names(cut)[!(row.names(cut) %in% association[snp,1])]
  189. new_genotypes = genotypes[,!(colnames(genotypes) %in% snp_r2)]
  190. new_assocation = association[!(association[,1] %in% snp_r2),]
  191. results = list(cut=cut,
  192. new.genotypes=new_genotypes,
  193. new.association=new_assocation,
  194. snp=snp_r2)
  195. return(results)
  196. }
  197. #' Prune SNPs in linkage disequilibrium
  198. #' @description Removes highly correlated SNPs based on LD structure to identify
  199. #' independent association signals
  200. #' @details Iterative process:
  201. #' 1. Takes SNPs in order of association strength
  202. #' 2. For each SNP, identifies and removes others in high LD
  203. #' 3. Updates association statistics after pruning
  204. #' 4. Applies multiple testing corrections
  205. #' @param annot Data frame with SNP annotations (SNP ID, chromosome, position)
  206. #' @param eqtls Data frame containing eQTL association results
  207. #' @param x Matrix of genotype values for all SNPs
  208. #' @return Data frame of pruned eQTL associations with updated statistics:
  209. #' - Original association metrics
  210. #' - FDR and Bonferroni corrected p-values
  211. #' - Updated rankings after pruning
  212. ciseQTL_pruning = function(annot, eqtls, x) {
  213. # Filter and match annot based on eqtls
  214. annot = annot[annot$SNP %in% rownames(eqtls), ]
  215. annot = annot[match(rownames(eqtls), annot$SNP), ]
  216. stopifnot(identical(rownames(eqtls), annot$SNP))
  217. # Create association data frame
  218. assoc = cbind(annot[, c("SNP", "Chromosome", "Position")], eqtls)
  219. colnames(assoc)[1] ="Marker"
  220. assoc = assoc[order(assoc$meta_p), ]
  221. rownames(assoc) = assoc$Marker
  222. # Pruning parameters
  223. f = 250000
  224. rsq = 0.9
  225. # Use a while loop for pruning
  226. i = 1
  227. while (i <= nrow(assoc)) {
  228. pruning = SNPr2(genotypes = x, flank = f, association = assoc, snp = i, rsquared = rsq)
  229. x = pruning$new.genotypes
  230. assoc = pruning$new.association
  231. i = i + 1
  232. }
  233. # Adjust p-values and ranks
  234. assoc$FDR = p.adjust(assoc$new_pval, method = "fdr")
  235. assoc$Bonferroni = p.adjust(assoc$new_pval, method = "bonferroni")
  236. assoc$rank = rank(assoc$new_pval)
  237. return(assoc)
  238. }
  239. #' Get significant SNPs across CV folds
  240. #' @description Processes cross-validation results to identify consistent eQTLs
  241. #' @details 1. Finds SNPs present in all folds
  242. #' 2. Combines statistics across folds
  243. #' 3. Performs LD pruning on final results
  244. #' @param gene Gene identifier
  245. #' @param cv_list List of results from each CV fold
  246. #' @param snp_pos SNP position information
  247. #' @param genotype Full genotype data
  248. #' @return Data frame of significant pruned eQTL associations
  249. getSignificantQTLs = function(gene, cv_list, snp_pos, genotype) {
  250. # Get common SNPs across folds
  251. common_snps = Reduce(intersect, lapply(cv_list, function(x) x$snp))
  252. # Filter each fold to retain only common SNPs
  253. cv_list = lapply(cv_list, function(fold) {
  254. fold = fold[fold$snp %in% common_snps, , drop = FALSE]
  255. return(fold)
  256. })
  257. # Ensure SNP order is the same across all folds (based on the first fold)
  258. snp_order = cv_list[[1]]$snp
  259. # Reorder each fold to match the first fold SNP order
  260. cv_list = lapply(cv_list, function(fold) {
  261. fold = fold[match(snp_order, fold$snp), , drop = FALSE]
  262. return(fold)
  263. })
  264. # Merge results across folds
  265. merged_df = Reduce(cbind, lapply(cv_list, function(x) x))
  266. # Extract relevant statistics
  267. rank_cols = merged_df[, grepl('rank', colnames(merged_df)), drop = FALSE]
  268. pval_cols = merged_df[, grepl('p_value', colnames(merged_df)), drop = FALSE]
  269. stat_cols = merged_df[, grepl('snp|beta|st_err|t_value', colnames(merged_df)), drop = FALSE]
  270. # Compute combined statistics
  271. merged_results = data.frame(
  272. new_rank = rank(rowProds(as.matrix(rank_cols))),
  273. new_pval = rowProds(as.matrix(pval_cols))
  274. )
  275. # Extract beta and se columns for meta-analysis
  276. beta_cols = merged_df[, grepl('^beta(\\.|$)', colnames(merged_df)), drop = FALSE]
  277. se_cols = merged_df[, grepl('^st_err(\\.|$)', colnames(merged_df)), drop = FALSE]
  278. # Apply meta-analysis row-wise
  279. meta_results = t(sapply(seq_len(nrow(beta_cols)), function(i) {
  280. betas = as.numeric(beta_cols[i, ])
  281. ses = as.numeric(se_cols[i, ])
  282. meta_effect(betas, ses)
  283. }))
  284. colnames(meta_results) = c("meta_beta", "meta_se", "meta_p")
  285. # Combine meta-analysis results with merged_df
  286. final_results = cbind(merged_results, meta_results, rank_cols, pval_cols, stat_cols)
  287. # Sort by meta_p
  288. final_results = final_results[order(final_results$meta_p), ]
  289. rownames(final_results) = final_results$snp
  290. # Prune SNPs in LD
  291. pruned_results = ciseQTL_pruning(annot = snp_pos, eqtls = final_results, x = genotype)
  292. return(pruned_results)
  293. }

cisEQTL_helper_functions.R at commit 088fed1, under MIT · at the source

Overview

Authors: Fabiana Rossi1,2, Leonardo Sportelli1,2, Gianluca C Kikidis1,2, Giulia Grassi3,4, Fabio Di Camillo1,2, Alessandro Bertolino1,5, Giuseppe Blasi1,5, Christopher J Borcuk1,2, Daniela Fusco6, Thomas M Hyde2,7,8, Joel E Kleinman2,7, Davide Marnetto6, Silvia Pellegrini4, Antonio Rampino1,5, Benedetto Vitiello9, Stephan Ripke10,11,12, Alice Braun10,11, Julia Kraft10,11,13, Sintia Iole Belangero14,15, Paulo R Menezes16
and 59 other authorsCelso Arango17,18, James T R Walters19, Michael C O’Donovan19, Michael J Owen19, David Braff20,21, Aiden Corvin22, Derek W Morris23, Enrico Domenici24, Jim van Os25,26, Esref Atbaşoğlu27,28, Meram C Saka27, Marta Di Forti29,30,31, Bernhard T Baune32,33,34, Carlos N Pato35,36, Andrew McQuillin37, Vera Golimbet38, Nikolay Kondratyev38, Valentina Escott-Price19,39, Anna Gareeva40, Elza Khusnutdinova40,41, Jorge A Cervilla42, Margarita Rivera43,44,45, Dominique Campion46,47, Claudine Laurent-Levinson48,49, Alessandro Serretti50,51, Ole A Andreassen52,53, David St Clair54, Todd Lencz55,56,57, Anil K Malhotra55,56,57, Nina S McCarthy58, Bryan J Mowry59,60, Dan Rujescu61, Ina Giegling61, Annette M Hartmann61, Bettina Konte61, Markus M Nöthen62, Marcella Rietschel63, George Kirov19, Patrick F Sullivan64,65,66, Tracey L Petryshen67, Thomas Werge68,69,70,71, Andrew M McIntosh72, Tõnu Esko73, Erik G Jönsson74,75, Hannelore Ehrenreich76,77, Brien P Riley78, Douglas F Levinson79, Joseph D Buxbaum80, Elvira Bramon81,82, Christina M Hultman66, Roel A Ophoff83,84, Rolf Adolfsson85, Eli A Stahl80,86,87, Sinan Guloksuz88,89,90,91, Bart P F Rutten90, Cristina M Del-Ben92, Florence Thibaut93,94, Daniel R Weinberger2,7,8,95,96, Giulio Pergola1,2,7,96
96 affiliations
  1. Department of Translational Biomedicine and Neuroscience, University of Bari Aldo Moro, Bari, Italy
  2. Lieber Institute for Brain Development, Johns Hopkins Medical Campus, Baltimore, MD USA
  3. IMT School for Advanced Studies Lucca, Lucca, Italy
  4. Department of Clinical and Experimental Medicine, University of Pisa, Pisa, Italy
  5. Psychiatric Unit, Bari University Hospital, Bari, Italy
  6. Department of Neurosciences “Rita Levi Montalcini”, University of Turin, Turin, Italy
  7. Department of Psychiatry and Behavioral Sciences, Johns Hopkins University School of Medicine, Baltimore, MD USA
  8. Department of Neurology, Johns Hopkins University School of Medicine, Baltimore, MD USA
  9. Department of Public Health and Pediatric Sciences, University of Turin, Turin, Italy
  10. Department of Psychiatry and Psychotherapy, Charité - Universitätsmedizin, Berlin, Germany
  11. Stanley Center for Psychiatric Research, Broad Institute of MIT and Harvard, Cambridge, MA USA
  12. Analytic and Translational Genetics Unit, Massachusetts General Hospital, Boston, MA USA
  13. German Center for Mental Health (DZPG), partner site Berlin/Potsdam, Berlin, Germany
  14. Department of Morphology and Genetics, Laboratorio de Genetica, Universidade Federal de São Paulo, São Paulo, Brazil
  15. Laboratory of Integrative Neuroscience, Universidade Federal de São Paulo, São Paulo, Brazil
  16. Department of Preventative Medicine, Faculdade de Medicina FMUSP, University of São Paulo, São Paulo, Brazil
  17. Hospital Universitario La Paz, IdiPAZ, School of Medicine, Universidad Autónoma de Madrid, Madrid, Spain
  18. Centro de Investigación Biomédica en Red en Salud Mental (CIBERSAM), Madrid, Spain
  19. Centre for Neuropsychiatric Genetics and Genomics, Division of Psychological Medicine and Clinical Neurosciences, Cardiff University, Cardiff, UK
  20. Department of Psychiatry, University of California San Diego, La Jolla, CA USA
  21. VISN 22, Mental Illness Research, Education and Clinical Center (MIRECC), VA San Diego Healthcare System, San Diego, CA USA
  22. Neuropsychiatric Genetics Research Group, Department of Psychiatry, Trinity College Dublin, Dublin, Ireland
  23. Centre for Neuroimaging, Cognition and Genomics (NICOG), School of Biological and Chemical Sciences, University of Galway, Galway, Ireland
  24. Department of Cellular, Computational and Integrative Biology, University of Trento, Trento, Italy
  25. University Medical Center Utrecht, Department of Psychiatry, Utrecht, Netherlands
  26. Department of Psychosis Studies, Institute of Psychiatry, Psychology and Neuroscience, King’s College London, London, UK
  27. Department of Psychiatry, School of Medicine, Ankara University, Ankara, Turkey
  28. Department of Genetics and Genomics, Icahn School of Medicine at Mount Sinai, New York, NY USA
  29. Social, Genetic and Developmental Psychiatry Centre, Institute of Psychiatry, Psychology and Neuroscience, King’s College London, London, UK
  30. National Institute for Health Research (NIHR) Maudsley Biomedical Research Centre at South London and Maudsley NHS Foundation Trust and King’s College London, London, UK
  31. South London and Maudsley NHS Mental Health Foundation Trust, London, UK
  32. Department of Psychiatry, University of Münster, Münster, Germany
  33. Department of Psychiatry, Melbourne Medical School, University of Melbourne, Parkville, Victoria Australia
  34. The Florey Institute of Neuroscience and Mental Health, University of Melbourne, Parkville, Victoria Australia
  35. Rutgers University, Robert Wood Johnson Medical School, New Brunswick, NJ USA
  36. Department of Psychiatry and Zilkha Neurogenetics Institute, Keck School of Medicine at University of Southern California, Los Angeles, CA USA
  37. Molecular Psychiatry Laboratory, Division of Psychiatry, University College London, London, UK
  38. Russian Mental Health Research Center, Moscow, Russia
  39. Dementia Research Institute, Cardiff University, Cardiff, UK
  40. Bashkir State Medical University, Ufa, Russia
  41. Institute of Biochemistry and Genetics, Ufa Federal Research Center of the Russian Academy of Sciences, Ufa, Russia
  42. Department of Psychiatry, San Cecilio University Hospital, University of Granada, Granada, Spain
  43. Department of Biochemistry and Molecular Biology II, Faculty of Pharmacy, University of Granada, Granada, Spain
  44. Institute of Neurosciences ´Federico Olóriz´, Biomedical Research Centre (CIBM), University of Granada, Granada, Spain
  45. Instituto de Investigación Biosanitaria, Ibs Granada, Granada, Spain
  46. INSERM, Rouen, France
  47. Centre Hospitalier du Rouvray, Rouen, France
  48. Department of Child and Adolescent Psychiatry, Reference Center for Rare Disease with Psychiatric Expression, Pitié-Salpêtrière University Hospital, Assistance Publique-Hôpitaux de Paris, Paris, France
  49. UMRs933-Childhood Genetic Diseases Laboratory, INSERM and Sorbonne University, Trousseau Hospital, Paris, France
  50. Department of Medicine and Surgery, Kore University of Enna, Enna, Italy
  51. Oasi Research Institute-IRCCS, Troina, Italy
  52. Centre for Precision Psychiatry, Division of Mental Health and Addiction, University of Oslo, Oslo, Norway
  53. Division of Mental Health and Addiction, Oslo University Hospital, Oslo, Norway
  54. Institute of Medical Sciences, University of Aberdeen, Aberdeen, UK
  55. Division of Psychiatry Research, Zucker Hillside Hospital, Glen Oaks, NY USA
  56. Institute of Behavioral Science, Feinstein Institutes for Medical Research, Manhasset, NY USA
  57. Department of Psychiatry, Zucker School of Medicine at Hofstra/Northwell, Hempstead, NY USA
  58. School of Biomedical Sciences, The University of Western Australia, Perth, Western Australia Australia
  59. Queensland Brain Institute, University of Queensland, Brisbane, Queensland Australia
  60. Queensland Centre for Mental Health Research, The University of Queensland, Brisbane, Queensland Australia
  61. Department of Psychiatry and Psychotherapy, Comprehensive Center for Clinical Neurosciences and Mental Health (C3NMH), Medical University of Vienna, Vienna, Austria
  62. Institute of Human Genetics, University of Bonn & University Hospital of Bonn, Bonn, Germany
  63. Department of Genetic Epidemiology in Psychiatry, Central Institute of Mental Health, Medical Faculty Mannheim, University of Heidelberg, Mannheim, Germany
  64. Department of Genetics, University of North Carolina, Chapel Hill, NC USA
  65. Department of Psychiatry, University of North Carolina, Chapel Hill, NC USA
  66. Department of Medical Epidemiology and Biostatistics, Karolinska Institutet, Stockholm, Sweden
  67. Psychiatric and Neurodevelopmental Genetics Unit, Department of Psychiatry, Massachusetts General Hospital, Harvard Medical School, Boston, MA USA
  68. Institute of Biological Psychiatry, Mental Health Services, Copenhagen University Hospital, Copenhagen, Denmark
  69. Department of Clinical Medicine, University of Copenhagen, Copenhagen, Denmark
  70. Center for GeoGenetics, University of Copenhagen, Copenhagen, Denmark
  71. iPSYCH, The Lundbeck Foundation Initiative for Integrative Psychiatric Research, Copenhagen, Denmark
  72. Institute of Neuroscience and Cardiovascular Research, University of Edinburgh, Edinburgh, UK
  73. Institute of Genomics, University of Tartu, Tartu, Estonia
  74. Centre for Psychiatry Research, Department of Clinical Neuroscience, Karolinska Institutet and Stockholm Health Care Services, Stockholm Region, Stockholm, Sweden
  75. NORMENT Centre, Institute of Clinical Medicine, University of Oslo, Oslo, Norway
  76. Clinical Neuroscience, Max Planck Institute of Experimental Medicine, Göttingen, Germany
  77. Central Institute of Mental Health, Medical Faculty Mannheim, University of Heidelberg, Mannheim, Germany
  78. Virginia Institute for Psychiatric and Behavioral Genetics, Department of Psychiatry, Virginia Commonwealth University, Richmond, VA USA
  79. Department of Psychiatry and Behavioral Sciences, Stanford University, Stanford, CA USA
  80. Department of Psychiatry, Icahn School of Medicine at Mount Sinai, New York, NY USA
  81. Division of Psychiatry, Department of Mental Health Neuroscience, University College London, London, UK
  82. Institute of Cognitive Neuroscience, University College London, London, UK
  83. Center for Neurobehavioral Genetics, Semel Institute for Neuroscience and Human Behavior, University of California, Los Angeles, CA USA
  84. Department of Human Genetics, David Geffen School of Medicine, University of California Los Angeles, Los Angeles, CA USA
  85. Department of Clinical Sciences, Psychiatry, Umeå University, Umeå, Sweden
  86. Program in Medical and Population Genetics, The Broad Institute of MIT and Harvard, Cambridge, MA USA
  87. Regeneron Genetics Center, Tarrytown, NY USA
  88. Department of Psychiatry, University of British Columbia, Vancouver, British Columbia Canada
  89. Institute of Mental Health, University of British Columbia, Vancouver, British Columbia Canada
  90. Department of Psychiatry and Neuropsychology, School for Mental Health and Neuroscience, Maastricht University Medical Centre, Maastricht, The Netherlands
  91. Department of Psychiatry, Yale University School of Medicine, New Haven, CT USA
  92. Neuroscience and Behavior Department; Ribeirão Preto Medical School, University of São Paulo, São Paulo, Brazil
  93. University Paris Cité, Hôpital Cochin-Tarnier, Paris, France
  94. INSERM U1266, Institute of Psychiatry and Neurosciences, Paris, France
  95. Department of Neuroscience, Johns Hopkins University School of Medicine, Baltimore, MD USA
  96. Department of Genetic Medicine, Johns Hopkins University School of Medicine, Baltimore, MD USA
Institutions: Lieber Institute for Brain Development (United States); University of Bari Aldo Moro (Italy); University of Pisa (Italy); IMT School for Advanced Studies Lucca (Italy); University of Turin (Italy); Johns Hopkins University (United States); Johns Hopkins Medicine (United States); Broad Institute (United States); Massachusetts General Hospital (United States); Stiftung Charité; Stanley Center for Psychiatric Research; Charité - Universitätsmedizin Berlin (Germany); Deutsches Zentrum für Psychische Gesundheit (Germany); Universidade Federal de São Paulo (Brazil); Universidade de São Paulo (Brazil); Hospital Universitario La Paz (Spain); Centro de Investigación Biomédica en Red de Salud Mental (Spain); Universidad Autónoma de Madrid (Spain); Cardiff University (United Kingdom); University of California San Diego (United States); VA San Diego Healthcare System (United States); Mental Illness Research, Education and Clinical Centers (United States); Trinity College Dublin (Ireland); Ollscoil na Gaillimhe – University of Galway (Ireland); University of Trento (Italy); King's College London (United Kingdom); University Medical Center Utrecht (Netherlands); Ankara University (Türkiye); Icahn School of Medicine at Mount Sinai (United States); South London and Maudsley NHS Foundation Trust (United Kingdom); National Institute for Health and Care Research (United Kingdom); NIHR Maudsley Biomedical Research Centre (United Kingdom); The University of Melbourne (Australia); University of Münster (Germany); Florey Institute of Neuroscience and Mental Health (Australia); Rutgers, The State University of New Jersey (United States); University of Southern California (United States); University College London (United Kingdom); Mental Health Research Center of Russian Academy of Medical Sciences (Russia); Bashkir State Medical University (Russia); Institute of Biochemistry and Genetics of Ufa Scientific Centre (Russia); Universidad de Granada (Spain); Instituto de Investigación Biosanitaria de Granada (Spain); Inserm (France); Centre Hospitalier du Rouvray (France); Sorbonne Université (France); Hôpital Armand-Trousseau (France); Assistance Publique – Hôpitaux de Paris (France); Pitié-Salpêtrière Hospital (France); Maladies génétiques d’expression pédiatrique; Università degli Studi di Enna Kore (Italy); I.R.C.C.S. Oasi Maria SS (Italy); Oslo University Hospital (Norway); University of Oslo (Norway); University of Aberdeen (United Kingdom); Feinstein Institute for Medical Research (United States); Hofstra University (United States); Donald & Barbara Zucker School of Medicine at Hofstra/Northwell (United States); Zucker Hillside Hospital (United States); The University of Western Australia (Australia); The University of Queensland (Australia); Queensland Centre for Mental Health Research (Australia); Medical University of Vienna (Austria); University of Bonn (Germany); University Hospital Bonn (Germany); Heidelberg University (Germany); Central Institute of Mental Health (Germany); Medizinische Fakultät Mannheim; University of North Carolina at Chapel Hill (United States); Karolinska Institutet (Sweden); Harvard University (United States); University of Copenhagen (Denmark); Mental Health Services (Denmark); Copenhagen University Hospital (Denmark); Lundbeck Foundation (Denmark); University of Edinburgh (United Kingdom); University of Tartu (Estonia); Region Stockholm (Sweden); Stockholm Health Care Services (Sweden); Max Planck Institute of Experimental Medicine (Germany); Virginia Commonwealth University (United States); Stanford Medicine (United States); Stanford University (United States); University of California, Los Angeles (United States); Umeå University (Sweden); Regeneron (United States) (United States); University of British Columbia (Canada); Maastricht University Medical Centre (Netherlands); Yale University (United States); Université Paris Cité (France); Hôpital Cochin (France); Institut de Psychiatrie et Neurosciences de Paris (France)
Journal: Nature genetics, volume 58, issue 7, pages 1559-1572
Dates: received 4 March 2025; accepted 27 May 2026; published online 22 June 2026; in print 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.1038/s41588-026-02646-3 · PMID 42332269 · PMCID PMC13364706 · OpenAlex W7165531236
Open access: hybrid, a free copy (OpenAlex)
Status: code verified
Categories: genetics / omics (modality), human (organism), schizophrenia / psychosis (population), cellular / molecular (subfield)
Methods: Statistics, Smoothing, state filtering, decompositions, Machine learning, Preprocessing, Connectivity
Keywords: Schizophrenia, Gene expression profiling
MeSH: Genetic Predisposition to Disease*, Genome-Wide Association Study*, Quantitative Trait Loci*, Schizophrenia*, Transcriptome*, Brain, Gene Expression Profiling, Gene Expression Regulation, Gene Regulatory Networks, Genotype, Humans, Models, Genetic, Phenotype, Polymorphism, Single Nucleotide (* major topic)
Topic: Genetic Associations and Epidemiology (Genetics, Biochemistry, Genetics and Molecular Biology), according to OpenAlex
Citations: cited by 1 paper (Europe PMC); 122 references in the paper

Abstract

Most genetic variants associated with complex heritability phenotypes lie in non-coding regions and are thought to influence disease risk by regulating gene expression. However, most transcriptome-wide association approaches primarily model local (cis) genetic effects, leaving much of gene regulation unexplained. Here, we show that incorporating distal (trans) regulatory effects improves the prediction of gene expression and the identification of disease-associated genes. Using RNA sequencing data from six human post-mortem brain regions, we developed INGENE and MODULE, two models capturing the combined influence of candidate trans-acting variants within gene coexpression networks. Integrating these models with conventional cis-based predictors improved gene expression imputation (maximum likelihood estimation, α = 0.05) for 18,744 genes across regions. Applying this framework to Psychiatric Genomics Consortium wave 3 genotypes identified 766 genes associated with schizophrenia (PFDR < 0.01), including 641 not previously reported by transcriptome-wide analyses. These findings highlight the contribution of distal regulatory mechanisms and gene network interactions to schizophrenia risk.

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 18 matches between paragraphs and lines of code.

Zenodo 14959416

License: MIT
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Size: 2 files
Software Heritage: not checked
Found in: “Code availability”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Tools: tidyverse (63 files), limma (45 files), data.table (35 files), broom (4 files), glmnet (4 files), caret (2 files), metafor (1 file), pheatmap (1 file)
Availability: 1 check, the latest on 27 September 2026: the link answers (HTTP 200)
  • 27 September 2026: the link answers (HTTP 200)
91 files
At the source:

fabiana1rossi/coTWAS

License: MIT
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Commit: 088fed14499626694aec303f6924164674c54a3a, 22 June 2026
Languages: R (68), Perl (5), Python (5), Shell (2)
Size: 85 files, 80 scripts
Software Heritage: not archived
Found in: “Code availability”
Holds: README, license file, CITATION.cff
Not found: environment file, tests, continuous integration, documentation
Tools: tidyverse (56 files), limma (40 files), data.table (32 files), broom (4 files), glmnet (3 files), caret (2 files), metafor (1 file), pheatmap (1 file)
Availability: 1 check, the latest on 27 September 2026: the link answers
  • 27 September 2026: the link answers
82 files

hakyimlab/MetaXcan

License: MIT
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Commit: e069063a10539fe92adadb645fc667a40c2cf885, 8 September 2026
Languages: Python (118), R (2), Shell (2)
Size: 318 files, 122 scripts
Software Heritage: not archived
Found in: “Code availability”
Holds: README, license file, environment (software/conda_env.yaml, software/requirements.txt, software/setup.cfg, software/setup.py), tests, documentation, 1 notebook
Not found: CITATION.cff, continuous integration
Tools: NumPy (52 files), pandas (40 files), SciPy (7 files), h5py (4 files), statsmodels (4 files)
Availability: 1 check, the latest on 27 September 2026: the link answers
  • 27 September 2026: the link answers
124 files

roussoslab/epixcan

License: none: the authors keep all their rights
State: the link answers, verified on 27 September 2026
Evidence: files inventoried
Commit: 830b76994fc446836ec4f31a4314fd6f1999de72, 1 March 2019
Languages: R (6), Shell (2)
Size: 15 files, 8 scripts
Software Heritage: archived
Found in: “Code availability”
Holds: README
Not found: license file, CITATION.cff, environment file, tests, continuous integration, documentation
Tools: glmnet (2 files), reshape2 (1 file), tidyverse (1 file)
Availability: 1 check, the latest on 27 September 2026: the link answers
  • 27 September 2026: the link answers
9 files

Code availability

Custom code developed for the coTWAS analysis pipeline is publicly available at Zenodo (10.5281/zenodo.14959416)122. The actively maintained version is hosted on GitHub (https://github.com/fabiana1rossi/coTWAS). This study also used publicly available software, including MetaXcan and PrediXcan (https://github.com/hakyimlab/MetaXcan) and EpiXcan (https://bitbucket.org/roussoslab/epixcan/src/master). A complete list of software packages, tools and resources is provided in Supplementary Table 9.

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:

  • 4 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 301 scripts, each with its path and the digest of its content;
  • 18 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

Data availability

All data supporting the conclusions of this study are available within the article and its Supplementary Information. LIBD post-mortem RNA-seq data from the BrainSeq Phase I–III studies for caudate nucleus, DLPFC and hippocampus are available through the Database of Genotypes and Phenotypes (dbGaP) and Globus collections (caudate nucleus, phs003495.v1.p1 (https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs003495.v1.p1), https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs003495.v1.p1; DLPFC, jhpce#bsp2-dlpfc, http://research.libd.org/globus/jhpce_bsp2-dlpfc/index.html; hippocampus, jhpce#bsp2-hippo, http://research.libd.org/globus/jhpce_bsp2-hippo/index.html). LIBD genotype data are available through dbGaP under accession phs000979.v3.p2 (https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs000979.v3.p2) (https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs000979.v3.p2). RNA-seq data for amygdala and sACC from the BipSeq study are available through the PsychENCODE Consortium through Synapse (syn5844980) and are managed by the National Institute of Mental Health Repository and Genomics Resource. Raw and processed data for DLPFC, amygdala and dACC samples from the Department of Veterans Affairs Posttraumatic Stress Disorder study are available upon request through the PTSD Brain Bank Resource Request process (https://www.research.va.gov/programs/tissue_banking/ptsd/default.cfm). GTEx post-mortem processed RNA-seq data are publicly available through the GTEx Portal (release v.8). Individual genotype data are available with controlled access through dbGaP under study accession phs000424.v8.p2 (https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs000424.v8.p2). CMC MSSM-PENN-Pitt RNA-seq data were obtained upon request through Synapse (DLPFC release 3.0, syn18097439; ACC release 6.0, syn29442240). Corresponding genotype data were accessed at https://www.synapse.org/Synapse:syn18097441. PGC3 individual-level phenotype and genotype data were obtained upon request and are subject to controlled access. Access details can be found at https://pgc.unc.edu/for-researchers/data-access-committee/data-access-information. Researchers must apply for access and comply with the data use agreement. The GWAS summary statistics are publicly available from the PGC for SCZ, bipolar disorder and major depressive disorder through Figshare repositories. GTEx cis-eQTLs data for 59 tissues are publicly available at https://gtexportal.org/home/downloads/adult-gtex/qtl. The study also used previously published WGCNA coexpression networks as detailed in the article and in Supplementary Table 9. Coexpression networks are also provided as Supplementary Data 1 to facilitate reproducibility. Gene expression prediction models and analysis outputs generated in this study are available in the Zenodo repository associated with this work (10.5281/zenodo.14959416)122. These include prediction models trained in the LIBD dataset (MODULE, INGENE, CIS and EpiXcan) across six brain regions, combined cis–trans prediction models validated in GTEx and coTWAS association results, including cross-validation outputs.

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 2, 28 September 2026

  • Publisher: n/a → Nature Portfolio

Version 1, 27 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 79 authors, 2 keywords, 14 MeSH terms, 117 references.

Cite

This paper

Rossi, F., Sportelli, L., Kikidis, G. C., Grassi, G., Di Camillo, F., Bertolino, A., Blasi, G., Borcuk, C. J., Fusco, D., Hyde, T. M., Kleinman, J. E., Marnetto, D., Pellegrini, S., Rampino, A., Vitiello, B., Ripke, S., Braun, A., Kraft, J., Belangero, S. I., . . . Pergola, G. (2026). Co-expression-based models improve eQTL predictions for transcriptome-wide association studies and highlight new schizophrenia-associated genes. Nature genetics, 58(7), 1559-1572. https://doi.org/10.1038/s41588-026-02646-3

BibTeX

@article{rossi2026co,
author = {Rossi, Fabiana and Sportelli, Leonardo and Kikidis, Gianluca C and Grassi, Giulia and Di Camillo, Fabio and Bertolino, Alessandro and Blasi, Giuseppe and Borcuk, Christopher J and Fusco, Daniela and Hyde, Thomas M and Kleinman, Joel E and Marnetto, Davide and Pellegrini, Silvia and Rampino, Antonio and Vitiello, Benedetto and Ripke, Stephan and Braun, Alice and Kraft, Julia and Belangero, Sintia Iole and Menezes, Paulo R and Arango, Celso and Walters, James T R and O’Donovan, Michael C and Owen, Michael J and Braff, David and Corvin, Aiden and Morris, Derek W and Domenici, Enrico and van Os, Jim and Atbaşoğlu, Esref and Saka, Meram C and Di Forti, Marta and Baune, Bernhard T and Pato, Carlos N and McQuillin, Andrew and Golimbet, Vera and Kondratyev, Nikolay and Escott-Price, Valentina and Gareeva, Anna and Khusnutdinova, Elza and Cervilla, Jorge A and Rivera, Margarita and Campion, Dominique and Laurent-Levinson, Claudine and Serretti, Alessandro and Andreassen, Ole A and St Clair, David and Lencz, Todd and Malhotra, Anil K and McCarthy, Nina S and Mowry, Bryan J and Rujescu, Dan and Giegling, Ina and Hartmann, Annette M and Konte, Bettina and Nöthen, Markus M and Rietschel, Marcella and Kirov, George and Sullivan, Patrick F and Petryshen, Tracey L and Werge, Thomas and McIntosh, Andrew M and Esko, Tõnu and Jönsson, Erik G and Ehrenreich, Hannelore and Riley, Brien P and Levinson, Douglas F and Buxbaum, Joseph D and Bramon, Elvira and Hultman, Christina M and Ophoff, Roel A and Adolfsson, Rolf and Stahl, Eli A and Guloksuz, Sinan and Rutten, Bart P F and Del-Ben, Cristina M and Thibaut, Florence and Weinberger, Daniel R and Pergola, Giulio},
title = {{Co-expression-based models improve eQTL predictions for transcriptome-wide association studies and highlight new schizophrenia-associated genes}},
journal = {Nature genetics},
year = {2026},
month = jun,
volume = {58},
number = {7},
pages = {1559--1572},
publisher = {Nature Portfolio},
issn = {1061-4036},
doi = {10.1038/s41588-026-02646-3},
url = {https://doi.org/10.1038/s41588-026-02646-3},
pmid = {42332269},
pmcid = {PMC13364706}
}

RIS

TY - JOUR
AU - Rossi, Fabiana
AU - Sportelli, Leonardo
AU - Kikidis, Gianluca C
AU - Grassi, Giulia
AU - Di Camillo, Fabio
AU - Bertolino, Alessandro
AU - Blasi, Giuseppe
AU - Borcuk, Christopher J
AU - Fusco, Daniela
AU - Hyde, Thomas M
AU - Kleinman, Joel E
AU - Marnetto, Davide
AU - Pellegrini, Silvia
AU - Rampino, Antonio
AU - Vitiello, Benedetto
AU - Ripke, Stephan
AU - Braun, Alice
AU - Kraft, Julia
AU - Belangero, Sintia Iole
AU - Menezes, Paulo R
AU - Arango, Celso
AU - Walters, James T R
AU - O’Donovan, Michael C
AU - Owen, Michael J
AU - Braff, David
AU - Corvin, Aiden
AU - Morris, Derek W
AU - Domenici, Enrico
AU - van Os, Jim
AU - Atbaşoğlu, Esref
AU - Saka, Meram C
AU - Di Forti, Marta
AU - Baune, Bernhard T
AU - Pato, Carlos N
AU - McQuillin, Andrew
AU - Golimbet, Vera
AU - Kondratyev, Nikolay
AU - Escott-Price, Valentina
AU - Gareeva, Anna
AU - Khusnutdinova, Elza
AU - Cervilla, Jorge A
AU - Rivera, Margarita
AU - Campion, Dominique
AU - Laurent-Levinson, Claudine
AU - Serretti, Alessandro
AU - Andreassen, Ole A
AU - St Clair, David
AU - Lencz, Todd
AU - Malhotra, Anil K
AU - McCarthy, Nina S
AU - Mowry, Bryan J
AU - Rujescu, Dan
AU - Giegling, Ina
AU - Hartmann, Annette M
AU - Konte, Bettina
AU - Nöthen, Markus M
AU - Rietschel, Marcella
AU - Kirov, George
AU - Sullivan, Patrick F
AU - Petryshen, Tracey L
AU - Werge, Thomas
AU - McIntosh, Andrew M
AU - Esko, Tõnu
AU - Jönsson, Erik G
AU - Ehrenreich, Hannelore
AU - Riley, Brien P
AU - Levinson, Douglas F
AU - Buxbaum, Joseph D
AU - Bramon, Elvira
AU - Hultman, Christina M
AU - Ophoff, Roel A
AU - Adolfsson, Rolf
AU - Stahl, Eli A
AU - Guloksuz, Sinan
AU - Rutten, Bart P F
AU - Del-Ben, Cristina M
AU - Thibaut, Florence
AU - Weinberger, Daniel R
AU - Pergola, Giulio
TI - Co-expression-based models improve eQTL predictions for transcriptome-wide association studies and highlight new schizophrenia-associated genes
T2 - Nature genetics
J2 - Nat Genet
PY - 2026
DA - 2026/06/22
VL - 58
IS - 7
SP - 1559
EP - 1572
SN - 1061-4036
PB - Nature Portfolio
DO - 10.1038/s41588-026-02646-3
UR - https://doi.org/10.1038/s41588-026-02646-3
LA - en
ER -

CSL-JSON

{
"id": "10.1038/s41588-026-02646-3",
"type": "article-journal",
"title": "Co-expression-based models improve eQTL predictions for transcriptome-wide association studies and highlight new schizophrenia-associated genes",
"container-title": "Nature genetics",
"author": [
{
"family": "Rossi",
"given": "Fabiana"
},
{
"family": "Sportelli",
"given": "Leonardo"
},
{
"family": "Kikidis",
"given": "Gianluca C"
},
{
"family": "Grassi",
"given": "Giulia"
},
{
"family": "Di Camillo",
"given": "Fabio"
},
{
"family": "Bertolino",
"given": "Alessandro"
},
{
"family": "Blasi",
"given": "Giuseppe"
},
{
"family": "Borcuk",
"given": "Christopher J"
},
{
"family": "Fusco",
"given": "Daniela"
},
{
"family": "Hyde",
"given": "Thomas M"
},
{
"family": "Kleinman",
"given": "Joel E"
},
{
"family": "Marnetto",
"given": "Davide"
},
{
"family": "Pellegrini",
"given": "Silvia"
},
{
"family": "Rampino",
"given": "Antonio"
},
{
"family": "Vitiello",
"given": "Benedetto"
},
{
"family": "Ripke",
"given": "Stephan"
},
{
"family": "Braun",
"given": "Alice"
},
{
"family": "Kraft",
"given": "Julia"
},
{
"family": "Belangero",
"given": "Sintia Iole"
},
{
"family": "Menezes",
"given": "Paulo R"
},
{
"family": "Arango",
"given": "Celso"
},
{
"family": "Walters",
"given": "James T R"
},
{
"family": "O’Donovan",
"given": "Michael C"
},
{
"family": "Owen",
"given": "Michael J"
},
{
"family": "Braff",
"given": "David"
},
{
"family": "Corvin",
"given": "Aiden"
},
{
"family": "Morris",
"given": "Derek W"
},
{
"family": "Domenici",
"given": "Enrico"
},
{
"family": "van Os",
"given": "Jim"
},
{
"family": "Atbaşoğlu",
"given": "Esref"
},
{
"family": "Saka",
"given": "Meram C"
},
{
"family": "Di Forti",
"given": "Marta"
},
{
"family": "Baune",
"given": "Bernhard T"
},
{
"family": "Pato",
"given": "Carlos N"
},
{
"family": "McQuillin",
"given": "Andrew"
},
{
"family": "Golimbet",
"given": "Vera"
},
{
"family": "Kondratyev",
"given": "Nikolay"
},
{
"family": "Escott-Price",
"given": "Valentina"
},
{
"family": "Gareeva",
"given": "Anna"
},
{
"family": "Khusnutdinova",
"given": "Elza"
},
{
"family": "Cervilla",
"given": "Jorge A"
},
{
"family": "Rivera",
"given": "Margarita"
},
{
"family": "Campion",
"given": "Dominique"
},
{
"family": "Laurent-Levinson",
"given": "Claudine"
},
{
"family": "Serretti",
"given": "Alessandro"
},
{
"family": "Andreassen",
"given": "Ole A"
},
{
"family": "St Clair",
"given": "David"
},
{
"family": "Lencz",
"given": "Todd"
},
{
"family": "Malhotra",
"given": "Anil K"
},
{
"family": "McCarthy",
"given": "Nina S"
},
{
"family": "Mowry",
"given": "Bryan J"
},
{
"family": "Rujescu",
"given": "Dan"
},
{
"family": "Giegling",
"given": "Ina"
},
{
"family": "Hartmann",
"given": "Annette M"
},
{
"family": "Konte",
"given": "Bettina"
},
{
"family": "Nöthen",
"given": "Markus M"
},
{
"family": "Rietschel",
"given": "Marcella"
},
{
"family": "Kirov",
"given": "George"
},
{
"family": "Sullivan",
"given": "Patrick F"
},
{
"family": "Petryshen",
"given": "Tracey L"
},
{
"family": "Werge",
"given": "Thomas"
},
{
"family": "McIntosh",
"given": "Andrew M"
},
{
"family": "Esko",
"given": "Tõnu"
},
{
"family": "Jönsson",
"given": "Erik G"
},
{
"family": "Ehrenreich",
"given": "Hannelore"
},
{
"family": "Riley",
"given": "Brien P"
},
{
"family": "Levinson",
"given": "Douglas F"
},
{
"family": "Buxbaum",
"given": "Joseph D"
},
{
"family": "Bramon",
"given": "Elvira"
},
{
"family": "Hultman",
"given": "Christina M"
},
{
"family": "Ophoff",
"given": "Roel A"
},
{
"family": "Adolfsson",
"given": "Rolf"
},
{
"family": "Stahl",
"given": "Eli A"
},
{
"family": "Guloksuz",
"given": "Sinan"
},
{
"family": "Rutten",
"given": "Bart P F"
},
{
"family": "Del-Ben",
"given": "Cristina M"
},
{
"family": "Thibaut",
"given": "Florence"
},
{
"family": "Weinberger",
"given": "Daniel R"
},
{
"family": "Pergola",
"given": "Giulio"
}
],
"container-title-short": "Nat Genet",
"volume": "58",
"issue": "7",
"page": "1559-1572",
"DOI": "10.1038/s41588-026-02646-3",
"PMID": "42332269",
"PMCID": "PMC13364706",
"ISSN": "1061-4036",
"publisher": "Nature Portfolio",
"URL": "https://doi.org/10.1038/s41588-026-02646-3",
"language": "en",
"issued": {
"date-parts": [
[
2026,
6,
22
]
]
}
}

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-75470-2 [code]
Analysis of gene co-expression connectivity dynamics implicates aberrant neuron-oligodendroglia interactions in schizophrenia.
Journal: Nature communications
In common: schizophrenia / psychosis, genetics / omics, 18 references, 3 authors
[2] doi:10.1038/s41467-026-71542-5 [code]
Astrocyte fatty acid metabolism as a driver of risk for major depressive disorder.
Journal: Nature communications
In common: limma, reshape2, data.table, 1 other tool, genetics / omics, cellular / molecular, 15 references
[3] doi:10.1038/s41380-026-03571-x [code]
Convergent coexpression reveals shared biological mechanisms underlying common and rare variant risk in six neuropsychiatric disorders.
Journal: Molecular psychiatry
In common: reshape2, h5py, data.table, 5 other tools, genetics / omics, cellular / molecular, 11 references
[4] doi:10.1038/s41467-026-71682-8 [code]
GWAS meta-analysis of cerebrospinal fluid Alzheimer's biomarkers reveals loci regulating lipids, brain volume and autophagy.
Journal: Nature communications
In common: reshape2, data.table, tidyverse, 3 other tools, genetics / omics, 2 references, 2 authors
[5] doi:10.1038/s41562-026-02476-7 [code]
Genome-wide meta-analysis of quantitatively measured generalized anxiety symptoms in individuals of European ancestry.
Journal: Nature human behaviour
In common: data.table, tidyverse, genetics / omics, 4 references, 2 authors
[6] doi:10.1038/s41467-026-75193-4 [code]
Multi-ancestry gene expression models amplify transcriptome-wide association study discovery and validation.
Journal: Nature communications
In common: pheatmap, reshape2, h5py, 6 other tools, genetics / omics, cellular / molecular, 6 references
[7] doi:10.1038/s41386-026-02406-1 [code]
Functional genomic profiling of schizophrenia-associated genes reveals key microglial regulators.
Journal: Neuropsychopharmacology : official publication of the American College of Neuropsychopharmacology
In common: limma, broom, pheatmap, 2 other tools, schizophrenia / psychosis, genetics / omics, cellular / molecular, 7 references
[8] doi:10.1038/s41467-026-71281-7 [code]
Downregulated transcription in chromosomal domains of midbrain dopamine neurons linked to schizophrenia.
Journal: Nature communications
In common: limma, reshape2, data.table, 1 other tool, schizophrenia / psychosis, cellular / molecular, 8 references
[9] doi:10.1038/s42003-026-10957-8 [code]
Brain defence by the extracellular matrix protein Cochlin.
Journal: Communications biology
In common: glmnet, caret, limma, 9 other tools, cellular / molecular
[10] doi:10.1038/s41562-026-02486-5 [code]
Genome-wide association studies of infant and toddler temperament in European and multi-ancestry populations.
Journal: Nature human behaviour
In common: metafor, reshape2, data.table, 4 other tools, genetics / omics, 6 references

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.

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.