From 7783c3de83d645df29f3c8e377519086ec023203 Mon Sep 17 00:00:00 2001 From: Louis Date: Thu, 15 May 2025 22:12:34 +0200 Subject: [PATCH] =?UTF-8?q?Ajout=20script=20pour=20r=C3=A9cup=C3=A9ration?= =?UTF-8?q?=20donn=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- retrieve-data.R | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/retrieve-data.R b/retrieve-data.R index 07b0b0d..32dd996 100644 --- a/retrieve-data.R +++ b/retrieve-data.R @@ -6,3 +6,32 @@ if ("MicroBioMap" %in% rownames(installed.packages()) == FALSE) { BiocManager::install("blekhmanlab/MicroBioMap") } library(MicroBioMap) +library(countrycode) +library(igraph) +library(here) +library(readr) +setClassUnion("ExpData", c("matrix", "SummarizedExperiment")) +cpd <- getCompendium(version = "1.0.1") + +colData(cpd)$country <- countrycode(colData(cpd)$iso, "iso2c", "country.name") + +projects <- unique(colData(cpd)$project) + +save_folder <- here("data") +if (!dir.exists(save_folder)) { + dir.create(save_folder) +} + +for (project in projects) { + cat("Processing project:", project, "\n") + # Filter the compendium for the current project + project_data <- cpd[, colData(cpd)$project == project] + matrix_data <- counts(project_data) + # Create a graph from the matrix data + g <- graph_from_biadjacency_matrix(matrix_data) + edge_list <- as_edgelist(g) |> as.data.frame() + colnames(edge_list) <- c("source", "target") + write_csv(edge_list, file = here(save_folder, paste0(project, "_edge_list.csv.gz"))) + supinfo_df <- as.data.frame(colData(project_data)) + write_csv(supinfo_df, file = here(save_folder, paste0(project, "_supinfo.csv.gz"))) +}