【问题标题】:Input to Levels Function - R输入电平函数 - R
【发布时间】:2013-10-10 16:49:26
【问题描述】:

我有一个在数据集上创建各种 2D 图表的 Rscript。我希望能够根据要查看的关系更改 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 文档?我找到了很多教程,但没有直接的函数文档。

提前谢谢。

【问题讨论】:

  • 在函数名前加一个问号会显示它的文档。 ?levels?plot

标签: r


【解决方案1】:

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

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

levels(scoreData[,xVarString])

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

sapply(scoreData, levels)

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-10
    • 2015-03-17
    • 2015-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-23
    相关资源
    最近更新 更多