遇见数据集

Single-cell transcriptomics of melanoma sentinel lymph nodes identifies immune cell signatures associated with metastasis

收藏
Zenodo2026-01-07 更新2026-05-26 收录
官方服务:

资源简介:

Cell-level raw counts for RNA and ADT (cell-surface protein) expression. A seurat object can be created from these files in R, for example: ## 1. libraries --------------------------------------------------------------if (!requireNamespace("Seurat", quietly = TRUE)) stop("install.packages('Seurat')")if (!requireNamespace("Matrix", quietly = TRUE)) stop("install.packages('Matrix')")if (!requireNamespace("data.table", quietly = TRUE)) install.packages("data.table") library(data.table)library(Seurat)library(data.table) ## check versionspkgs <- c("Seurat", "data.table", "Matrix")v <- vapply(pkgs, function(p) as.character(packageVersion(p)), character(1))print(v)# Seurat data.table Matrix # "5.0.0" "1.14.8" "1.6.3" ## 2. helper to read a MatrixMarket triple + row/col names -------------------- read_mtx <- function(mtx_path, row_csv, barcode_csv) { mat <- Matrix::readMM(mtx_path) rows <- data.table::fread(row_csv, header = FALSE)[[1]] if (length(rows) == nrow(mat) + 1) rows <- rows[-1] # drop header stopifnot(length(rows) == nrow(mat)) cols <- data.table::fread(barcode_csv, header = FALSE)[[1]] if (length(cols) == ncol(mat) + 1) cols <- cols[-1] # drop header stopifnot(length(cols) == ncol(mat)) rownames(mat) <- rows colnames(mat) <- cols mat} ## 3. load counts and metadata ----------------------------------------------rna_counts <- read_mtx("RNA_counts.mtx", "RNA_genes.csv", "RNA_barcodes.csv")adt_counts <- read_mtx("ADT_counts.mtx", "ADT_features.csv","RNA_barcodes.csv") # same barcodesmeta <- data.table::fread("seurat_metadata_full.csv", data.table = FALSE)rownames(meta) <- colnames(rna_counts) # ensure 1-to-1 alignment ## 4. build Seurat object ----------------------------------------------------seu <- Seurat::CreateSeuratObject( counts = rna_counts, assay = "RNA", project = "Rebuilt", meta.data = meta) # add ADT as a separate assayadt_assay <- Seurat::CreateAssayObject(counts = adt_counts)Seurat::DefaultAssay(adt_assay) <- "ADT"seu[["ADT"]] <- adt_assay # tidy upSeurat::Key(seu[["ADT"]]) <- "adt_"Seurat::DefaultAssay(seu) <- "RNA" ## 5. save -------------------------------------------------------------------saveRDS(seu, file = "seurat_rebuilt.rds")# peek at first 5×5 slice of RNA & ADT count layers## RNA -----------------------------------------------------------------------rna_slice <- Seurat::GetAssayData(seu[["RNA"]], layer = "counts")[1:5, 1:5]cat("\n── RNA (first 5 genes × 5 cells) ──\n")print(as.matrix(rna_slice)) # coercion only for nicer console display ## ADT -----------------------------------------------------------------------adt_slice <- Seurat::GetAssayData(seu[["ADT"]], layer = "counts")[1:5, 1:5]cat("\n── ADT (first 5 features × 5 cells) ──\n")print(as.matrix(adt_slice))

提供机构:
Zenodo
创建时间:
2025-01-30
二维码
社区交流群
二维码
科研交流群
商业服务