quiet_library <- function(...) { suppressPackageStartupMessages(library(...)) } quiet_library(hise) quiet_library(dplyr) quiet_library(purrr) quiet_library(ggplot2) BR1_rna_desc <- getFileDescriptors( fileType = "scRNA-seq-labeled", filter = list(cohort.cohortGuid = "BR1")) BR2_rna_desc <- getFileDescriptors( fileType = "scRNA-seq-labeled", filter = list(cohort.cohortGuid = "BR2")) BR1_rna_desc <- fileDescToDataframe(BR1_rna_desc) BR2_rna_desc <- fileDescToDataframe(BR2_rna_desc) meta_data <- plyr::rbind.fill(BR1_rna_desc , BR2_rna_desc ) meta_data <- meta_data %>% filter(!grepl("EXP",file.batchID)) %>% filter(!file.batchID == "B004") non_healthy <- meta_data %>% filter(sample.diseaseStatesRecordedAtVisit != "") %>% select(subject.subjectGuid, sample.diseaseStatesRecordedAtVisit) %>% unique() non_healthy meta_data <- meta_data %>% filter(!subject.subjectGuid %in% non_healthy$subject.subjectGuid) reference_sample_uuid <- '2da66a1a-17cc-498b-9129-6858cf639caf' hise_res <- cacheFiles(list(reference_sample_uuid)) reference_meta <- read.csv("cache/2da66a1a-17cc-498b-9129-6858cf639caf/ref_h5_meta_data_2024-02-18.csv") meta_data$pbmc_sample_id <- gsub("_","",paste0("PB0",substr(sub(".*PB0", "", meta_data$file.name),1,8))) reference_meta_data <- meta_data %>% filter(sample.sampleKitGuid %in% reference_meta$sample.sampleKitGuid) %>% filter(file.id %in% reference_meta$file.id) %>% mutate(sample.reference = "in_reference") non_reference_meta_data <- meta_data %>% filter(!sample.sampleKitGuid %in% reference_meta$sample.sampleKitGuid) %>% arrange(pbmc_sample_id) %>% filter(!duplicated(sample.sampleKitGuid, fromLast = TRUE)) %>% mutate(sample.reference = "not_in_reference") meta_data <- rbind(reference_meta_data, non_reference_meta_data) meta_data <- meta_data %>% arrange(sample.sampleKitGuid) table(meta_data$sample.reference) nrow(meta_data) table(meta_data$cohort.cohortGuid) meta_data <- meta_data %>% mutate(sample.visitName = ifelse( sample.visitName == "Other - Non-Flu", sample.visitDetails, sample.visitName )) options(repr.plot.width = 6, repr.plot.height = 16) ggplot() + geom_tile( data = meta_data, aes(x = sample.visitName, y = subject.subjectGuid, fill = sample.visitName), color = "black" ) + scale_fill_brewer( type = "qual", palette = 3 ) + scale_x_discrete(expand = c(0,0)) + scale_y_discrete(expand = c(0,0)) + theme_bw() + theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3)) options(repr.plot.width = 16, repr.plot.height = 16) ggplot() + geom_tile( data = meta_data, aes(x = file.batchID, y = subject.subjectGuid, fill = sample.visitName), color = "black" ) + scale_fill_brewer( type = "qual", palette = 3 ) + scale_x_discrete(expand = c(0,0)) + scale_y_discrete(expand = c(0,0)) + theme_bw() + theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.3)) if(!dir.exists("output")) { dir.create("output") } out_file <- file.path( "output", paste0("diha_sample_meta_data_",Sys.Date(),".csv") ) write.csv( meta_data, out_file, row.names = FALSE, quote = FALSE ) res <- map( meta_data$file.id, function(file.id) { capture.output(cacheFiles(list(file.id))) } ) study_space_uuid <- "de025812-5e73-4b3c-9c3b-6d0eac412f2a" title <- paste("DIHA Sample Metadata", Sys.Date()) in_list <- as.list(meta_data$file.id) out_list <- list(out_file) uploadFiles( files = out_list, studySpaceId = study_space_uuid, title = title, inputFileIds = in_list, store = "project", doPrompt = FALSE ) sessionInfo()