OSCR

Variants in the proteasome regulator PSMF1 cause a phenotypic spectrum from parkinsonism to perinatal lethality.

Code ↔ Paper

9 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 9 matches
  1. [1] § Methods › Genetic studies › Frequency, pathogenicity prediction and computational analysis of PSMF1 variants ↔ File/Variant_anno_Exome_v9_T1.R, lines 249–307 · score 0.61 · gnomAD, PROVEAN, PolyPhen2, SIFT4G, exome, MutationTaster
  2. [2] § Methods › Genetic studies › Frequency, pathogenicity prediction and computational analysis of PSMF1 variants ↔ File/Variant_anno_Exome_v9_T2.R, lines 259–301 · score 0.56 · gnomAD, PROVEAN, PolyPhen2, SIFT4G, MutationTaster, CADD
  3. [3] § Methods › RNA studies › RNA isolation and sequencing ↔ File/Variant_anno_Exome_v9_T1.R, lines 95–154 · score 0.56 · splice sites, structural variants, intron, cDNA, exon, transcriptomics
  4. [4] § Methods › RNA studies › RNA isolation and sequencing ↔ File/Variant_anno_Exome_v9_T2.R, lines 35–93 · score 0.56 · splice sites, structural variants, intron, cDNA, exon, transcriptomics
  5. [5] § Methods › Genetic studies › Exome and genome sequencing and analysis ↔ File/Variant_anno_Exome_v9_T1.R, lines 95–154 · score 0.53 · splice site, acceptor, intron, donor, cDNA, Exon
  6. [6] § Results › Validation and functional analysis of 14 missense and loss-of-function variants in PSMF1 ↔ File/Variant_anno_Exome_v9_T1.R, lines 249–307 · score 0.53 · CADD Phred, PROVEAN, PolyPhen2, SIFT4G, MutationTaster, predicted
  7. [7] § Methods › Genetic studies › Exome and genome sequencing and analysis ↔ File/Variant_anno_Exome_v9_T2.R, lines 35–93 · score 0.52 · splice site, acceptor, intron, donor, cDNA, Exon
  8. [8] § Methods › RNA studies › Minigene splicing assay ↔ File/Variant_anno_Exome_v9_T2p.R, lines 35–93 · score 0.51 · splice acceptor, donor, cDNA, exon, Empty, transcribed
  9. [9] § Results › Validation and functional analysis of 14 missense and loss-of-function variants in PSMF1 ↔ File/Variant_anno_Exome_v9_T2.R, lines 259–301 · score 0.51 · CADD Phred, PROVEAN, PolyPhen2, SIFT4G, MutationTaster, predicted

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 · 589 lines · 29 KB · GPL-3.0 · 4 matches

  1. Variant_anno_Exome_V9_T1 = function(){
  2. #load library
  3. library(xlsx)
  4. library(myvariant)
  5. library(plyr)
  6. library(stringr)
  7. library(rtracklayer)
  8. library(kableExtra)
  9. library(dplyr)
  10. library(tidyverse)
  11. #load file
  12. Gene_Panel <- read.csv(file = "File/Gene_Panel.csv", header = TRUE, sep = ",")
  13. #Create output file
  14. outputfilename <- paste0("Analyzed_", Run, "/",
  15. paste(paste("variant_data_T1", Run, sep="_"), "xlsx", sep="."))
  16. outputfile <- createWorkbook(type = "xlsx")
  17. #Info manip
  18. #Dans .Rmd
  19. #Import VCF and validate format
  20. geneVCF <- read.csv(paste0("Analyzed_", Run, "/", "Gene_Tiers1_", Run, ".csv"))
  21. #Valide format
  22. valide <- length(geneVCF$X)
  23. if(length(valide) !=0){
  24. cat("Load position in hg19", "\n")
  25. inputhgvs <- geneVCF[,"genomic"]
  26. #HGVS annotation
  27. cat("Retrieve HGVS info", "\n")
  28. inputvariant <- getVariants(inputhgvs, fields = c("snpeff.ann"))
  29. inputvariant <- as_tibble(inputvariant)
  30. Nrow <- length(inputvariant$query)
  31. colhead <- c("genomic", "effect", "feature_id", "feature_type", "gene_id", "genename",
  32. "hgvs_c", "hgvs_p", "putative_impact", "rank", "total", "transcript_biotype",
  33. "distance_to_feature", "cdna.length", "cdna.position", "cds.length", "cds.position",
  34. "protein.length", "protein.position")
  35. EmptyDF <- data.frame(matrix("", ncol = 18, nrow = 0))
  36. colnames(EmptyDF) <- colhead[-1]
  37. EmptyDF2 <- data.frame(matrix("", ncol = 19, nrow = 0))
  38. colnames(EmptyDF2) <- colhead
  39. if(dim(inputvariant)[2] > 15){
  40. inputvariant <- inputvariant %>%
  41. dplyr::rename(genomic = query, effect = snpeff.ann.effect, feature_id = snpeff.ann.feature_id,
  42. feature_type = snpeff.ann.feature_type, gene_id = snpeff.ann.gene_id,
  43. genename = snpeff.ann.genename, hgvs_c = snpeff.ann.hgvs_c,
  44. hgvs_p = snpeff.ann.hgvs_p, putative_impact = snpeff.ann.putative_impact,
  45. rank = snpeff.ann.rank, total = snpeff.ann.total,
  46. transcript_biotype = snpeff.ann.transcript_biotype,
  47. cdna.length = snpeff.ann.cdna.length, cdna.position = snpeff.ann.cdna.position,
  48. cds.length = snpeff.ann.cds.length, cds.position = snpeff.ann.cds.position,
  49. protein.length = snpeff.ann.protein.length,
  50. protein.position = snpeff.ann.protein.position)
  51. EmptyDF2 <- dplyr::bind_rows(EmptyDF2, inputvariant)
  52. }else{
  53. for (i in 1:Nrow){assign(paste("inputvariant",i, sep="_"),
  54. deframe(inputvariant[i, "snpeff.ann"]))
  55. HGVS <- get(paste("inputvariant",i, sep="_"))
  56. HGVS <- as.data.frame(HGVS[[1]])
  57. if(length(HGVS) == 0){
  58. HGVS <- data.frame(matrix("", ncol = 1, nrow = 1))
  59. colnames(HGVS) <- c("genomic")
  60. HGVS[,"genomic"] <- deframe(inputvariant[i, "query"])
  61. }else{
  62. HGVS[,"genomic"] <- deframe(inputvariant[i, "query"])
  63. }
  64. if(ncol(HGVS) == 1){
  65. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  66. i = i+1
  67. }else{
  68. if(is.data.frame(HGVS) == TRUE){
  69. L <- list(EmptyDF, HGVS)
  70. EmptyDF <- do.call(rbind.fill, L)
  71. Intronic <- c("intron_variant", "downstream_gene_variant",
  72. "non_coding_transcript_exon_variant", "upstream_gene_variant",
  73. "intergenic_variant", "3_prime_UTR_variant", "5_prime_UTR_variant",
  74. "UTR_variant", "structural_variant", "feature_variant", "splice_donor_variant",
  75. "splice_acceptor_variant", "splice_site_variant", "feature_truncation" )
  76. Grep <- grep(paste(Intronic, collapse = "|") , HGVS$effect)
  77. if(length(Grep) == 0){
  78. HGVS <- HGVS[order(as.numeric(HGVS$protein.length), decreasing = TRUE),]
  79. HGVS <- HGVS[1,]
  80. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  81. i = i+1
  82. }else{
  83. if(length(Grep) == length(HGVS$effect)){
  84. HGVS <- HGVS[1,]
  85. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  86. }else{
  87. HGVS <- dplyr::filter(HGVS, !effect %in% Intronic)
  88. HGVS <- HGVS[order(as.numeric(HGVS$protein.length), decreasing = TRUE),]
  89. HGVS <- HGVS[1,]
  90. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  91. }
  92. }
  93. }else{
  94. V[i] <- HGVS$genename
  95. if(length(grep("intergenic_region", HGVS)) == 0){
  96. if(length(HGVS) == 15){
  97. HGVS_cdna_length <- as.numeric(HGVS$cdna[1])
  98. HGVS_cdna_position <- as.numeric(HGVS$cdna[2])
  99. HGVS_cds_length <- as.numeric(HGVS$cds[1])
  100. HGVS_cds_position <- as.numeric(HGVS$cds[2])
  101. HGVS_protein_length <- as.numeric(HGVS$protein[1])
  102. HGVS_protein_position <- as.numeric(HGVS$protein[2])
  103. HGVS <- c(HGVS$query, HGVS$effect, HGVS$feature_id, HGVS$feature_type, HGVS$gene_id, HGVS$genename,
  104. HGVS$hgvs_c, HGVS$hgvs_p, HGVS$putative_impact, HGVS$rank, HGVS$total,
  105. HGVS$transcript_biotype, "NULL", HGVS_cdna_length, HGVS_cdna_position, HGVS_cds_length,
  106. HGVS_cds_position, HGVS_protein_length, HGVS_protein_position)
  107. HGVS <- matrix(HGVS, 1, length(colhead))
  108. colnames(HGVS) <- colhead
  109. HGVS <- data.frame(HGVS)
  110. L <- list(EmptyDF, HGVS)
  111. EmptyDF <- do.call(rbind.fill, L)
  112. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  113. i = i+1
  114. }else{
  115. HGVS <- c(HGVS$query, HGVS$effect, HGVS$feature_id, HGVS$feature_type, HGVS$gene_id, HGVS$genename,
  116. HGVS$hgvs_c, "NULL", HGVS$putative_impact, HGVS$rank, HGVS$total,
  117. HGVS$transcript_biotype)
  118. HGVS <- matrix(HGVS, 1, length(colhead[-c(13:19)]))
  119. colnames(HGVS) <- colhead[-c(13:19)]
  120. HGVS <- data.frame(HGVS)
  121. L <- list(EmptyDF, HGVS)
  122. EmptyDF <- do.call(rbind.fill, L)
  123. EmptyDF2 <- dplyr::full_join(EmptyDF2, HGVS)
  124. i=i+1
  125. }
  126. }else{
  127. HGVS <- c(HGVS$effect, HGVS$feature_id, HGVS$feature_type, HGVS$gene_id, HGVS$genename,
  128. HGVS$hgvs_c, "NULL", HGVS$putative_impact, "NULL", "NULL", "NULL")
  129. HGVS <- matrix(HGVS, 1, length(colhead[-c(13:19)]))
  130. colnames(HGVS) <- colhead[-c(13:19)]
  131. HGVS <- data.frame(HGVS)
  132. L <- list(EmptyDF, HGVS)
  133. EmptyDF <- do.call(rbind.fill, L)
  134. EmptyDF2 <- dplyr::full_join(x = EmptyDF2, y = HGVS)
  135. i = i+1
  136. }
  137. }
  138. }
  139. }
  140. }
  141. HGVS_bilan <- EmptyDF2 %>%
  142. dplyr::select(c(genomic, feature_id, effect, gene_id, hgvs_c, hgvs_p))
  143. Bilan <- dplyr::full_join(x = geneVCF, HGVS_bilan, by = "genomic", keep = FALSE) %>%
  144. dplyr::select(Indiv, genomic, Zygosity, feature_id, effect.x,
  145. geneName, HGVSc, HGVSp)
  146. # Extraire allel count ExAC frequence gnomAD
  147. cat("Retrieve GnomAD data", "\n")
  148. inputvariant_ExAC <- getVariants(inputhgvs,
  149. fields = c("dbnsfp.genename",
  150. "gnomad_exome.af.af", "gnomad_exome.ac.ac", "gnomad_exome.hom.hom",
  151. "gnomad_exome.hom.hom_male", "gnomad_exome.an.an",
  152. "gnomad_genome.af.af", "gnomad_genome.ac.ac","gnomad_genome.hom.hom",
  153. "gnomad_genome.hom.hom_male","gnomad_genome.an.an",
  154. "gnomad_exome.af.af_afr", "gnomad_exome.ac.ac_afr", "gnomad_exome.hom.hom_afr",
  155. "gnomad_exome.hom.hom_male_afr", "gnomad_exome.an.an_afr",
  156. "gnomad_genome.af.af_afr", "gnomad_genome.ac.ac_afr","gnomad_genome.hom.hom_afr",
  157. "gnomad_genome.hom.hom_male_afr","gnomad_genome.an.an_afr",
  158. "gnomad_exome.af.af_nfe", "gnomad_exome.ac.ac_nfe", "gnomad_exome.hom.hom_nfe",
  159. "gnomad_exome.hom.hom_male_nfe", "gnomad_exome.an.an_nfe",
  160. "gnomad_genome.af.af_nfe", "gnomad_genome.ac.ac_nfe","gnomad_genome.hom.hom_nfe",
  161. "gnomad_genome.hom.hom_male_nfe","gnomad_genome.an.an_nfe",
  162. "wellderly.genotypes"))
  163. #Fields to keep
  164. Fields_GnomAD <- c("query","dbnsfp.genename",
  165. "gnomad_exome.af.af", "gnomad_exome.ac.ac", "gnomad_exome.hom.hom",
  166. "gnomad_exome.hom.hom_male", "gnomad_exome.an.an",
  167. "gnomad_genome.af.af", "gnomad_genome.ac.ac","gnomad_genome.hom.hom",
  168. "gnomad_genome.hom.hom_male","gnomad_genome.an.an",
  169. "gnomad_exome.af.af_afr", "gnomad_exome.ac.ac_afr", "gnomad_exome.hom.hom_afr",
  170. "gnomad_exome.hom.hom_male_afr", "gnomad_exome.an.an_afr",
  171. "gnomad_genome.af.af_afr", "gnomad_genome.ac.ac_afr","gnomad_genome.hom.hom_afr",
  172. "gnomad_genome.hom.hom_male_afr","gnomad_genome.an.an_afr",
  173. "gnomad_exome.af.af_nfe", "gnomad_exome.ac.ac_nfe", "gnomad_exome.hom.hom_nfe",
  174. "gnomad_exome.hom.hom_male_nfe", "gnomad_exome.an.an_nfe",
  175. "gnomad_genome.af.af_nfe", "gnomad_genome.ac.ac_nfe","gnomad_genome.hom.hom_nfe",
  176. "gnomad_genome.hom.hom_male_nfe","gnomad_genome.an.an_nfe",
  177. "wellderly.genotypes")
  178. #Ajoute les colonnes absente lors de l'extraction
  179. for (i in Fields_GnomAD) {
  180. if (length(grep(i, colnames(inputvariant_ExAC))) != 0){
  181. inputvariant_ExAC <- inputvariant_ExAC
  182. }else{
  183. inputvariant_ExAC[,i] <- rep("NA", nrow(inputvariant_ExAC))
  184. }
  185. }
  186. #Order column
  187. inputvariant_ExAC$gnomad_exome.ac.ac <- as.numeric(inputvariant_ExAC$gnomad_exome.ac.ac)
  188. inputvariant_ExAC$gnomad_exome.an.an <- as.numeric(inputvariant_ExAC$gnomad_exome.an.an)
  189. inputvariant_ExAC$gnomad_exome.hom.hom <- as.numeric(inputvariant_ExAC$gnomad_exome.hom.hom)
  190. inputvariant_ExAC$gnomad_genome.ac.ac <- as.numeric(inputvariant_ExAC$gnomad_genome.ac.ac)
  191. inputvariant_ExAC$gnomad_genome.an.an <- as.numeric(inputvariant_ExAC$gnomad_genome.an.an)
  192. inputvariant_ExAC$gnomad_genome.hom.hom <- as.numeric(inputvariant_ExAC$gnomad_genome.hom.hom)
  193. inputvariant_ExAC <- inputvariant_ExAC %>%
  194. as.data.frame() %>%
  195. dplyr::select(any_of(Fields_GnomAD)) %>%
  196. dplyr::mutate(GnomAD =
  197. dplyr::if_else(!is.na(gnomad_exome.an.an) & !is.na(gnomad_genome.an.an),
  198. paste(gnomad_exome.ac.ac + gnomad_genome.ac.ac,
  199. gnomad_exome.hom.hom + gnomad_genome.hom.hom,
  200. gnomad_exome.an.an + gnomad_genome.an.an, sep = "/"),
  201. dplyr::if_else(!is.na(gnomad_exome.an.an),
  202. paste(gnomad_exome.ac.ac, gnomad_exome.hom.hom,
  203. gnomad_exome.an.an, sep = "/"),
  204. dplyr::if_else(!is.na(gnomad_genome.ac.ac),
  205. paste(gnomad_genome.ac.ac, gnomad_genome.hom.hom,
  206. gnomad_genome.an.an, sep = "/"),"NA")))) %>%
  207. unique()
  208. #Cr? le bilan avec nom du g?ne hgvs querry et gnomAD
  209. Join_GnomAD <- dplyr::join_by(genomic == query)
  210. Bilan_GnomAD <- dplyr::full_join(HGVS_bilan, inputvariant_ExAC, by = Join_GnomAD)
  211. Bilan <- dplyr::full_join(Bilan, inputvariant_ExAC, by = Join_GnomAD) %>%
  212. dplyr::select(Indiv, genomic, Zygosity, feature_id, effect.x,
  213. geneName, HGVSc, HGVSp, GnomAD)
  214. #Cr? un bilan avec les variants non trouv?
  215. Not_found <- inputvariant_ExAC[which(inputvariant_ExAC$notfound == "TRUE"),1]
  216. #Pathogenicity score prediction
  217. cat("Retrieve pathoginicity score", "\n")
  218. inputvariant_patho <- getVariants(inputhgvs,
  219. fields = c("query", "notfound", "dbnsfp",
  220. "cadd.rawscore", "cadd.phred",
  221. "cadd.phast_cons.primate","cadd.phast_cons.mammalian",
  222. "cadd.phast_cons.vertebrate",
  223. "cadd.phylop.primate",
  224. "cadd.phylop.mammalian", "cadd.phylop.vertebrate"))
  225. Fields_score = c("query", "notfound", "dbnsfp.sift4g.pred", "dbnsfp.sift4g.score",
  226. "dbnsfp.polyphen2.hdiv.pred", "dbnsfp.polyphen2.hdiv.score", "dbnsfp.mutationtaster.pred", "dbnsfp.mutationtaster.score",
  227. "dbnsfp.mutationassessor.pred", "dbnsfp.mutationassessor.score", "dbnsfp.lrt.pred", "dbnsfp.lrt.score",
  228. "dbnsfp.eigen.raw_coding", "dbnsfp.eigen.phred_coding", "dbnsfp.metalr.pred", "dbnsfp.metalr.score",
  229. "cadd.rawscore", "cadd.phred", "dbnsfp.m.cap.pred", "dbnsfp.m.cap.score",
  230. "dbnsfp.mutpred.aa_change", "dbnsfp.mutpred.pred", "dbnsfp.mutpred.score","dbnsfp.revel.score","dbnsfp.revel.rankscore",
  231. "dbnsfp.provean.score", "dbnsfp.provean.pred","dbnsfp.vest4.score", "dbnsfp.vest4.rankscore",
  232. "dbnsfp.metasvm.score", "dbnsfp.metasvm.pred", "dbnsfp.primateai.score", "dbnsfp.primateai.pred",
  233. "dbnsfp.mpc.score", "dbnsfp.mpc.rankscore","dbnsfp.deogen2.score", "dbnsfp.deogen2.pred",
  234. "dbnsfp.clinpred.score", "dbnsfp.clinpred.pred", "dbnsfp.gerp...rs",
  235. "dbnsfp.gerp...rs_rankscore", "cadd.phast_cons.primate","cadd.phast_cons.mammalian",
  236. "cadd.phast_cons.vertebrate", "cadd.phylop.primate", "cadd.phylop.mammalian", "cadd.phylop.vertebrate")
  237. #Ajoute les colonnes absente lors de l'extraction
  238. for (i in Fields_score) {
  239. if (length(grep(i, colnames(inputvariant_patho))) != 0){
  240. inputvariant_patho <- inputvariant_patho
  241. }else{
  242. inputvariant_patho[,i] <- vector(length = nrow(inputvariant_patho))
  243. }
  244. }
  245. #Organize column
  246. inputvariant_patho <- inputvariant_patho <- inputvariant_patho %>%
  247. as.data.frame() %>%
  248. dplyr::select(any_of(Fields_score)) %>%
  249. unique()
  250. #Add hgvs
  251. Join_Patho <- dplyr::join_by(genomic == query)
  252. Bilan <- dplyr::full_join(Bilan, inputvariant_patho, by = Join_Patho) %>%
  253. dplyr::mutate(Pathogenicity = "")
  254. #Clinvar annotation
  255. cat("Retrieve clivar data", "\n")
  256. inputvariant_Clinvar <- getVariants(inputhgvs,
  257. fields = c("query", "notfound", "clinvar.rsid", "clinvar.rcv.accession",
  258. "clinvar.rcv.clinical_significance", "clinvar.rcv.last_evaluated",
  259. "clinvar.rcv.number_submitters", "clinvar.rcv.origin",
  260. "clinvar.rcv.preferred_name", "clinvar.rcv.review_status",
  261. "clinvar.rcv.conditions.name"))
  262. Fields_clinvar = c("query", "notfound", "clinvar.rsid", "clinvar.rcv")
  263. #Ajoute les colonnes absente lors de l'extraction
  264. for (i in Fields_clinvar) {
  265. if (length(grep(i, colnames(inputvariant_Clinvar))) != 0){
  266. inputvariant_Clinvar <- inputvariant_Clinvar
  267. }else{
  268. inputvariant_Clinvar[,i] <- vector(length = nrow(inputvariant_Clinvar))
  269. }
  270. }
  271. #Creat emptyDF and vector for if
  272. DFclinvar <- data.frame(matrix("", ncol = 9, nrow = 0)) #All transcript
  273. colnames(DFclinvar) <- c("accession", "clinical_significance", "conditions", "last_evaluated",
  274. "number_submitters", "origin", "preferred_name", "review_status", "conditions.name")
  275. DFclinvar$number_submitters <- as.integer(DFclinvar$number_submitters)
  276. DFclinvar2 <- data.frame(matrix("", ncol = 11, nrow = 0)) #Larger transript
  277. colnames(DFclinvar2) <- c("query","clinvar.rsid", "accession", "clinical_significance", "conditions", "last_evaluated",
  278. "number_submitters", "origin", "preferred_name", "review_status",
  279. "conditions.name")
  280. DFclinvar2$number_submitters <- as.integer(DFclinvar2$number_submitters)
  281. #Generer un tableau pour chaque variant
  282. if(dim(inputvariant_Clinvar)[2] >= 13){
  283. inputvariant_Clinvar <- as.data.frame(inputvariant_Clinvar)
  284. inputvariant_Clinvar$clinvar.rsid <- as.character(inputvariant_Clinvar$clinvar.rsid)
  285. DFclinvar2 <- dplyr::bind_rows(DFclinvar2, inputvariant_Clinvar)
  286. }else{
  287. for (i in 1:nrow(inputvariant_Clinvar)){assign(paste("inputvariant_clinvar",i, sep="_"),
  288. as.data.frame(inputvariant_Clinvar$clinvar.rcv[[i]]))
  289. Clinvar <- get(paste("inputvariant_clinvar",i, sep="_"))
  290. #Si le tableau est vide
  291. if(dim(Clinvar)[1] == 0){
  292. Clinvar <- as.data.frame(matrix("", ncol = 2, nrow = 1))
  293. colnames(Clinvar) <- c("query", "clinvar.rsid")
  294. Clinvar[,"query"] <- inputvariant_Clinvar$query[[i]]
  295. Clinvar[,"clinvar.rsid"] <- inputvariant_Clinvar$clinvar.rsid[[i]]
  296. DFclinvar2 <- dplyr::full_join(DFclinvar2, Clinvar)
  297. i = i+1
  298. }else{
  299. if(length(grep("clinvar._license", colnames(inputvariant_Clinvar))) == 0){
  300. Clinvar <- as.data.frame(matrix("", ncol = 2, nrow = 1))
  301. colnames(Clinvar) <- c("query", "clinvar.rsid")
  302. Clinvar[,"query"] <- inputvariant_Clinvar$query[[i]]
  303. Clinvar[,"clinvar.rsid"] <- inputvariant_Clinvar$clinvar.rsid[[i]]
  304. Clinvar[,"clinvar.rsid"] <- as.character(Clinvar[,"clinvar.rsid"])
  305. DFclinvar2 <- dplyr::full_join(DFclinvar2, Clinvar)
  306. i = i+1
  307. }else{
  308. #Est ce que le tableaux de resultats est un data frame
  309. if(is.data.frame(Clinvar) == TRUE){
  310. if(length(grep("conditions", colnames(Clinvar))) != 0){
  311. Clinvar$conditions <- as.character(Clinvar$conditions)}
  312. DFclinvar <- dplyr::full_join(DFclinvar, Clinvar)
  313. if(length(Clinvar$last_evaluated) != 0){
  314. Clinvar <- Clinvar[order(Clinvar$last_evaluated, decreasing = TRUE),]
  315. Clinvar <- Clinvar[1,]
  316. }else{
  317. Clinvar <- Clinvar[1,]
  318. }
  319. Clinvar[,"query"] <- inputvariant_Clinvar$query[[i]]
  320. Clinvar[,"clinvar.rsid"] <- inputvariant_Clinvar$clinvar.rsid[[i]]
  321. DFclinvar2 <- dplyr::full_join(DFclinvar2, Clinvar)
  322. i = i+1
  323. }
  324. }
  325. }
  326. }
  327. }
  328. #Bilan3 <- Bilan3[,-c(which(colnames(Bilan3) == "genename"))]
  329. Join_clinvar <- dplyr::join_by(genomic == query)
  330. Bilan_clinvar <- dplyr::full_join(HGVS_bilan, DFclinvar2, by = Join_clinvar)
  331. if(length(grep("name", colnames(Bilan))) == 0){
  332. Bilan <- dplyr::full_join(Bilan, DFclinvar2, by = Join_clinvar) %>%
  333. as.data.frame() %>%
  334. dplyr::mutate(name = "", Verif_on_bam_file = "",
  335. Comment = "", ACMG = "", Mutated = "",
  336. Transmission = "") %>%
  337. dplyr::select(Indiv, genomic, Zygosity, feature_id, effect.x,
  338. geneName, HGVSc, HGVSp, Transmission,
  339. GnomAD, clinical_significance, name,
  340. any_of(Fields_score), Pathogenicity, Verif_on_bam_file,
  341. Comment, ACMG, Mutated)
  342. }else{
  343. Bilan <- dplyr::full_join(Bilan, DFclinvar2, by = Join_clinvar) %>%
  344. as.data.frame() %>%
  345. dplyr::mutate(Verif_on_bam_file = "", Comment = "", ACMG = "",
  346. Mutated = "", Transmission = "") %>%
  347. dplyr::select(Indiv, genomic, Zygosity, feature_id, effect.x,
  348. geneName, HGVSc, HGVSp, Transmission, GnomAD,
  349. clinical_significance, name,
  350. any_of(Fields_score), Pathogenicity)
  351. }
  352. #Bilan pour Redcap (Vide compl?t? avec VBA Excel)
  353. SNP_RedCap <- data.frame(matrix("", ncol = 13, nrow = Nrow))
  354. colnames(SNP_RedCap) <- c("Ind", "Zygosity", "Genomic_position", "Transcrit_ID", "Mode_transmission",
  355. "Gene", "HGVSc", "HGVSp", "Clinvar", "CADD", "GnomAD", "ACMG", "Mutated")
  356. cat("creating xlxs file", "\n")
  357. #To format excel file
  358. # Titre et sous-titre
  359. TITLE_STYLE <- CellStyle(outputfile) +
  360. Font(outputfile, heightInPoints = 14, color="#4BACC6",
  361. isBold=TRUE, underline=1)
  362. SUB_TITLE_STYLE <- CellStyle(outputfile) +
  363. Font(outputfile, heightInPoints=10, color="azure3",
  364. isItalic=TRUE, isBold=FALSE)
  365. # Styles pour le nom des lignes/colonnes
  366. TABLE_ROWNAMES_STYLE <- CellStyle(outputfile) + Font(outputfile, isBold=TRUE)
  367. TABLE_COLNAMES_STYLE <- CellStyle(outputfile) + Font(outputfile, isBold=TRUE) +
  368. Alignment(wrapText=TRUE, horizontal="ALIGN_CENTER") +
  369. Border(color="#4BACC6", position=c("TOP", "BOTTOM"),
  370. pen=c("BORDER_THICK", "BORDER_THICK"))
  371. #Function require
  372. xlsx.addTitle <- function(sheet, rowIndex, title, titleStyle){
  373. rows <- createRow(sheet, rowIndex=rowIndex)
  374. sheetTitle <- createCell(rows, colIndex=1)
  375. setCellValue(sheetTitle[[1,1]], title)
  376. setCellStyle(sheetTitle[[1,1]], titleStyle)
  377. }
  378. #Print in file
  379. sheet1 <- createSheet(outputfile, sheetName = "Variant_HGVS")
  380. addDataFrame(EmptyDF, sheet1, startRow = 4,
  381. colnamesStyle = TABLE_COLNAMES_STYLE,
  382. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  383. xlsx.addTitle(sheet1, rowIndex = 1,
  384. title=paste("HGVS all for", Run, sep=" "),
  385. titleStyle=TITLE_STYLE)
  386. xlsx.addTitle(sheet1, rowIndex = 2,
  387. title=paste("Table obtain with Version", package.version("myVariant"),
  388. "of myvariant package (snpeff)", sep=" "),
  389. titleStyle=SUB_TITLE_STYLE)
  390. sheet2 <- createSheet(outputfile, sheetName = "Variant_HGVS_L")
  391. addDataFrame(HGVS_bilan <- HGVS_bilan %>%
  392. dplyr::mutate(SPIP = paste0(feature_id, "(", gene_id, "):", hgvs_c)), sheet2, startRow = 4,
  393. colnamesStyle = TABLE_COLNAMES_STYLE,
  394. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  395. xlsx.addTitle(sheet2, rowIndex = 1,
  396. title=paste("Clinvar all for", Run, sep=" "),
  397. titleStyle=TITLE_STYLE)
  398. xlsx.addTitle(sheet2, rowIndex = 2,
  399. title=paste("Table obtain with Version", package.version("myVariant"),
  400. "of myvariant package (Clinvar)", sep=" "),
  401. titleStyle=SUB_TITLE_STYLE)
  402. sheet3 <- createSheet(outputfile, sheetName = "Clinvar")
  403. addDataFrame(Bilan_clinvar, sheet3, startRow = 4,
  404. colnamesStyle = TABLE_COLNAMES_STYLE,
  405. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  406. xlsx.addTitle(sheet3, rowIndex = 1,
  407. title=paste("Clinvar all for", Run, sep=" "),
  408. titleStyle=TITLE_STYLE)
  409. xlsx.addTitle(sheet3, rowIndex = 2,
  410. title=paste("Table obtain with Version", package.version("myVariant"),
  411. "of myvariant package (Clinvar)", sep=" "),
  412. titleStyle=SUB_TITLE_STYLE)
  413. sheet6 <- createSheet(outputfile, sheetName = "Bilan")
  414. addDataFrame(Bilan, sheet6, startRow = 4,
  415. colnamesStyle = TABLE_COLNAMES_STYLE,
  416. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  417. xlsx.addTitle(sheet6, rowIndex = 1,
  418. title=paste("Bilan for", Run, sep=" "),
  419. titleStyle=TITLE_STYLE)
  420. xlsx.addTitle(sheet6, rowIndex = 2,
  421. title=paste("Table obtain with Version", package.version("myVariant"),
  422. "of myvariant package (Clinvar)", sep=" "),
  423. titleStyle=SUB_TITLE_STYLE)
  424. sheet7 <- createSheet(outputfile, sheetName = "SNP_for_RedCap")
  425. addDataFrame(SNP_RedCap, sheet7, startRow = 4, startColumn = 2,
  426. colnamesStyle = TABLE_COLNAMES_STYLE,
  427. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  428. xlsx.addTitle(sheet7, rowIndex = 1,
  429. title=paste("CNV identified to enter in RedCap", Run, sep=" "),
  430. titleStyle=TITLE_STYLE)
  431. # 0 hom
  432. #1 het
  433. #2 dbl het
  434. #3 het cis
  435. #4 het trans
  436. #5 hemi
  437. #6 het Phase inconnu
  438. sheet8 <- createSheet(outputfile, sheetName = "Genes_Tiers")
  439. addDataFrame(Gene_Panel, sheet8, startRow = 4,
  440. colnamesStyle = TABLE_COLNAMES_STYLE,
  441. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)
  442. xlsx.addTitle(sheet8, rowIndex = 1,
  443. title=paste("Genes_Tiers", Run, sep=" "),
  444. titleStyle=TITLE_STYLE)
  445. if(length(Not_found) == 0){
  446. sheet13 <- createSheet(outputfile, sheetName = "Not_found")
  447. }else{
  448. sheet13 <- createSheet(outputfile, sheetName = "Not_found")
  449. addDataFrame(Not_found, sheet13, startRow = 1,
  450. colnamesStyle = TABLE_COLNAMES_STYLE,
  451. rownamesStyle = TABLE_ROWNAMES_STYLE, row.names = FALSE)}
  452. #Save excel file and csv
  453. saveWorkbook(outputfile, outputfilename)
  454. cat("File save as ", outputfilename, "in", paste0(getwd(), "/Analyzed_", Run) ,"\n")
  455. write.csv(Bilan %>% dplyr::select(Indiv, geneName, genomic,
  456. HGVSc, HGVSp, Zygosity, clinical_significance, GnomAD),
  457. paste0("Analyzed_", Run, "/", "Variant_data_T1_", Run, ".csv"),
  458. row.names = FALSE)
  459. write.csv(HGVS_bilan %>% dplyr::select(SPIP), paste0("Analyzed_", Run, "/", "Splice_T1_", Run, ".txt"),
  460. row.names = FALSE, sep = "\t", quote = FALSE)
  461. }else{
  462. cat("No variants in the csv file !")
  463. }
  464. }
  465. Variant_anno_Exome_V9_T1()

Variant_anno_Exome_v9_T1.R at commit 1242c4f, under GPL-3.0 · at the source

Overview

Authors: Francesca Magrinelli1, Christelle Tesson2, Plamena R Angelova1, Jose A Rodriguez3, Annarita Scardamaglia4, Benjamin O’Callaghan5, Simon A Lowe6, Ainara Salazar-Villacorta4, Brian Hon-Yin Chung7,8, Matthew Jaconelli9, Barbara Vona10,11, Noemi Esteras1,12,13, Angela Mammana14, Junko Shimazu3, Anna Ka-Yee Kwong7, Thomas Courtin2, Shahryar Alavi5, Reza Maroofian4, Raja Nirujogi9, Mariasavina Severino15
and 73 other authorsEdoardo Monfrini16, Clarissa Rocca4, Patrick A Lewis5,17, Stephanie Efthymiou4, Rebecca Buchert18, Linda Sofan18, Pawel Lis9, Chloé Pinon2, Guido J Breedveld19, Martin Man-Chun Chui7, David Murphy1, Vanessa Pitz20, Mary B Makarious21, Simone Baiardi14,22, Marina Volin3, Marlene Cassar2, Bassem A Hassan2, Sana Iftikhar23, Peter Bauer24, Michele Tinazzi25, Marina Svetel26, Bedia Samanci27, Haşmet A Hanağası27, Basar Bilgiç27, Francesco Cavallieri28, Mario Santangelo29, José A Obeso13,30,31, Monica M Kurtis32, Guillaume Cogan2, Güneş Kiziltan33, Tuğçe Gül-Demirkale34, Hülya Tireli35, Gülbün A Yüksel36, Gül Yalçın-Cakmakli37, Bülent Elibol37, Nina Barišić38, Earny Wei-Sen Ng7, Sze-Shing Fan7, Tova Hershkovitz39, Karin Weiss40,41, Javeria Raza Alvi42, Tipu Sultan42, Issam Azmi Alkhawaja43, Tawfiq Froukh44, Hadeel Abdollah E Alrukban45, Muhammad Nadeem Anjum46, Anjum Saeed46, Huma Arshad Cheema46, Christine Fauth47, Ulrich A Schatz47,48, Thomas Zöggeler49, Michael Zech48,50,51, Karen Stals52, Vinod Varghese53, Sonia Gandhi1,54, Cornelis Blauwendraat20,55, John A Hardy5, Alessio Di Fonzo16, Vincenzo Bonifati19, Tobias B Haack18,48, Aida M Bertoli-Avella24, Suzanne Lesage2, Ayşe Nazlı Başak34, Robert Steinfeld56,57, Piero Parchi14,22, James E C Jepson6, Dario R Alessi9, PSMF1 Study Group, Alexis Brice2, Hermann Steller3, Andrey Y Abramov1, Kailash P Bhatia1, Henry Houlden4
57 affiliations
  1. Department of Clinical and Movement Neurosciences, UCL Queen Square Institute of Neurology, University College London, London, UK
  2. Sorbonne Université, Institut du Cerveau - Paris Brain Institute - ICM, Inserm, CNRS, APHP, Hôpital de la Pitié Salpêtrière, Paris, France
  3. Strang Laboratory of Apoptosis and Cancer Biology, The Rockefeller University, New York, NY USA
  4. Department of Neuromuscular Diseases, UCL Queen Square Institute of Neurology, University College London, London, UK
  5. Department of Neurodegenerative Disease, UCL Queen Square Institute of Neurology, University College London, London, UK
  6. Research Department of Epilepsy, UCL Queen Square Institute of Neurology, University College London, London, UK
  7. Department of Paediatrics and Adolescent Medicine, School of Clinical Medicine, Li Ka Shing Faculty of Medicine, The University of Hong Kong, Hong Kong SAR, China
  8. Hong Kong Genome Institute, Hong Kong SAR, China
  9. Medical Research Council (MRC) Protein Phosphorylation and Ubiquitylation Unit, School of Life Sciences, University of Dundee, Dundee, UK
  10. Institute of Human Genetics, University Medical Center Göttingen, Göttingen, Germany
  11. Institute for Auditory Neuroscience and Inner Ear Lab, University Medical Center Göttingen, Göttingen, Germany
  12. Neurochemistry Research Institute, Department of Biochemistry and Molecular Biology, School of Medicine, Complutense University of Madrid, Madrid, Spain
  13. CIBERNED, Network Center for Biomedical Research in Neurodegenerative Diseases, Madrid, Spain
  14. IRCCS Istituto delle Scienze Neurologiche di Bologna, Bologna, Italy
  15. Neuroradiology Unit, IRCCS Istituto Giannina Gaslini, Genova, Italy
  16. Neurology Unit, Fondazione IRCCS Ca’ Granda Ospedale Maggiore Policlinico, Milan, Italy
  17. Royal Veterinary College, London, UK
  18. Institute of Medical Genetics and Applied Genomics, University of Tübingen, Tübingen, Germany
  19. Department of Clinical Genetics, Erasmus University Medical Center, Rotterdam, The Netherlands
  20. Integrative Neurogenomics Unit, Laboratory of Neurogenetics, National Institute on Aging, National Institutes of Health, Bethesda, MD USA
  21. Laboratory of Neurogenetics, National Institute on Aging, National Institutes of Health, Bethesda, MD USA
  22. Department of Biomedical and Neuromotor Sciences, University of Bologna, Bologna, Italy
  23. Department of Real-World evidence studies, CENTOGENE GmbH, Rostock, Germany
  24. Department of Medical Genetics, CENTOGENE GmbH, Rostock, Germany
  25. Department of Neurosciences, Biomedicine and Movement Sciences, University of Verona, Verona, Italy
  26. Movement Disorders Department, Neurology Clinic, University Clinical Center of Serbia, Belgrade, Serbia
  27. Behavioral Neurology and Movement Disorders Unit, Department of Neurology, Istanbul Faculty of Medicine, Istanbul University, Istanbul, Turkey
  28. Neurology Unit, Neuromotor and Rehabilitation Department, Azienda USL-IRCCS of Reggio Emilia, Reggio Emilia, Italy
  29. Department of Neurology, Carpi Hospital, Carpi, Italy
  30. HM CINAC, Hospital Universitario HM Puerta del Sur, HM Hospitales, Madrid, Spain
  31. University CEU-San Pablo, Madrid, Spain
  32. Neurology Department, Hospital Ruber Internacional, Madrid, Spain
  33. Department of Neurology, Cerrahpasa Medical Faculty, Istanbul University-Cerrahpasa, Istanbul, Turkey
  34. Research Center for Translational Medicine - Neurodegeneration Research Laboratory (KUTTAM-NDAL), School of Medicine, Koç University, Istanbul, Turkey
  35. Vocational School, İstanbul Nisantasi University, Istanbul, Turkey
  36. Department of Neurology, Haydarpasa Numune Training and Research Hospital, University of Health Sciences, Istanbul, Turkey
  37. Department of Neurology, School of Medicine, Hacettepe University, Ankara, Turkey
  38. University of Zagreb Medical School, Department of Pediatric Clinical Medical Centre Split, Polyclinic Aviva Zagreb, Zagreb, Croatia
  39. The Genetics Institute, Galilee Medical Center, Nahariya, Israel
  40. Genetics Institute, Rambam Health Care Center, Haifa, Israel
  41. Ruth and Bruce Rappaport Faculty of Medicine, Technion Israel Institute of Technology, Haifa, Israel
  42. Department of Paediatric Neurology, The Children’s Hospital and the University of Child Health Sciences, Lahore, Pakistan
  43. Pediatric Neurology Unit, Pediatric Department, Albashir Hospital, Amman, Jordan
  44. Department of Biotechnology and Genetics Engineering, Philadelphia University, Amman, Jordan
  45. Department of Pediatrics, Prince Sultan Military Medical City, Riyadh, Saudi Arabia
  46. Department of Gastroenterology, Hepatology and Nutrition, The Children’s Hospital and the University of Child Health Sciences, Lahore, Pakistan
  47. Institute of Human Genetics, Medical University Innsbruck, Innsbruck, Austria
  48. Institute of Human Genetics, School of Medicine and Health, Technical University of Munich, Munich, Germany
  49. Department of Pediatrics I, Medical University Innsbruck, Innsbruck, Austria
  50. Institute of Neurogenomics, Helmholtz Zentrum Munich, Munich, Germany
  51. Institute for Advanced Study, Technical University of Munich, Garching, Germany
  52. Exeter Genomics Laboratory, Royal Devon University Healthcare NHS Foundation Trust, Exeter, UK
  53. All Wales Medical Genomics Service, Cardiff, UK
  54. Neurodegeneration Biology Laboratory, The Francis Crick Institute, London, UK
  55. Center for Alzheimer’s and Related Dementias (CARD), National Institute on Aging and National Institute of Neurological Disorders and Stroke, National Institutes of Health, Bethesda, MD USA
  56. Department of Pediatrics and Pediatric Neurology, University of Göttingen, Göttingen, Germany
  57. Department of Pediatric Neurology, Charité University Medicine, Berlin, Germany
Institutions: UCL Queen Square Institute of Neurology (United Kingdom); University College London (United Kingdom); Centre National de la Recherche Scientifique (France); Inserm (France); Sorbonne Université (France); Institut des Sciences Moléculaires (France); Assistance Publique – Hôpitaux de Paris (France); Pitié-Salpêtrière Hospital (France); Institut du Cerveau (France); Rockefeller University (United States); University of Hong Kong (Hong Kong SAR China); University of Dundee (United Kingdom); MRC Protein Phosphorylation and Ubiquitylation Unit (United Kingdom); Medical Research Council (United Kingdom); Universitätsmedizin Göttingen (Germany); University of Göttingen (Germany); Universidad Complutense de Madrid (Spain); Biomedical Research Networking Center on Neurodegenerative Diseases (Spain); Istituto delle Scienze Neurologiche di Bologna (Italy); Istituto Giannina Gaslini (Italy); Fondazione IRCCS Ca' Granda Ospedale Maggiore Policlinico (Italy); Royal Veterinary College (United Kingdom); University of Tübingen (Germany); Erasmus MC (Netherlands); National Institutes of Health (United States); National Institute on Aging (United States); University of Bologna (Italy); Centogene (Germany) (Germany); University of Verona (Italy); Univerzitetski Klinički Centar Srbije (Serbia); Istanbul University (Türkiye); Azienda Sanitaria Unità Locale di Reggio Emilia (Italy); Fondazione Cassa di Risparmio di Carpi (Italy); Universidad San Pablo CEU (Spain); HM Hospitales (Spain); University Hospital HM Puerta del Sur (Spain); Hospital Ruber Internacional (Spain); Istanbul University-Cerrahpaşa (Türkiye); Koç University (Türkiye); Koç Üniversitesi Translasyonel Tıp Araştırma Merkezi (Türkiye); İstanbul Nişantaşı Üniversitesi (Türkiye); Haydarpaşa Numune Eğitim ve Araştırma Hastanesi (Türkiye); Sağlık Bilimleri Üniversitesi (Türkiye); Hacettepe University (Türkiye); University of Zagreb (Croatia); Poliklinika Aviva (Croatia); Western Galilee Hospital (Israel); Technion – Israel Institute of Technology (Israel); Rambam Health Care Campus (Israel); University of Child Health Sciences (Pakistan); Philadelphia University (Jordan); Riyadh Armed Forces Hospital (Saudi Arabia); Innsbruck Medical University (Austria); Institut für Humangenetik (Germany); Technical University of Munich (Germany); Universität Innsbruck (Austria); Helmholtz Munich (Germany); Royal Devon & Exeter NHS Foundation Trust (United Kingdom); Royal Devon University Healthcare NHS Foundation Trust (United Kingdom); The Francis Crick Institute (United Kingdom); National Institute of Neurological Disorders and Stroke (United States); Charité - Universitätsmedizin Berlin (Germany)
Journal: Nature communications, volume 17, issue 1, article 6299
Dates: received 14 July 2024; accepted 19 March 2026; published online 15 April 2026
Type: Research article · Language: English
License: CC BY-NC-ND
Identifiers: DOI 10.1038/s41467-026-71351-w · PMID 41986367 · PMCID PMC13376622 · OpenAlex W7154490562
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: human (organism), mouse (organism), drosophila (organism), other condition (population), Parkinson's (population), cellular / molecular (subfield)
Methods: Statistics, Smoothing, state filtering, decompositions, fMRI & imaging
Keywords: Parkinson's disease, Neurodevelopmental disorders, Proteasome, Mutation, Mitochondria
MeSH: Parkinsonian Disorders*, Proteasome Endopeptidase Complex*, Animals, Disease Models, Animal, Drosophila melanogaster, Female, Fibroblasts, Humans, Male, Membrane Potential, Mitochondrial, Mice, Mitochondria, Parkinson Disease, Pedigree, Phenotype (* major topic)
Topic: Ubiquitin and proteasome pathways (Molecular Biology, Biochemistry, Genetics and Molecular Biology), according to OpenAlex
Funding: Parkinson&apos;s UK (G-2401); Wellcome Trust; Michael J. Fox Foundation for Parkinson&apos;s Research (MJFF-023893); Michael J. Fox Foundation for Parkinson's Research (Michael J. Fox Foundation) (MJFF-023893); American Parkinson Disease Association (American Parkinson Disease Association, Inc.) (1282403); Parkinson's UK (G-2401); National Institute for Health Research (NIHR) (BRC1287/TN/FM/101410)
Citations: cited by 4 papers (Europe PMC); 107 references in the paper
Research resources: mouse anti-Gapdh IgG2b RRID:AB_10861081, rabbit anti-PSMF1/hPI31 IgG RRID:AB_11153838, RRID:AB_2762831, RRID:SCR_00167, RRID:SCR_014579

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

icm-institute/corti-corvol/variants_tiers_gene

License: GPL-3.0
State: the link answers, verified on 29 September 2026
Evidence: files inventoried
Commit: 1242c4f2f8bdeb9fe9a85d14f369e48af6b872b8, 17 June 2024
Languages: R (7)
Size: 16 files, 7 scripts
Software Heritage: not archived
Found in: the text, “Exome and genome sequencing and analysis”
Holds: README, license file, 1 notebook
Not found: CITATION.cff, environment file, tests, continuous integration, documentation
Tools: tidyverse (7 files), ggplot2 (1 file), reshape2 (1 file)
Availability: 1 check, the latest on 29 September 2026: the link answers
  • 29 September 2026: the link answers
9 files

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;
  • 7 scripts, each with its path and the digest of its content;
  • 9 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 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 says that the data are available on request

Read it in the paper: doi.org/10.1038/s41467-026-71351-w.

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, 29 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 93 authors, 5 keywords, 15 MeSH terms, 7 funders, 105 references, 5 RRIDs.

Cite

This paper

Magrinelli, F., Tesson, C., Angelova, P. R., Rodriguez, J. A., Scardamaglia, A., O’Callaghan, B., Lowe, S. A., Salazar-Villacorta, A., Chung, B. H.-Y., Jaconelli, M., Vona, B., Esteras, N., Mammana, A., Shimazu, J., Kwong, A. K.-Y., Courtin, T., Alavi, S., Maroofian, R., Nirujogi, R., . . . Houlden, H. (2026). Variants in the proteasome regulator PSMF1 cause a phenotypic spectrum from parkinsonism to perinatal lethality. Nature communications, 17(1), 6299. https://doi.org/10.1038/s41467-026-71351-w

BibTeX

@article{magrinelli2026variants,
author = {Magrinelli, Francesca and Tesson, Christelle and Angelova, Plamena R and Rodriguez, Jose A and Scardamaglia, Annarita and O’Callaghan, Benjamin and Lowe, Simon A and Salazar-Villacorta, Ainara and Chung, Brian Hon-Yin and Jaconelli, Matthew and Vona, Barbara and Esteras, Noemi and Mammana, Angela and Shimazu, Junko and Kwong, Anna Ka-Yee and Courtin, Thomas and Alavi, Shahryar and Maroofian, Reza and Nirujogi, Raja and Severino, Mariasavina and Monfrini, Edoardo and Rocca, Clarissa and Lewis, Patrick A and Efthymiou, Stephanie and Buchert, Rebecca and Sofan, Linda and Lis, Pawel and Pinon, Chloé and Breedveld, Guido J and Chui, Martin Man-Chun and Murphy, David and Pitz, Vanessa and Makarious, Mary B and Baiardi, Simone and Volin, Marina and Cassar, Marlene and Hassan, Bassem A and Iftikhar, Sana and Bauer, Peter and Tinazzi, Michele and Svetel, Marina and Samanci, Bedia and Hanağası, Haşmet A and Bilgiç, Basar and Cavallieri, Francesco and Santangelo, Mario and Obeso, José A and Kurtis, Monica M and Cogan, Guillaume and Kiziltan, Güneş and Gül-Demirkale, Tuğçe and Tireli, Hülya and Yüksel, Gülbün A and Yalçın-Cakmakli, Gül and Elibol, Bülent and Barišić, Nina and Ng, Earny Wei-Sen and Fan, Sze-Shing and Hershkovitz, Tova and Weiss, Karin and Alvi, Javeria Raza and Sultan, Tipu and Alkhawaja, Issam Azmi and Froukh, Tawfiq and Alrukban, Hadeel Abdollah E and Anjum, Muhammad Nadeem and Saeed, Anjum and Cheema, Huma Arshad and Fauth, Christine and Schatz, Ulrich A and Zöggeler, Thomas and Zech, Michael and Stals, Karen and Varghese, Vinod and Gandhi, Sonia and Blauwendraat, Cornelis and Hardy, John A and Di Fonzo, Alessio and Bonifati, Vincenzo and Haack, Tobias B and Bertoli-Avella, Aida M and Lesage, Suzanne and Başak, Ayşe Nazlı and Steinfeld, Robert and Parchi, Piero and Jepson, James E C and Alessi, Dario R and {PSMF1 Study Group} and Brice, Alexis and Steller, Hermann and Abramov, Andrey Y and Bhatia, Kailash P and Houlden, Henry},
title = {{Variants in the proteasome regulator PSMF1 cause a phenotypic spectrum from parkinsonism to perinatal lethality}},
journal = {Nature communications},
year = {2026},
month = apr,
volume = {17},
number = {1},
pages = {6299},
publisher = {Nature Publishing Group},
issn = {2041-1723},
doi = {10.1038/s41467-026-71351-w},
url = {https://doi.org/10.1038/s41467-026-71351-w},
pmid = {41986367},
pmcid = {PMC13376622}
}

RIS

TY - JOUR
AU - Magrinelli, Francesca
AU - Tesson, Christelle
AU - Angelova, Plamena R
AU - Rodriguez, Jose A
AU - Scardamaglia, Annarita
AU - O’Callaghan, Benjamin
AU - Lowe, Simon A
AU - Salazar-Villacorta, Ainara
AU - Chung, Brian Hon-Yin
AU - Jaconelli, Matthew
AU - Vona, Barbara
AU - Esteras, Noemi
AU - Mammana, Angela
AU - Shimazu, Junko
AU - Kwong, Anna Ka-Yee
AU - Courtin, Thomas
AU - Alavi, Shahryar
AU - Maroofian, Reza
AU - Nirujogi, Raja
AU - Severino, Mariasavina
AU - Monfrini, Edoardo
AU - Rocca, Clarissa
AU - Lewis, Patrick A
AU - Efthymiou, Stephanie
AU - Buchert, Rebecca
AU - Sofan, Linda
AU - Lis, Pawel
AU - Pinon, Chloé
AU - Breedveld, Guido J
AU - Chui, Martin Man-Chun
AU - Murphy, David
AU - Pitz, Vanessa
AU - Makarious, Mary B
AU - Baiardi, Simone
AU - Volin, Marina
AU - Cassar, Marlene
AU - Hassan, Bassem A
AU - Iftikhar, Sana
AU - Bauer, Peter
AU - Tinazzi, Michele
AU - Svetel, Marina
AU - Samanci, Bedia
AU - Hanağası, Haşmet A
AU - Bilgiç, Basar
AU - Cavallieri, Francesco
AU - Santangelo, Mario
AU - Obeso, José A
AU - Kurtis, Monica M
AU - Cogan, Guillaume
AU - Kiziltan, Güneş
AU - Gül-Demirkale, Tuğçe
AU - Tireli, Hülya
AU - Yüksel, Gülbün A
AU - Yalçın-Cakmakli, Gül
AU - Elibol, Bülent
AU - Barišić, Nina
AU - Ng, Earny Wei-Sen
AU - Fan, Sze-Shing
AU - Hershkovitz, Tova
AU - Weiss, Karin
AU - Alvi, Javeria Raza
AU - Sultan, Tipu
AU - Alkhawaja, Issam Azmi
AU - Froukh, Tawfiq
AU - Alrukban, Hadeel Abdollah E
AU - Anjum, Muhammad Nadeem
AU - Saeed, Anjum
AU - Cheema, Huma Arshad
AU - Fauth, Christine
AU - Schatz, Ulrich A
AU - Zöggeler, Thomas
AU - Zech, Michael
AU - Stals, Karen
AU - Varghese, Vinod
AU - Gandhi, Sonia
AU - Blauwendraat, Cornelis
AU - Hardy, John A
AU - Di Fonzo, Alessio
AU - Bonifati, Vincenzo
AU - Haack, Tobias B
AU - Bertoli-Avella, Aida M
AU - Lesage, Suzanne
AU - Başak, Ayşe Nazlı
AU - Steinfeld, Robert
AU - Parchi, Piero
AU - Jepson, James E C
AU - Alessi, Dario R
AU - PSMF1 Study Group
AU - Brice, Alexis
AU - Steller, Hermann
AU - Abramov, Andrey Y
AU - Bhatia, Kailash P
AU - Houlden, Henry
TI - Variants in the proteasome regulator PSMF1 cause a phenotypic spectrum from parkinsonism to perinatal lethality
T2 - Nature communications
J2 - Nat Commun
PY - 2026
DA - 2026/04/15
VL - 17
IS - 1
SP - 6299
SN - 2041-1723
PB - Nature Publishing Group
DO - 10.1038/s41467-026-71351-w
UR - https://doi.org/10.1038/s41467-026-71351-w
LA - en
ER -

CSL-JSON

{
"id": "10.1038/s41467-026-71351-w",
"type": "article-journal",
"title": "Variants in the proteasome regulator PSMF1 cause a phenotypic spectrum from parkinsonism to perinatal lethality",
"container-title": "Nature communications",
"author": [
{
"family": "Magrinelli",
"given": "Francesca"
},
{
"family": "Tesson",
"given": "Christelle"
},
{
"family": "Angelova",
"given": "Plamena R"
},
{
"family": "Rodriguez",
"given": "Jose A"
},
{
"family": "Scardamaglia",
"given": "Annarita"
},
{
"family": "O’Callaghan",
"given": "Benjamin"
},
{
"family": "Lowe",
"given": "Simon A"
},
{
"family": "Salazar-Villacorta",
"given": "Ainara"
},
{
"family": "Chung",
"given": "Brian Hon-Yin"
},
{
"family": "Jaconelli",
"given": "Matthew"
},
{
"family": "Vona",
"given": "Barbara"
},
{
"family": "Esteras",
"given": "Noemi"
},
{
"family": "Mammana",
"given": "Angela"
},
{
"family": "Shimazu",
"given": "Junko"
},
{
"family": "Kwong",
"given": "Anna Ka-Yee"
},
{
"family": "Courtin",
"given": "Thomas"
},
{
"family": "Alavi",
"given": "Shahryar"
},
{
"family": "Maroofian",
"given": "Reza"
},
{
"family": "Nirujogi",
"given": "Raja"
},
{
"family": "Severino",
"given": "Mariasavina"
},
{
"family": "Monfrini",
"given": "Edoardo"
},
{
"family": "Rocca",
"given": "Clarissa"
},
{
"family": "Lewis",
"given": "Patrick A"
},
{
"family": "Efthymiou",
"given": "Stephanie"
},
{
"family": "Buchert",
"given": "Rebecca"
},
{
"family": "Sofan",
"given": "Linda"
},
{
"family": "Lis",
"given": "Pawel"
},
{
"family": "Pinon",
"given": "Chloé"
},
{
"family": "Breedveld",
"given": "Guido J"
},
{
"family": "Chui",
"given": "Martin Man-Chun"
},
{
"family": "Murphy",
"given": "David"
},
{
"family": "Pitz",
"given": "Vanessa"
},
{
"family": "Makarious",
"given": "Mary B"
},
{
"family": "Baiardi",
"given": "Simone"
},
{
"family": "Volin",
"given": "Marina"
},
{
"family": "Cassar",
"given": "Marlene"
},
{
"family": "Hassan",
"given": "Bassem A"
},
{
"family": "Iftikhar",
"given": "Sana"
},
{
"family": "Bauer",
"given": "Peter"
},
{
"family": "Tinazzi",
"given": "Michele"
},
{
"family": "Svetel",
"given": "Marina"
},
{
"family": "Samanci",
"given": "Bedia"
},
{
"family": "Hanağası",
"given": "Haşmet A"
},
{
"family": "Bilgiç",
"given": "Basar"
},
{
"family": "Cavallieri",
"given": "Francesco"
},
{
"family": "Santangelo",
"given": "Mario"
},
{
"family": "Obeso",
"given": "José A"
},
{
"family": "Kurtis",
"given": "Monica M"
},
{
"family": "Cogan",
"given": "Guillaume"
},
{
"family": "Kiziltan",
"given": "Güneş"
},
{
"family": "Gül-Demirkale",
"given": "Tuğçe"
},
{
"family": "Tireli",
"given": "Hülya"
},
{
"family": "Yüksel",
"given": "Gülbün A"
},
{
"family": "Yalçın-Cakmakli",
"given": "Gül"
},
{
"family": "Elibol",
"given": "Bülent"
},
{
"family": "Barišić",
"given": "Nina"
},
{
"family": "Ng",
"given": "Earny Wei-Sen"
},
{
"family": "Fan",
"given": "Sze-Shing"
},
{
"family": "Hershkovitz",
"given": "Tova"
},
{
"family": "Weiss",
"given": "Karin"
},
{
"family": "Alvi",
"given": "Javeria Raza"
},
{
"family": "Sultan",
"given": "Tipu"
},
{
"family": "Alkhawaja",
"given": "Issam Azmi"
},
{
"family": "Froukh",
"given": "Tawfiq"
},
{
"family": "Alrukban",
"given": "Hadeel Abdollah E"
},
{
"family": "Anjum",
"given": "Muhammad Nadeem"
},
{
"family": "Saeed",
"given": "Anjum"
},
{
"family": "Cheema",
"given": "Huma Arshad"
},
{
"family": "Fauth",
"given": "Christine"
},
{
"family": "Schatz",
"given": "Ulrich A"
},
{
"family": "Zöggeler",
"given": "Thomas"
},
{
"family": "Zech",
"given": "Michael"
},
{
"family": "Stals",
"given": "Karen"
},
{
"family": "Varghese",
"given": "Vinod"
},
{
"family": "Gandhi",
"given": "Sonia"
},
{
"family": "Blauwendraat",
"given": "Cornelis"
},
{
"family": "Hardy",
"given": "John A"
},
{
"family": "Di Fonzo",
"given": "Alessio"
},
{
"family": "Bonifati",
"given": "Vincenzo"
},
{
"family": "Haack",
"given": "Tobias B"
},
{
"family": "Bertoli-Avella",
"given": "Aida M"
},
{
"family": "Lesage",
"given": "Suzanne"
},
{
"family": "Başak",
"given": "Ayşe Nazlı"
},
{
"family": "Steinfeld",
"given": "Robert"
},
{
"family": "Parchi",
"given": "Piero"
},
{
"family": "Jepson",
"given": "James E C"
},
{
"family": "Alessi",
"given": "Dario R"
},
{
"literal": "PSMF1 Study Group"
},
{
"family": "Brice",
"given": "Alexis"
},
{
"family": "Steller",
"given": "Hermann"
},
{
"family": "Abramov",
"given": "Andrey Y"
},
{
"family": "Bhatia",
"given": "Kailash P"
},
{
"family": "Houlden",
"given": "Henry"
}
],
"container-title-short": "Nat Commun",
"volume": "17",
"issue": "1",
"page": "6299",
"DOI": "10.1038/s41467-026-71351-w",
"PMID": "41986367",
"PMCID": "PMC13376622",
"ISSN": "2041-1723",
"publisher": "Nature Publishing Group",
"URL": "https://doi.org/10.1038/s41467-026-71351-w",
"language": "en",
"issued": {
"date-parts": [
[
2026,
4,
15
]
]
}
}

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-75194-3 [code]
Leucine-rich repeat kinase 2 impairs the release sites of Parkinson's disease vulnerable dopamine axons.
Journal: Nature communications
In common: ggplot2, tidyverse, Parkinson's, mouse, cellular / molecular, 2 authors
[2] doi:10.1038/s41467-026-74961-6 [code]
Spatial multi-omics identifies early synaptic pruning and context-specific dopaminergic vulnerability in synucleinopathies.
Journal: Nature communications
In common: tidyverse, Parkinson's, cellular / molecular, 2 references, author Piero Parchi
[3] doi:10.1016/j.xgen.2026.101284 [code]
NERINE reveals rare variant associations in gene networks across phenotypes and implicates an SNCA-PRL-LRRK2 subnetwork in Parkinson's disease.
Journal: Cell genomics
In common: ggplot2, tidyverse, Parkinson's, other condition, cellular / molecular, 4 references
[4] doi:10.1186/s13195-026-02036-1 [code]
Genetic drivers of progression in Alzheimer's disease are distinct from disease risk.
Journal: Alzheimer's research & therapy
In common: ggplot2, tidyverse, 1 reference, author John Hardy
[5] doi:10.1038/s41380-026-03686-1 [code]
Early oligodendrocyte dysfunction signature in Alzheimer's disease: Insights from DNA methylomics and transcriptomics.
Journal: Molecular psychiatry
In common: ggplot2, tidyverse, mouse, cellular / molecular, author John Hardy
[6] doi:10.1038/s41467-026-76676-0 [code]
Determinants of functional burden pleiotropy and gene dosage responses across human traits.
Journal: Nature communications
In common: reshape2, ggplot2, tidyverse, cellular / molecular, 3 references
[7] doi:10.1038/s41467-026-70303-8 [code]
Behavioral screening defines the molecular Parkinsonism-related subgroups in Drosophila.
Journal: Nature communications
In common: ggplot2, tidyverse, drosophila, Parkinson's, cellular / molecular, 2 references
[8] doi:10.1038/s41588-026-02570-6 [code]
Somatic mosaicism in ALS and FTD identifies focal mutations associated with widespread degeneration.
Journal: Nature genetics
In common: reshape2, ggplot2, tidyverse, other condition, cellular / molecular, 2 references
[9] doi:10.1038/s41531-026-01287-x [code]
Faecalibacterium prausnitzii, depleted in the Parkinson's disease microbiome, improves motor deficits in α-synuclein overexpressing mice.
Journal: NPJ Parkinson's disease
In common: reshape2, tidyverse, Parkinson's, mouse, cellular / molecular, 2 references
[10] doi:10.1002/ejp.70277 [code]
Proximity Labelling Reveals the Compartmental Proteome of Murine Sensory Neurons.
Journal: European journal of pain (London, England)
In common: reshape2, ggplot2, tidyverse, mouse, cellular / molecular, 2 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.