输入到级别功能 - R.

时间:2013-10-10 16:49:27

标签: r

我有一个Rscript,可以在数据集上创建各种2D图表。我希望能够根据我想要查看的关系更改X变量。所以我将X变量作为命令行参数。除了动机,我希望能够运行命令:

scoreData <- read.csv(..)
xVarString <- args[0]
levels(paste(scoreData$,xVarString,sep=""))

但它只返回NULL。我知道paste会返回一个字符串。我知道levels()不接受字符串。我不知道的是level函数接受的类型。我试过了

levels(as.vector(paste(scoreData$,xVarString,sep="")))
levels(as.list(paste(scoreData$,xVarString,sep="")))
levels(as.data.frame(paste(scoreData$,xVarString,sep="")))

作为一般性问题,是否有一个显示R函数输入/输出/文档的地方,类似于.NET文档和Java文档?我找到了很多教程,但没有直接的功能文档。

提前解决问题。

1 个答案:

答案 0 :(得分:1)

levels接受类factor的向量(函数levels(x)实际上只是attr(x, "levels")的简写。

您需要将实际的数据列传递给levels"ScoreData$Column1"只会传递字符串(正如您指出的那样)。你可以这样做:

levels(scoreData[,xVarString])

假设xVarString是所需列名称的字符串。一种更简单的方法是:

sapply(scoreData, levels)

查看按列分隔的所有级别。