我想为每个特征列创建一个向量(在下面的例子中,列a到t),其中对于每个向量,将包含第一列和特征列。以下只是一个示例数据框。实际数据较大。
string <- randomStrings(n=1000, len = 5, digits = T, upperalpha = T,
loweralpha = T, unique = T, check = T)
df <- data.frame(replicate(21,sample(-100:150,80,rep = T)))
df[,1] <- string[1:80]
colnames(df)[-1] <- letters[1:20]
names(df)[1] <- paste("ID")
前三个特征列的所需脚本如下所示:
id_a <- df[,c(1,2)]
id_b <- df[,c(1,3)]
id_c <- df[,c(1,4)]
我应该如何在一次运行中对所有特征列执行此操作?
答案 0 :(得分:1)
这一行将会这样做:
for (i in 2:ncol(df)) assign(paste0("id_", names(df)[i]), df[ , c(1, i)])