0

我正在尝试创建一个 for 循环来分析具有不同子集的大型 phyloseq 对象。我试图为每次迭代调用每个列表对象的名称,以便我可以使用不同的名称保存结果。

制作 phyloseq 对象列表

subset1 <- excluded_data %>%
  subset_samples(Animal == "Chronic Stress" & Sex == "Male" & Time.Point =="After")

subset2 <- excluded_data %>%
  subset_samples(Animal == "Chronic Stress" & Sex == "Male")
                 
listofsubsets <- list(list1 = subset1, list2= subset2)

当我这样称呼时:

names(listofsubsets)

names(listofsubsets)
[1] "list1" "list2"

伟大的。

所以我继续我的 for 循环:

for(l in listofsubsets[1:2]) {
  
  print(l)
  
#do analysis stuff

#example use for name

NMDSname <- paste(NAMEOFITERATION, "NMDS_results", ".txt", sep = "_")

}

l完美地用于下游分析,因为

> l
phyloseq-class experiment-level object
otu_table()   OTU Table:         [ 39751 taxa and 19 samples ]
sample_data() Sample Data:       [ 19 samples by 9 sample variables ]
tax_table()   Taxonomy Table:    [ 39751 taxa by 7 taxonomic ranks ]

但它不叫名字。

>   print(names(listofsubsets$l))
NULL

谢谢!

4

0 回答 0