【发布时间】:2013-11-01 16:16:04
【问题描述】:
考虑下面的代码
a = "col1"
b = "col2"
d = data.frame(a=c(1,2,3),b=c(4,5,6))
此代码生成以下数据帧
a b
1 1 4
2 2 5
3 3 6
但是想要的数据框是
col1 col2
1 1 4
2 2 5
3 3 6
此外,我希望能够执行类似d$a 的操作,然后从a = "col1" 开始获取d$col1
我如何告诉 R "a" 是一个变量而不是列名?
【问题讨论】:
-
你不能这样使用
$。 See here 了解有关原因的更多信息。但是,您可以通过d[ , a ]来实现您想要的。 -
试试这个代码。知道如何避免这个错误,或者这个错误是什么?列名 = "col1";值 = 5; d = data.frame(); d[,columnName] = 值;
-
您有一个空数据框。里面没有变量“columnName”,所以不能调用或者赋值。
-
那么我该如何解决这个问题以使其正常工作?我想从一个空的数据框开始
-
我想你可以从
d = data.frame(NA)开始,尽管你的数据框中总是有一列NAs。我通常不会从空数据框开始。