0

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

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

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

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 文档?我找到了很多教程,但没有直接的函数文档。

提前谢谢。

4

1 回答 1

1

levels接受类向量factor(该函数levels(x)实际上只是attr(x, "levels").

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

levels(scoreData[,xVarString])

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

sapply(scoreData, levels)

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

于 2013-10-10T17:16:53.950 回答