如何使用R中的data.frame函数提取变量子集并重命名它们?

时间:2012-02-26 02:33:44

标签: r dataset

我是R的新手,我正在尝试使用相对较大的数据框。我试图将大数据帧减少到我需要的变量。我有点想通过data.frame函数来做到这一点。但是,有没有办法在同一步骤中更改变量名称?

以下示例:

假设我的现有数据集有10个变量(列):Var1,var2,var3 ......我只想留下前2个变量。所以我写道:

small_data <- data.frame(var1, var2)

所以问题是我可以以某种方式更改data.frame函数中变量的名称吗?

3 个答案:

答案 0 :(得分:3)

你可以这样做:

> 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

答案 1 :(得分:1)

您可以在一行中完成此操作。

small_data <- with(big_data, data.frame(var1_new=var1,var2_new=var2))

答案 2 :(得分:0)

small <- bigger[ , 1:2]
names(small) <- c("firstnm", "secndnm")