如何在R中使用变量标签?

时间:2012-02-13 21:16:48

标签: r variables loops character labels

我有一个函数,它将输入作为数据框的列名称columnname~1

数据框由大约50列组成,我想重复这个过程,我可以

使用for循环生成列名作为字符,遗憾的是函数

不承认。区别仅在于M1~1(有效)与"M1"~1

欢迎任何建议

4 个答案:

答案 0 :(得分:4)

使用“[[功能?

datafrm[[M1]] ~ 1

该函数将解释字符值并将其转换为语言值。或者您可以使用do.call功能。如果我们有数据框和功能的详细信息,那么即将发布最佳答案。

答案 1 :(得分:4)

尝试:

as.formula(paste("M1","1",sep="~"))

答案 2 :(得分:3)

或者作为粘贴的替代方法,您可以使用sprintf:

variablename = "M1"
as.formula(sprintf("%s ~ 1", variablename))

答案 3 :(得分:1)

您也可以使用:

substitute(columnname~1,list(columnname=as.name("M1")))

修改

当您替换" M1"包含变量的字符串(M1< - " M1")。