[英]How can I filter a list within a for-loop in R so my script to move files from one folder to another will function?
[英]How can I reference a character within my list of characters as a string in a for-loop
我有幾個字符列表,以及這些字符列表的列表。
C1 <- c('a', 'b', 'c')
C2 <- c('d', 'e', 'f')
C3 <- c('g', 'h', 'i')
char_list <- list(C1, C2, C3)
在我的嵌套 for 循環中,我試圖將每個生成的 FeaturePlot 導出為
“C1_a”、“C1_b”、“C1_c”、“C2_a”、“C2_b”、“C2_c”等...
for(c in char_list){
for(g in c){
png(paste0(c, '_', g, ".png"))
plot(FeaturePlot(object = MG_Subset1, reduction = "umap", label = TRUE, min.cutoff = 0, features = g))
dev.off()
}
}
我最終得到的是“a_a”、“a_b”、“a_c”、“d_d”、“d_e”、“d_e”等......
誰能告訴我如何在不破壞 for 循環的情況下將我的 char_list 內容引用為字符串,以便我可以調整下面的行以將 c 引用為“C1”或“C2”?
png(paste0(c, '_', g, ".png"))
太感謝了。
在這里,我們可能需要創建一個命名list
。 可以通過在=
的 lhs 上指定名稱或使用mget
根據對象名稱模式提取對象的值來完成
char_list <- list(C1 = C1, C2 = C2, C3 = C3)
#char_list <- mget(ls(pattern = "^C\\d+$"))
然后遍歷列表的序列或列表的名稱,然后提取列表元素
for(i in seq_along(char_list)) {
c <- char_list[[i]]
nm <- names(char_list[i])
for(g in c) {
png(paste0(nm, '_', g, ".png"))
plot(FeaturePlot(object = MG_Subset1, reduction = "umap", label = TRUE, min.cutoff = 0, features = g))
dev.off()
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.