如何从向量获取值并将其分配为新数据框的名称



在r我有名称的向量:

[1] "ALKR50SV" "AMKR71SV" "AOKR71SV" "AZKR52SV" "BFKR70SV" "BJKR61SV" "BUKR6HSV" 
    "CDKR61SV" "CFKR31SV"

我想将它们用作每个新数据框的名称

喜欢ALKR50SV的数据框架,Alkr50SV的数据框

对于循环,例如:

NAME[i] <- data1

会引起问题。

我该怎么办?谢谢。

正如@Joran和@neilfws所说,最好与data.frame s的list一起工作。例如,考虑以下三个data.frame S

的列表
lst <- lapply(1:3, function(x) as.data.frame(matrix(sample(20), ncol = 4)));

您可以命名list Elements

names(lst) <- c("ALKR50SV", "AMKR71SV", "AOKR71SV");

使用lapplylist元素上操作,例如

lapply(lst, dim);
#$ALKR50SV
#[1] 5 4
#
#$AMKR71SV
#[1] 5 4
#
#$AOKR71SV
#[1] 5 4

您可以使用assign

numbers <- c('one', 'two', 'three')
for (i in 1:3) {
    assign(nms[i], i)
}
one # 1
two # 2
three # 3

但是,正如其他人所评论的那样,很可能最好将您的数据范围放入命名列表中。

最新更新