0
{library(Seurat)
library(tidyverse)
library(purrr)}



dirNames <- unique(dirname(list.files("data/scRNA_CITE",
                          full.names = T,
                          recursive = T)))


######


#reading multiple directories and a resultant list
dat <- purrr::map(dirNames, Read10X)
names(dat) <- dirNames

#reading just one file
#M06 <- Read10X(data.dir = "data/m06/filtered_feature_bc_matrix/")

#renaming the rows of a list element (here named antibody capture) within one list works! 
rownames(x = M06[["Antibody Capture"]]) <- gsub(pattern = "*_TotalSeqC", replacement = "", 
                                                x = rownames(x = M06[["Antibody Capture"]]))

#creating function for purrr
change_rname <- function(x){
  rownames(x[["Antibody Capture"]]) <- sub(pattern = "*_TotalSeqC", replacement = "", x[["Antibody Capture"]])
}

  
 # using the same function to rename multiple elements within multiple lists of a bigger list works temporarily BUT DOES not get saved within the bigger list
purrr::map(dat,
           ~change_rname(.x))

ファイルをロードできるようにするために、これの reprex を作成する方法がわかりません。関数をpurrrで動作させ、リスト要素の名前変更を可能にする方法は?

reprex パッケージ(v0.3.0)により 2020-12-01 に作成

4

1 に答える 1