OSCR

Circulating microRNAs reveal egg-brain crosstalk and a brain-predominant microRNA linked to the onset of the next reproductive cycle in iteroparous salmonids.

Code ↔ Paper

3 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 3 matches
  1. [1] § Results › A single c-miRNA is associated with the onset of the next reproductive cycle ↔ askomics/create_datatables_askoR.R, lines 1–47 · score 0.74 · trunk kidney, head kidney, skin, spleen, gills, heart
  2. [2] § Results › A single c-miRNA is associated with the onset of the next reproductive cycle ↔ askomics/create_datatables_askoR.R, lines 1–47 · score 0.74 · trunk kidney, head kidney, skin, spleen, gills, heart
  3. [3] § Methods › sRNA-seq analysis ↔ prost_postprocess/projects/vim_details.R, lines 89–155 · score 0.66 · log fold changes, lfcShrink, DESeq2, apeglm, transformed, PCA

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 · 457 lines · 37 KB · no license · 2 matches

  1. library(tidyverse)
  2. library(prostPostprocess)
  3. library(readxl)
  4. data_path = "~/Documents/phenomir/data/askomics_data"
  5. datatables_path = "~/Documents/phenomir/askomics/datatables"
  6. miRnome_path = "~/Documents/phenomir/data/annotation/omy.mature.v3.fasta"
  7. # Organism
  8. organism <- tibble(Organism = "taxon:8022", organismName = "Oncorhynchus mykiss")#, taxonURI = "https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?id=8022")
  9. organism %>%
  10. write_csv(paste(datatables_path, "Organism.csv", sep = "/"), na = "")
  11. # Organ
  12. organ <-
  13. tibble(`rdfs:label` = c(), Organ = c()) %>%
  14. add_row(`rdfs:label` = "plasma", Organ = "uberon:0001969") %>%
  15. add_row(`rdfs:label` = "ovarian fluid", Organ = "uberon:0036217") %>%
  16. add_row(`rdfs:label` = "mucus", Organ = "uberon:0000912") %>%
  17. add_row(`rdfs:label` = "seminal fluid", Organ = "uberon:0006530") %>%
  18. add_row(`rdfs:label` = "brain", Organ = "uberon:0000955") %>%
  19. add_row(`rdfs:label` = "egg", Organ = "uberon:egg") %>%
  20. add_row(`rdfs:label` = "gills", Organ = "uberon:gill") %>%
  21. add_row(`rdfs:label` = "gonad", Organ = "uberon:0000991") %>%
  22. add_row(`rdfs:label` = "head kidney", Organ = "uberon:0007132") %>%
  23. add_row(`rdfs:label` = "heart", Organ = "uberon:0000948") %>%
  24. add_row(`rdfs:label` = "intestine", Organ = "uberon:0000160") %>%
  25. add_row(`rdfs:label` = "leucocytes", Organ = "uberon:leucocytes") %>%
  26. add_row(`rdfs:label` = "liver", Organ = "uberon:0002107") %>%
  27. add_row(`rdfs:label` = "muscle", Organ = "uberon:0001630") %>%
  28. add_row(`rdfs:label` = "myoblast", Organ = "uberon:myoblast") %>%
  29. add_row(`rdfs:label` = "myotubes", Organ = "uberon:0014896") %>%
  30. add_row(`rdfs:label` = "ovary", Organ = "uberon:0000992") %>%
  31. add_row(`rdfs:label` = "pituitary", Organ = "uberon:pituiatary") %>%
  32. add_row(`rdfs:label` = "skin", Organ = "uberon:skin") %>%
  33. add_row(`rdfs:label` = "spermatogonia", Organ = "uberon:spermatogonia") %>%
  34. add_row(`rdfs:label` = "spleen", Organ = "uberon:0002106") %>%
  35. add_row(`rdfs:label` = "stomach", Organ = "uberon:0000945") %>%
  36. add_row(`rdfs:label` = "testis", Organ = "uberon:0000473") %>%
  37. add_row(`rdfs:label` = "trunk kidney", Organ = "uberon:trunkkidney") %>%
  38. add_row(`rdfs:label` = "whole embryo", Organ = "uberon:0000922") %>%
  39. select(Organ, `rdfs:label`)
  40. organ %>%
  41. write_csv(paste(datatables_path, "Organ.csv", sep = "/"), na = "")
  42. # MiRNA
  43. miRNA <- (read_lines(miRnome_path) %>%
  44. list(tibble(miRNAName = .[seq(1, length(.), 2)],
  45. sequence = .[seq(2, length(.), 2)])))[[2]] %>%
  46. mutate(miRNAName = str_replace(miRNAName, ">", "")) %>%
  47. #mutate(MiRNA = row_number()) %>%
  48. mutate(MiRNA = miRNAName) %>%
  49. select(MiRNA, sequence, miRNAName)
  50. miRNA
  51. miRNA %>%
  52. write_csv(paste(datatables_path, "MiRNA.csv", sep = "/"), na = "")
  53. # MiRNAOrigin
  54. miRNAOrigin <- read_tsv(paste(data_path, "average_count_by_tissue.tsv", sep = "/")) %>%
  55. dplyr::rename(`referenceLevelOf@MiRNA` = omy_miRNA) %>%
  56. pivot_longer(-`referenceLevelOf@MiRNA`, names_to = "organName", values_to = "referenceLevel") %>%
  57. mutate(organName = str_to_lower(organName)) %>%
  58. left_join(organ, by = c("organName" = "rdfs:label")) %>%
  59. dplyr::rename(`referenceLevelFrom@Organ` = Organ) %>%
  60. left_join(select(miRNA, MiRNA, miRNAName), by = c("referenceLevelOf@MiRNA" = "miRNAName")) %>%
  61. mutate(`referenceLevelOf@MiRNA` = MiRNA) %>%
  62. mutate(MiRNAOrigin = row_number()) %>%
  63. select(MiRNAOrigin, `referenceLevelOf@MiRNA`, referenceLevel, `referenceLevelFrom@Organ`)
  64. miRNAOrigin
  65. miRNAOrigin %>%
  66. write_csv(paste(datatables_path, "MiRNAOrigin.csv", sep = "/"), na = "")
  67. # Project
  68. project <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  69. select(projectName) %>%
  70. dplyr::distinct() %>%
  71. mutate(Project = projectName) %>%
  72. select(Project, projectName)
  73. project %>%
  74. write_csv(paste(datatables_path, "Project.csv", sep = "/"), na = "")
  75. # ExperimentalCondition
  76. experimentalCondition <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  77. select(projectName, description) %>%
  78. tidyr::separate(description, into = c("c1", "c2", "c3", "c4"), sep ="-", remove = F) %>%
  79. pivot_longer(cols = c("description", "c1", "c2", "c3", "c4"), names_to = "conditionGroup", values_to = "description") %>%
  80. mutate(description = str_trim(description, side = "both")) %>%
  81. na.omit() %>%
  82. filter(conditionGroup != "description" | grepl("-",description)) %>% #remove "description" conditionGroup if only one conditionGroup
  83. distinct() %>%
  84. mutate(conditionGroup = paste(projectName, conditionGroup) %>% as_factor %>% as.numeric()) %>%
  85. dplyr::rename(`conditionOf@Project` = projectName) %>%
  86. mutate(conditionType = case_when(
  87. description == "ovarian fluid" ~ "fluid",
  88. description == "plasma" ~ "fluid",
  89. description == "mucus" ~ "fluid",
  90. description == "pool of miRNA from mucus" ~ "fluid",
  91. description == "pool of miRNA from seminal fluid" ~ "fluid",
  92. description == "seminal fluid" ~ "fluid",
  93. description == "not stripped female" ~ "stripping",
  94. description == "stripped female" ~ "stripping",
  95. description == "control genetic line" ~ "genetic line",
  96. description == "selected genetic line" ~ "genetic line",
  97. description == "B57strain" ~ "genetic line",
  98. description == "AP2strain" ~ "genetic line",
  99. description == "A36strain" ~ "genetic line",
  100. description == "previtellogenesis" ~ "lifestage",
  101. description == "early vitellogenesis stage" ~ "lifestage",
  102. description == "mid vitellogenesis stage" ~ "lifestage",
  103. description == "late vitellogenesis stage" ~ "lifestage",
  104. description == "immature" ~ "lifestage",
  105. description == "mature" ~ "lifestage",
  106. description == "preovulated or prespermiant" ~ "lifestage",
  107. description == "ovulation" ~ "lifestage",
  108. description == "day of ovulation" ~ "lifestage",
  109. description == "21 days after ovulation" ~ "lifestage",
  110. description == "sampling days of ovulation" ~ "lifestage",
  111. description == "sampling 9 weeks after ovulation" ~ "lifestage",
  112. description == "sampling 18 weeks after ovulation" ~ "lifestage",
  113. description == "fish vaccinated twice against IPN virus" ~ "health",
  114. description == "control fish not infected" ~ "health",
  115. description == "vaccinated fish infected with VSHV virus" ~ "health",
  116. description == "fish infected with flavobacteria" ~ "health",
  117. description == "fish not infected control for flavobacteria" ~ "health",
  118. description == "fish not infected control for VHS" ~ "health",
  119. description == "fish infected with VSHV virus" ~ "health",
  120. description == "female" ~ "sex",
  121. description == "male" ~ "sex",
  122. description == "fish reared in enriched environment during 185 days" ~ "environment",
  123. description == "fish reared in non enriched environment during 185 days" ~ "environment",
  124. description == "male raised at 16°C for 8 months until they are spermiant" ~ "temperature",
  125. description == "male raised at 12°C for 8 months until they are spermiant" ~ "temperature",
  126. description == "fish reared in normoxia environment" ~ "oxygen",
  127. description == "fish reared in hypoxia environment" ~ "oxygen",
  128. description == "vegetal+yeast+insect+transformed animal proteins diet" ~ "nutrition",
  129. description == "commercial diet (fish meal+fish oil)" ~ "nutrition",
  130. description == "vegetal+yeast+insect diet" ~ "nutrition",
  131. description == "vegetal diet" ~ "nutrition",
  132. description == "commercial diet" ~ "nutrition",
  133. description == "vegetable diet" ~ "nutrition",
  134. description == "vegetable+microalgae diet" ~ "nutrition",
  135. description == "fingerling mother fed commercial diet" ~ "nutrition",
  136. description == "fingerling mother fed vegetable+microalgae diet" ~ "nutrition",
  137. description == "fingerling mother fed vegetable diet" ~ "nutrition",
  138. description == "challenged fish fed diet without carbohydrates at first feeding during 4 weeks" ~ "nutrition",
  139. description == "challenged fish fed diet without carbohydrate every other day at first feeding during 4 weeks" ~ "nutrition",
  140. description == "challenged fish fed diet with carbohydrates at first feeding during 4 weeks" ~ "nutrition",
  141. description == "fish fed with diet rich in carbohydrate during 4 weeks" ~ "nutrition",
  142. description == "fish fed with diet without carbohydrate during 4 weeks" ~ "nutrition",
  143. description == "classical feeding rate" ~ "nutrition",
  144. description == "restricted feeding rate" ~ "nutrition",
  145. description == "female fed adlibitum 5 months before ovulation" ~ "nutrition",
  146. description == "female fed at 80% of adlibitum (restricted) 5 months before ovulation" ~ "nutrition",
  147. description == "depigmented" ~ "flesh color",
  148. description == "pigmented" ~ "flesh color"
  149. )) %>%
  150. left_join(project %>% select(Project, projectName), by = c('conditionOf@Project' = 'projectName')) %>%
  151. mutate(`conditionOf@Project` = Project) %>%
  152. mutate(ExperimentalCondition = row_number()) %>%
  153. select(ExperimentalCondition, `conditionOf@Project`,
  154. conditionGroup,
  155. conditionType, description) #%>%
  156. #mutate(`isASubsetOf@ExperimentalCondition`)
  157. experimentalCondition
  158. #experimentalCondition %>%
  159. # write_csv(paste(datatables_path, "ExperimentalCondition.csv", sep = "/"), na = "")
  160. subsetsOfExperimentalCondition <- experimentalCondition %>%
  161. mutate(isASubset = grepl("-", description)) %>%
  162. tidyr::separate(description, into = c("c1", "c2", "c3", "c4"), sep ="-", remove = F) %>%
  163. pivot_longer(cols = c(c1, c2, c3, c4), values_drop_na = T) %>%
  164. select(-name) %>%
  165. mutate(value = if_else(isASubset, value, NA_character_)) %>%
  166. dplyr::rename(isASubsetOf = value) %>%
  167. select(ExperimentalCondition, `conditionOf@Project`, isASubsetOf) %>%
  168. left_join(experimentalCondition, by = c("isASubsetOf" = "description", "conditionOf@Project")) %>%
  169. select(ExperimentalCondition.x, ExperimentalCondition.y) %>%
  170. dplyr::rename(ExperimentalCondition = ExperimentalCondition.x) %>%
  171. dplyr::rename(`isASubsetOf@ExperimentalCondition` = ExperimentalCondition.y) %>%
  172. na.omit()
  173. subsetsOfExperimentalCondition
  174. #subsetsOfExperimentalCondition %>%
  175. # write_csv(paste(datatables_path, "SubsetOfExperimentalCondition.csv", sep = "/"), na = "")
  176. # Fish
  177. fish <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  178. select(sample_name, breedName, strain) %>%
  179. mutate(`organism@Organism` = 8022) %>%
  180. dplyr::rename(bioSampleName = sample_name) %>%
  181. tidyr::nest(names = bioSampleName) %>%
  182. mutate(Fish = row_number()) %>%
  183. tidyr::unnest(names) %>%
  184. select(Fish, `organism@Organism`, breedName, strain, bioSampleName)
  185. # Biosample
  186. bioSample <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  187. dplyr::select(sample_name, sameFishAs, tissue, ageInWeeks, lifeStage, reproductionStage, sex, weightInGrams, dietType,
  188. K, HSI, VSI, GSI, glucose, triglyceride, AATotal, prot, freeFattyAcid) %>%
  189. dplyr::rename(bioSampleName = sample_name) %>%
  190. left_join(select(organ, Organ, `rdfs:label`), by = c("tissue" = "rdfs:label")) %>%
  191. mutate(`sampledFluid@Organ` = Organ) %>%
  192. left_join(select(fish, Fish, bioSampleName), by = "bioSampleName") %>%
  193. dplyr::mutate(`sampledIn@Fish` = Fish) %>%
  194. dplyr::mutate(BioSample = row_number()) %>%
  195. select(BioSample, bioSampleName, sameFishAs, `sampledIn@Fish`, `sampledFluid@Organ`, ageInWeeks, lifeStage, reproductionStage,
  196. sex, weightInGrams, dietType, K, HSI, VSI, GSI, glucose, triglyceride, AATotal, prot, freeFattyAcid)
  197. fish <- fish %>%
  198. select(-bioSampleName) %>%
  199. distinct()
  200. fish
  201. fish %>%
  202. write_csv(paste(datatables_path, "Fish.csv", sep = "/"), na = "")
  203. bioSample
  204. bioSample %>%
  205. write_csv(paste(datatables_path, "BioSample.csv", sep = "/"), na = "")
  206. # link ExperimentalCondition and BioSample
  207. link_ExperimentalCondition_BioSample <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  208. select(sample_name, projectName, description) %>%
  209. #tidyr::separate_rows(description, sep = "-") %>%
  210. tidyr::separate(description, into = c("c1", "c2", "c3", "c4"), sep ="-", remove = F) %>%
  211. pivot_longer(cols = c("description", "c1", "c2", "c3", "c4"), names_to = "conditionGroup", values_to = "description") %>%
  212. na.omit() %>%
  213. mutate(description = str_trim(description, side = "both")) %>%
  214. na.omit() %>%
  215. filter(conditionGroup != "description" | grepl("-",description)) %>% #remove "description" conditionGroup if only one conditionGroup
  216. distinct() %>%
  217. left_join(select(project, Project, projectName), by = c("projectName" = "projectName")) %>%
  218. left_join(experimentalCondition, by = c("Project" = "conditionOf@Project", "description")) %>%
  219. left_join(bioSample, by = c("sample_name" = "bioSampleName")) %>%
  220. dplyr::rename(`isPartOf@ExperimentalCondition` = ExperimentalCondition) %>%
  221. select(BioSample, `isPartOf@ExperimentalCondition`)
  222. link_ExperimentalCondition_BioSample
  223. #link_ExperimentalCondition_BioSample %>%
  224. # write_csv(paste(datatables_path, "link_ExperimentalCondition_Sample.csv", sep = "/"), na = "")
  225. # MiRNAExpression
  226. #all_counts <- load_prost_compressed_by_annotation("~/Documents/phenomir/prost_postprocess/prost_3/sample_all_compressed_by_annotation.tsv")
  227. #saveRDS(object = all_counts, file = "all_miRNA_counts.RDS")
  228. miRNAExpression <- readRDS(paste(data_path, "all_miRNA_counts.RDS", sep = "/")) %>%
  229. select(omy_miRNA, where(is.numeric)) %>%
  230. pivot_longer(-omy_miRNA) %>%
  231. mutate(name = str_remove(name, "_cutadapt")) %>%
  232. mutate(name = str_remove(name, "_final_trimming")) %>%
  233. separate(name, into = c("measuredIn@BioSample", "norm"), sep = "_nor") %>%
  234. left_join(bioSample, by = c("measuredIn@BioSample" = "bioSampleName")) %>%
  235. mutate(`measuredIn@BioSample` = BioSample) %>% select(-BioSample) %>%
  236. mutate(norm = if_else(!is.na(norm), "rawCount", "rpm")) %>%
  237. pivot_wider(names_from = norm, values_from = value) %>%
  238. left_join(select(miRNA, MiRNA, miRNAName), by = c("omy_miRNA"="miRNAName")) %>%
  239. dplyr::rename(`miRNA@MiRNA` = MiRNA) %>%
  240. mutate(MiRNAExpression = row_number()) %>%
  241. select(MiRNAExpression, `miRNA@MiRNA`, `measuredIn@BioSample`,
  242. rawCount, rpm)
  243. miRNAExpression
  244. miRNAExpression %>%
  245. write_csv(paste(datatables_path, "miRNAExpression.csv", sep = "/"), na = "")
  246. # DifferentialAnalysis
  247. differentialAnalysis <- list.files(path = paste(data_path, "miRDE", sep = "/"), pattern = "*.RDS", full.names = T) %>%
  248. purrr::map_dfr(function(x) {readRDS(x) %>% as_tibble(rownames = "concernsMiRNA@MiRNA") %>%
  249. mutate(filename = base::basename(x))}) %>%
  250. left_join(select(miRNA, MiRNA, miRNAName), by = c("concernsMiRNA@MiRNA" = "miRNAName")) %>%
  251. mutate(`concernsMiRNA@MiRNA` = MiRNA) %>%
  252. mutate(DifferentialAnalysis = row_number()) %>%
  253. select(DifferentialAnalysis, `concernsMiRNA@MiRNA`,
  254. baseMean, log2FoldChange, lfcSE, padj, filename) %>%
  255. mutate(link_ExperimentalCondition = case_when(
  256. filename == "ne2_geniteur_time_11sem_0sem.RDS"~ "PROJECT:nutriegg2 female broodstockCONTROL:early vitellogenesis stageTREATMENT:mid vitellogenesis stage",
  257. filename == "ne2_geniteur_time_16sem_11sem.RDS"~ "PROJECT:nutriegg2 female broodstockCONTROL:mid vitellogenesis stageTREATMENT:late vitellogenesis stage",
  258. filename == "ne2_reprog_mother_origin_MA_vs_C.RDS"~ "PROJECT:nutriegg2 maternal nutritional reprogramationCONTROL:fingerling mother fed commercial dietTREATMENT:fingerling mother fed vegetable+microalgae diet",
  259. filename == "ne2_reprog_mother_origin_V_vs_C.RDS"~ "PROJECT:nutriegg2 maternal nutritional reprogramationCONTROL:fingerling mother fed commercial dietTREATMENT:fingerling mother fed vegetable diet",
  260. filename == "ninaqua_fl_diet_PA_vs_CO.RDS"~ "PROJECT:ninaqua FLCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal+yeast+insect+transformed animal proteins diet",
  261. filename == "ninaqua_fl_diet_V1_vs_CO.RDS"~ "PROJECT:ninaqua FLCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal diet",
  262. filename == "ninaqua_fl_diet_V2_vs_CO.RDS"~ "PROJECT:ninaqua FLCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal+yeast+insect diet",
  263. filename == "ninaqua_fl_lignee_T_vs_S.RDS"~ "PROJECT:ninaqua FLCONTROL:selected genetic lineTREATMENT:control genetic line",
  264. filename == "ninaqua_ss_diet_PA_vs_CO.RDS"~ "PROJECT:ninaqua SSCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal+yeast+insect+transformed animal proteins diet",
  265. filename == "ninaqua_ss_diet_V1_vs_CO.RDS"~ "PROJECT:ninaqua SSCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal diet",
  266. filename == "ninaqua_ss_diet_V2_vs_CO.RDS"~ "PROJECT:ninaqua SSCONTROL:commercial diet (fish meal+fish oil)TREATMENT:vegetal+yeast+insect diet",
  267. filename == "ninaqua_ss_lignee_T_vs_S.RDS"~ "PROJECT:ninaqua SSCONTROL:selected genetic lineTREATMENT:control genetic line",
  268. filename == "progrest_diet_HPR_vs_HP.RDS"~ "PROJECT:progrestCONTROL:challenged fish fed diet without carbohydrates at first feeding during 4 weeksTREATMENT:challenged fish fed diet without carbohydrate every other day at first feeding during 4 weeks",
  269. filename == "progrest_diet_LP_vs_HP.RDS"~ "PROJECT:progrestCONTROL:challenged fish fed diet without carbohydrates at first feeding during 4 weeksTREATMENT:challenged fish fed diet with carbohydrates at first feeding during 4 weeks",
  270. filename == "vim_treatment_IPNV_vs_Control.RDS"~ "PROJECT:VIMCONTROL:control fish not infectedTREATMENT:fish vaccinated twice against IPN virus",
  271. filename == "vim_treatment_VSHV_vs_Control.RDS"~ "PROJECT:VIMCONTROL:control fish not infectedTREATMENT:vaccinated fish infected with VSHV virus",
  272. filename == "eggpreserve_lc_J0_stripping_strippees_vs_non_strippees.RDS"~ "PROJECT:eggpreserveCONTROL:ovarian fluid-not stripped female-day of ovulationTREATMENT:ovarian fluid-stripped female-day of ovulation",
  273. filename == "eggpreserve_lc_non_strippees_time_J21_vs_J0.RDS"~ "PROJECT:eggpreserveCONTROL:ovarian fluid-not stripped female-day of ovulationTREATMENT:ovarian fluid-not stripped female-21 days after ovulation",
  274. filename == "eggpreserve_plasma_J0_stripping_strippees_vs_non_strippees.RDS"~ "PROJECT:eggpreserveCONTROL:plasma-not stripped female-day of ovulationTREATMENT:plasma-stripped female-day of ovulation",
  275. filename == "eggpreserve_plasma_J21_stripping_strippees_vs_non_strippees.RDS"~ "PROJECT:eggpreserveCONTROL:plasma-not stripped female-21 days after ovulationTREATMENT:plasma-stripped female-21 days after ovulation",
  276. filename == "eggpreserve_plasma_non_strippees_time_J21_vs_J0.RDS"~ "PROJECT:eggpreserveCONTROL:plasma-not stripped female-day of ovulationTREATMENT:plasma-not stripped female-21 days after ovulation",
  277. filename == "eggpreserve_plasma_strippees_time_J21_vs_J0.RDS"~ "PROJECT:eggpreserveCONTROL:plasma-stripped female-day of ovulationTREATMENT:plasma-stripped female-21 days after ovulation",
  278. filename == "sextiming_lifestage_male_immature_VS_male_premature.RDS"~ "PROJECT:SextimingCONTROL:immature-maleTREATMENT:preovulated or prespermiant-male",
  279. filename == "sextiming_lifestage_male_premature_VS_male_mature.RDS"~ "PROJECT:SextimingCONTROL:preovulated or prespermiant-maleTREATMENT:mature-male",
  280. filename == "sextiming_lifestage_female_immature_VS_female_premature.RDS"~ "PROJECT:SextimingCONTROL:immature-femaleTREATMENT:preovulated or prespermiant-female",
  281. filename == "sextiming_lifestage_female_premature_VS_female_mature.RDS"~ "PROJECT:SextimingCONTROL:preovulated or prespermiant-femaleTREATMENT:mature-female",
  282. filename == "sextiming_sex_female_immature_VS_male_immature.RDS"~ "PROJECT:SextimingCONTROL:immature-femaleTREATMENT:immature-male",
  283. filename == "sextiming_sex_female_premature_VS_male_premature.RDS"~ "PROJECT:SextimingCONTROL:preovulated or prespermiant-femaleTREATMENT:preovulated or prespermiant-male",
  284. filename == "sextiming_sex_female_mature_VS_male_mature.RDS"~ "PROJECT:SextimingCONTROL:mature-femaleTREATMENT:mature-male",
  285. filename == "hypox_plasma_hypoxia_no_carbo_vs_carbo.RDS"~ "PROJECT:HypoxCONTROL:plasma-fish reared in hypoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:plasma-fish reared in hypoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  286. filename == "hypox_plasma_normoxia_no_carbo_vs_carbo.RDS"~ "PROJECT:HypoxCONTROL:plasma-fish reared in normoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:plasma-fish reared in normoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  287. filename == "hypox_plasma_carbo_hypoxia_vs_normoxia.RDS"~ "PROJECT:HypoxCONTROL:plasma-fish reared in hypoxia environment-fish fed with diet rich in carbohydrate during 4 weeksTREATMENT:plasma-fish reared in normoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  288. filename == "hypox_plasma_no_carbo_hypoxia_vs_normoxia.RDS"~ "PROJECT:HypoxCONTROL:plasma-fish reared in hypoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:plasma-fish reared in normoxia environment-fish fed with diet without carbohydrate during 4 weeks",
  289. filename == "hypox_mucus_hypoxia_no_carbo_vs_carbo.RDS"~ "PROJECT:HypoxCONTROL:mucus-fish reared in hypoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:mucus-fish reared in hypoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  290. filename == "hypox_mucus_normoxia_no_carbo_vs_carbo.RDS"~ "PROJECT:HypoxCONTROL:mucus-fish reared in normoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:mucus-fish reared in normoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  291. filename == "hypox_mucus_carbo_hypoxia_vs_normoxia.RDS"~ "PROJECT:HypoxCONTROL:mucus-fish reared in hypoxia environment-fish fed with diet rich in carbohydrate during 4 weeksTREATMENT:mucus-fish reared in normoxia environment-fish fed with diet rich in carbohydrate during 4 weeks",
  292. filename == "hypox_mucus_no_carbo_hypoxia_vs_normoxia.RDS"~ "PROJECT:HypoxCONTROL:mucus-fish reared in hypoxia environment-fish fed with diet without carbohydrate during 4 weeksTREATMENT:mucus-fish reared in normoxia environment-fish fed with diet without carbohydrate during 4 weeks",
  293. filename == "heatmeth_plasma_temperature_16_vs_12.RDS"~ "PROJECT:HeatMethCONTROL:plasma-male raised at 16°C for 8 months until they are spermiantTREATMENT:plasma-male raised at 12°C for 8 months until they are spermiant",
  294. filename == "heatmeth_seminal_fluid_temperature_16_vs_12.RDS"~ "PROJECT:HeatMethCONTROL:seminal fluid-male raised at 16°C for 8 months until they are spermiantTREATMENT:seminal fluid-male raised at 12°C for 8 months until they are spermiant",
  295. filename == "vim_controled_line_treatment_control_vs_VSHV.RDS"~ "PROJECT:VIM with controled genetic lineCONTROL:fish not infected control for VHSTREATMENT:fish infected with VSHV virus",
  296. filename == "vim_controled_line_treatment_control_vs_flavobacteria.RDS"~ "PROJECT:VIM with controled genetic lineCONTROL:fish not infected control for flavobacteriaTREATMENT:fish infected with flavobacteria",
  297. filename == "vim_controled_line_line_AP2_vs_A36.RDS"~ "PROJECT:VIM with controled genetic lineCONTROL:AP2strainTREATMENT:A36strain",
  298. filename == "vim_controled_line_line_AP2_vs_B57.RDS"~ "PROJECT:VIM with controled genetic lineCONTROL:AP2strainTREATMENT:B57strain",
  299. filename == "bien_etre_condition_enriched_vs_non_enriched.RDS"~ "PROJECT:bien_etreCONTROL:fish reared in enriched environment during 185 daysTREATMENT:fish reared in non enriched environment during 185 days",
  300. filename == "qualipostov_plasma_color_pigmented_vs_depigmented.RDS" ~ "PROJECT:QualipostovCONTROL:plasma-female fed adlibitum 5 months before ovulation-sampling days of ovulation-pigmentedTREATMENT:plasma-female fed adlibitum 5 months before ovulation-sampling days of ovulation-depigmented",
  301. filename == "qualipostov_plasma_diet_adlibitum_vs_restricted.RDS" ~ "PROJECT:QualipostovCONTROL:plasma-female fed adlibitum 5 months before ovulation-sampling days of ovulation-pigmentedTREATMENT:plasma-female fed at 80% of adlibitum (restricted) 5 months before ovulation-sampling days of ovulation-pigmented",
  302. filename == "qualipostov_ovarian_fluid_diet_adlibitum_vs_restricted.RDS" ~ "PROJECT:QualipostovCONTROL:ovarian fluid-female fed adlibitum 5 months before ovulation-sampling days of ovulation-pigmentedTREATMENT:ovarian fluid-female fed at 80% of adlibitum (restricted) 5 months before ovulation-sampling days of ovulation-pigmented",
  303. filename == "qualipostov_plasma_date_9weeks_vs_18weeks.RDS" ~ "PROJECT:QualipostovCONTROL:plasma-female fed adlibitum 5 months before ovulation-sampling days of ovulation-pigmentedTREATMENT:plasma-female fed adlibitum 5 months before ovulation-sampling 9 weeks after ovulation-pigmented",
  304. filename == "qualipostov_plasma_date_ovulation_vs_9weeks.RDS" ~ "PROJECT:QualipostovCONTROL:plasma-female fed adlibitum 5 months before ovulation-sampling 9 weeks after ovulation-pigmentedTREATMENT:plasma-female fed adlibitum 5 months before ovulation-sampling 18 weeks after ovulation-pigmented",
  305. filename == "qualipostov_ovarian_fluid_color_pigmented_vs_depigmented.RDS" ~ "PROJECT:QualipostovCONTROL:ovarian fluid-female fed adlibitum 5 months before ovulation-sampling days of ovulation-pigmentedTREATMENT:ovarian fluid-female fed adlibitum 5 months before ovulation-sampling days of ovulation-depigmented",
  306. filename == "vdr_feeding_previtello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-previtellogenesis-classical feeding rateTREATMENT:commercial diet-previtellogenesis-restricted feeding rate",
  307. filename == "vdr_feeding_earlyvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-early vitellogenesis stage-classical feeding rateTREATMENT:commercial diet-early vitellogenesis stage-restricted feeding rate",
  308. filename == "vdr_feeding_midvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-mid vitellogenesis stage-classical feeding rateTREATMENT:commercial diet-mid vitellogenesis stage-restricted feeding rate",
  309. filename == "vdr_feeding_latevitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-late vitellogenesis stage-classical feeding rateTREATMENT:commercial diet-late vitellogenesis stage-restricted feeding rate",
  310. filename == "vdr_feeding_postvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-ovulation-classical feeding rateTREATMENT:commercial diet-ovulation-restricted feeding rate",
  311. filename == "vdr_diet_previtello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-previtellogenesis-classical feeding rateTREATMENT:vegetable+microalgae diet-previtellogenesis-classical feeding rate",
  312. filename == "vdr_diet_earlyvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-early vitellogenesis stage-classical feeding rateTREATMENT:vegetable+microalgae diet-early vitellogenesis stage-classical feeding rate",
  313. filename == "vdr_diet_midvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-mid vitellogenesis stage-classical feeding rateTREATMENT:vegetable+microalgae diet-mid vitellogenesis stage-classical feeding rate",
  314. filename == "vdr_diet_latevitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-late vitellogenesis stage-classical feeding rateTREATMENT:vegetable+microalgae diet-late vitellogenesis stage-classical feeding rate",
  315. filename == "vdr_diet_postvitello.RDS" ~ "PROJECT:NutriEgg_VDRCONTROL:commercial diet-ovulation-classical feeding rateTREATMENT:vegetable+microalgae diet-ovulation-classical feeding rate"
  316. )) %>%
  317. tidyr::extract(link_ExperimentalCondition, into = c("projectName","control_description", "treatment_description"),
  318. regex = "PROJECT:(.+)CONTROL:(.+)TREATMENT:(.+)") %>%
  319. left_join(select(project, Project, projectName), by = "projectName") %>%
  320. select(-projectName) %>%
  321. dplyr::rename(`analysisOf@Project` = Project) %>%
  322. left_join(select(experimentalCondition, ExperimentalCondition, description, `conditionOf@Project`),
  323. by = c("control_description" = "description", "analysisOf@Project" = "conditionOf@Project")) %>%
  324. dplyr::rename(`controlCondition@ExperimentalCondition` = ExperimentalCondition) %>%
  325. left_join(select(experimentalCondition, ExperimentalCondition, description, `conditionOf@Project`),
  326. by = c("treatment_description" = "description", "analysisOf@Project" = "conditionOf@Project")) %>%
  327. dplyr::rename(`treatmentCondition@ExperimentalCondition` = ExperimentalCondition) %>%
  328. select(DifferentialAnalysis, `concernsMiRNA@MiRNA`, `analysisOf@Project`,
  329. `controlCondition@ExperimentalCondition`, `treatmentCondition@ExperimentalCondition`,
  330. baseMean, log2FoldChange, lfcSE, padj, filename)
  331. ## askoRCondition
  332. askoRCondition <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  333. select(projectName, description) %>%
  334. distinct %>%
  335. left_join(experimentalCondition, by = c("projectName" = "conditionOf@Project", "description")) %>%
  336. mutate(AskoRCondition = paste(projectName, "-", description)) %>%
  337. dplyr::rename(`sameConditionAs@ExperimentalCondition` = ExperimentalCondition) %>%
  338. dplyr::rename(`conditionOf@Project` = projectName) %>%
  339. select(AskoRCondition, `conditionOf@Project`, description ,`sameConditionAs@ExperimentalCondition`)
  340. link_AskoRCondition_BioSample <- read_excel(paste(data_path, "biosample_attributes_extended.xlsx", sep = "/")) %>%
  341. select(projectName, description, sample_name) %>%
  342. left_join(bioSample, by = c("sample_name" = "bioSampleName")) %>%
  343. left_join(askoRCondition, by = c("projectName"="conditionOf@Project", "description")) %>%
  344. select(BioSample, AskoRCondition) %>% dplyr::rename(`isPartOf@AskoRCondition` = AskoRCondition)
  345. ## askoRContext
  346. askoRContext <- differentialAnalysis %>%
  347. select(`controlCondition@ExperimentalCondition`, `treatmentCondition@ExperimentalCondition`) %>%
  348. pivot_longer(everything()) %>%
  349. select(value) %>%
  350. distinct() %>%
  351. left_join(subsetsOfExperimentalCondition,
  352. by = c("value" = "isASubsetOf@ExperimentalCondition")) %>%
  353. mutate(`has@Condition` = if_else(is.na(ExperimentalCondition), value, ExperimentalCondition)) %>%
  354. left_join(experimentalCondition, by = c("value" = "ExperimentalCondition")) %>%
  355. mutate(AskoRContext = paste(`conditionOf@Project`, "-", description)) %>%
  356. select(value, AskoRContext, `has@Condition`) %>%
  357. left_join(askoRCondition, by = c("has@Condition" = "sameConditionAs@ExperimentalCondition")) %>%
  358. dplyr::rename(`sameContextAs@ExperimentalCondition` = value) %>%
  359. dplyr::rename(`has@AskoRCondition` = AskoRCondition) %>%
  360. select(AskoRContext, `has@AskoRCondition`, `sameContextAs@ExperimentalCondition`)
  361. ## askoRContrast
  362. askoRContrast <- differentialAnalysis %>%
  363. select(`controlCondition@ExperimentalCondition`, `treatmentCondition@ExperimentalCondition`) %>%
  364. distinct() %>%
  365. left_join(askoRContext %>% select(`sameContextAs@ExperimentalCondition`, AskoRContext),
  366. by = c("controlCondition@ExperimentalCondition" = "sameContextAs@ExperimentalCondition")) %>%
  367. dplyr::rename(`context1_of@AskoRContext` = AskoRContext) %>%
  368. distinct() %>%
  369. left_join(askoRContext %>% select(`sameContextAs@ExperimentalCondition`, AskoRContext),
  370. by = c("treatmentCondition@ExperimentalCondition" = "sameContextAs@ExperimentalCondition")) %>%
  371. dplyr::rename(`context2_of@AskoRContext` = AskoRContext) %>%
  372. distinct() %>%
  373. mutate(AskoRContrast = paste0(`context1_of@AskoRContext`, "VS", `context2_of@AskoRContext`)) %>%
  374. select(AskoRContrast, `context1_of@AskoRContext`, `context2_of@AskoRContext`,
  375. `controlCondition@ExperimentalCondition`,`treatmentCondition@ExperimentalCondition`)
  376. ## askoRTest
  377. askoRTest <- differentialAnalysis %>% left_join(askoRContrast) %>%
  378. dplyr::rename(`fromContrast@AskoRContrast` = AskoRContrast) %>%
  379. dplyr::rename(`sameAnalysisAs@DifferentialAnalysis` = DifferentialAnalysis) %>%
  380. mutate(AskoRTest = row_number()) %>%
  381. mutate(FC = (log2FoldChange/abs(log2FoldChange))*2**(abs(log2FoldChange))) %>%
  382. mutate(logFC = log2FoldChange) %>%
  383. mutate(pvalue = padj) %>%
  384. mutate(expression = case_when(
  385. pvalue > 0.05 ~ paste0(`context1_of@AskoRContext`, "=", `context2_of@AskoRContext`),
  386. FC > 0 ~ paste0(`context1_of@AskoRContext`, ">", `context2_of@AskoRContext`),
  387. FC < 0 ~ paste0(`context1_of@AskoRContext`, "<", `context2_of@AskoRContext`)
  388. )) %>%
  389. mutate(significance = (pvalue <= 0.05) * (log2FoldChange)/(abs(log2FoldChange))) %>%
  390. mutate(significance = if_else(is.na(pvalue) | pvalue == 1, 0, significance)) %>%
  391. select(AskoRTest, `concernsMiRNA@MiRNA`, `fromContrast@AskoRContrast`, logFC, FC, pvalue, expression, significance, `sameAnalysisAs@DifferentialAnalysis`)
  392. askoRContrast <- askoRContrast %>% select(AskoRContrast, `context1_of@AskoRContext`, `context2_of@AskoRContext`)
  393. # askoRContrast %>%
  394. # pivot_longer(cols = c(`context1_of@AskoRContext`, `context2_of@AskoRContext`)) %>%
  395. # mutate(name = if_else(name == "context1_of@AskoRContext", "+", "-")) %>%
  396. # pivot_wider(names_from = value, values_from = name) %>%
  397. # write_csv(paste(datatables_path, "askoRContrastMatrix.csv", sep = "/"), na = "")
  398. askoRCondition %>% select(-`sameConditionAs@ExperimentalCondition`) %>% write_csv(paste(datatables_path, "askoRCondition.csv", sep = "/"), na = "")
  399. link_AskoRCondition_BioSample %>% write_csv(paste(datatables_path, "link_AskoRCondition_BioSample.csv", sep = "/"), na = "")
  400. askoRContext %>% select(-`sameContextAs@ExperimentalCondition`) %>% write_csv(paste(datatables_path, "askoRContext.csv", sep = "/"), na = "")
  401. askoRContrast %>% write_csv(paste(datatables_path, "askoRContrast.csv", sep = "/"), na = "")
  402. askoRTest %>% select(-`sameAnalysisAs@DifferentialAnalysis`) %>% mutate(significance = as.character(significance)) %>% write_csv(paste(datatables_path, "askoRTest.csv", sep = "/"), na = "")

create_datatables_askoR.R at commit 6475dca, no license · at the source

Overview

Authors: Mariana Roza de Abreu1, Emilie Cardona1,2, Camille Lagarde1, Leo Milhade3, Goro Yoshizaki4, Violette Thermes1, Julien Bobe1
ORCID iDs: Julien Bobe
  1. INRAE, LPGP, Rennes, 35000 France
  2. INRAE, Univ. Pau & Pays Adour, E2S UPPA, NUMEA, Saint-Pée-Sur-Nivelle, 64310 France
  3. IRISA, INRIA, CNRS, Université de Rennes 1, Rennes, 35000 France
  4. Tokyo University of Marine Science and Technology, Tokyo, Japan
Journal: BMC biology, volume 24, issue 1, article 166
Dates: received 5 December 2025; accepted 14 May 2026; published online 21 May 2026
Type: Research article · Language: English
License: CC BY-NC-ND
Identifiers: DOI 10.1186/s12915-026-02643-2 · PMID 42168984 · PMCID PMC13374286 · OpenAlex W7161976911
Open access: gold, a free copy (OpenAlex)
Status: code verified
Categories: other (organism), cellular / molecular (subfield)
Methods: Statistics, Smoothing, state filtering, decompositions, Machine learning, Preprocessing
Keywords: Biomarker, Egg quality, MiR-139, MiR-202, MiR-457a, MiR-135c, Iteroparity
MeSH: Brain*, Circulating MicroRNA*, MicroRNAs*, Oncorhynchus mykiss*, Ovum*, Reproduction*, Animals, Female, Ovary (* major topic)
Topic: Reproductive biology and impacts on aquatic species (Physiology, Biochemistry, Genetics and Molecular Biology), according to OpenAlex
Citations: not cited yet (Europe PMC); 43 references in the paper

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

INRAE-LPGP/phenomir

License: none: the authors keep all their rights
State: the link answers, verified on 28 September 2026
Evidence: files inventoried
Commit: 6475dca11d0e4e79a6595dc454230906b575468a, 10 April 2023
Languages: R (39), JavaScript (12), Python (1), Shell (1)
Size: 268 files, 53 scripts
Software Heritage: not archived
Found in: “Data availability”
Holds: README, environment (prost/environment.yml), 18 notebooks
Not found: license file, CITATION.cff, tests, continuous integration, documentation
Tools: tidyverse (35 files), DESeq2 (19 files), ggplot2 (16 files), ggpubr (2 files), Nextflow (1 file), pheatmap (1 file)
Availability: 1 check, the latest on 28 September 2026: the link answers
  • 28 September 2026: the link answers
54 files

The paper's code and data availability statement is in the Data section.

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;
  • 53 scripts, each with its path and the digest of its content;
  • 3 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

Code and data availability statement

The paper has a code and data availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:

Read it in the paper: doi.org/10.1186/s12915-026-02643-2.

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

  • Funding: added European Commission: 817923; Agence Nationale de la Recherche: ANR-16-CE20-0001; Institut National de Recherche pour l'Agriculture, l'Alimentation et l'Environnement

Version 1, 28 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 7 authors, 7 keywords, 9 MeSH terms, 40 references.

Cite

This paper

Roza de Abreu, M., Cardona, E., Lagarde, C., Milhade, L., Yoshizaki, G., Thermes, V., & Bobe, J. (2026). Circulating microRNAs reveal egg-brain crosstalk and a brain-predominant microRNA linked to the onset of the next reproductive cycle in iteroparous salmonids. BMC biology, 24(1), 166. https://doi.org/10.1186/s12915-026-02643-2

BibTeX

@article{rozadeabreu2026circulating,
author = {Roza de Abreu, Mariana and Cardona, Emilie and Lagarde, Camille and Milhade, Leo and Yoshizaki, Goro and Thermes, Violette and Bobe, Julien},
title = {{Circulating microRNAs reveal egg-brain crosstalk and a brain-predominant microRNA linked to the onset of the next reproductive cycle in iteroparous salmonids}},
journal = {BMC biology},
year = {2026},
month = may,
volume = {24},
number = {1},
pages = {166},
publisher = {BMC},
issn = {1741-7007},
doi = {10.1186/s12915-026-02643-2},
url = {https://doi.org/10.1186/s12915-026-02643-2},
pmid = {42168984},
pmcid = {PMC13374286}
}

RIS

TY - JOUR
AU - Roza de Abreu, Mariana
AU - Cardona, Emilie
AU - Lagarde, Camille
AU - Milhade, Leo
AU - Yoshizaki, Goro
AU - Thermes, Violette
AU - Bobe, Julien
TI - Circulating microRNAs reveal egg-brain crosstalk and a brain-predominant microRNA linked to the onset of the next reproductive cycle in iteroparous salmonids
T2 - BMC biology
J2 - BMC Biol
PY - 2026
DA - 2026/05/21
VL - 24
IS - 1
SP - 166
SN - 1741-7007
PB - BMC
DO - 10.1186/s12915-026-02643-2
UR - https://doi.org/10.1186/s12915-026-02643-2
LA - en
ER -

CSL-JSON

{
"id": "10.1186/s12915-026-02643-2",
"type": "article-journal",
"title": "Circulating microRNAs reveal egg-brain crosstalk and a brain-predominant microRNA linked to the onset of the next reproductive cycle in iteroparous salmonids",
"container-title": "BMC biology",
"author": [
{
"family": "Roza de Abreu",
"given": "Mariana"
},
{
"family": "Cardona",
"given": "Emilie"
},
{
"family": "Lagarde",
"given": "Camille"
},
{
"family": "Milhade",
"given": "Leo"
},
{
"family": "Yoshizaki",
"given": "Goro"
},
{
"family": "Thermes",
"given": "Violette"
},
{
"family": "Bobe",
"given": "Julien"
}
],
"container-title-short": "BMC Biol",
"volume": "24",
"issue": "1",
"page": "166",
"DOI": "10.1186/s12915-026-02643-2",
"PMID": "42168984",
"PMCID": "PMC13374286",
"ISSN": "1741-7007",
"publisher": "BMC",
"URL": "https://doi.org/10.1186/s12915-026-02643-2",
"language": "en",
"issued": {
"date-parts": [
[
2026,
5,
21
]
]
}
}

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.21203/rs.3.rs-9927928/v1 [code]
Genome-wide and allele-resolved maps of the radial architecture of the mouse genome
Journal: Research Square (preprint)
In common: Nextflow, DESeq2, pheatmap, 3 other tools, 1 reference
[2] doi:10.1016/j.xcrm.2026.102682 [code]
TET CpG sequence-context-specific DNA demethylation shapes progression of IDH-mutant gliomas.
Journal: Cell reports. Medicine
In common: Nextflow, DESeq2, pheatmap, 3 other tools
[3] doi:10.1002/alz.71337 [code]
Tracking tau and cellular responses in human iPSC-microglia: from uptake to seedable secretion, including in extracellular vesicles.
Journal: Alzheimer's & dementia : the journal of the Alzheimer's Association
In common: DESeq2, pheatmap, ggpubr, 2 other tools, cellular / molecular, 2 references
[4] doi:10.1128/msystems.00416-26 [code]
Integrative multicohort analysis reveals consistent sex differences in gut microbiota of multiple sclerosis patients.
Journal: mSystems
In common: DESeq2, pheatmap, ggpubr, 2 other tools, 2 references
[5] doi:10.1093/gbe/evag197 [code]
Molecular Drivers of Mutualistic Association Between Anemone and Anemonefish.
Journal: Genome biology and evolution
In common: DESeq2, pheatmap, ggpubr, 2 other tools, other, cellular / molecular, 1 reference
[6] doi:10.1038/s41586-026-10629-x [code]
Whole-genome duplication shaped cell-type evolution in the vertebrate brain.
Journal: Nature
In common: DESeq2, pheatmap, ggpubr, 2 other tools, other, cellular / molecular, 1 reference
[7] doi:10.1038/s41586-026-10512-9 [code]
Astrocyte glucocorticoid receptor signalling restricts neuronal plasticity.
Journal: Nature
In common: DESeq2, pheatmap, ggpubr, 2 other tools, cellular / molecular, 1 reference
[8] doi:10.1371/journal.ppat.1013916 [code]
Characterization of atypical Ebola virus disease in ferrets.
Journal: PLoS pathogens
In common: DESeq2, pheatmap, ggpubr, 2 other tools, other, 1 reference
[9] doi:10.1016/j.isci.2026.115196 [code]
Transcriptional and cellular maturation of the chick spinal cord in the context of distinct neuromuscular circuits.
Journal: iScience
In common: DESeq2, pheatmap, ggpubr, 2 other tools, other, 1 reference
[10] doi:10.1038/s41467-026-73305-8 [code]
Comparative analysis of the cellular landscape in mammalian striatum.
Journal: Nature communications
In common: DESeq2, pheatmap, ggpubr, 2 other tools, other, cellular / molecular

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.