我有data.frame 11060x9(r x c)
。
我正在尝试将所有这9列分组,以创建9个独立的向量,称为" ST [i]"。 我知道我可以打字输入
ST1 <- df[ ,1]
ST2 <- df[ ,2]
...
ST9 <- df[ ,9]
虽然,我想知道一种简化的方法,如下:
for(i in 1:ncol(df)){
ST[i] <- df[ , i]
}
但是出现了以下信息:
&#34; ST [i]&lt; - df [,i]中的错误:对象&#39; ST&#39;找不到&#34;
如何解决?
答案 0 :(得分:-5)
我将如何做到这一点:
x <- data.frame(NA, NA, NA, NA, NA, NA, NA, NA, NA)
names <- as.character(rep(NA, ncol(x)))
for (i in 1:ncol(x)) {
names[i] <- paste('ST', i, sep = "")
assign(names[i], as.data.frame(x[,i], col.names = ""))
}
当您想要创建多个矢量/数据帧时, assign()
是一个非常有用的功能。