我是R的新手,正在尝试使用相对较大的数据帧。我正试图将一个大的数据帧缩减为我所需要的变量。我想好了如何使用data.frame
函数来实现这一点。但是,有没有办法在同一步骤中更改变量名?
以下示例:
假设我现有的数据集有10个变量(列):Var1、var2、var3……我只想留下前两个变量。所以我写:
small_data <- data.frame(var1, var2)
所以问题是,我能以某种方式更改data.frame
函数中变量的名称吗?
你可以这样做:
> var1 <- runif(5)
> var2 <- runif(5)
> data.frame(new.name1 = var1, new.name2 = var2)
new.name1 new.name2
1 0.9658143 0.16985282
2 0.2662441 0.37762692
3 0.1374154 0.04857553
4 0.7738637 0.05170524
5 0.1480800 0.67682980
> x <- data.frame(new.name1 = var1, new.name2 = var2)
> colnames(x) <- c("old.name1", "old.name2")
> x
old.name1 old.name2
1 0.9658143 0.16985282
2 0.2662441 0.37762692
3 0.1374154 0.04857553
4 0.7738637 0.05170524
5 0.1480800 0.67682980
您可以在一行中完成此操作。
small_data <- with(big_data, data.frame(var1_new=var1,var2_new=var2))
small <- bigger[ , 1:2]
names(small) <- c("firstnm", "secndnm")