2013-10-10 3 views
0

У меня есть Rscript, который создает различные 2D-диаграммы на наборе данных. Я хотел бы иметь возможность изменять переменную X в зависимости от того, какое отношение я хочу просмотреть. Поэтому я сделал переменную X аргументом командной строки. Мотивация в сторону, я хочу иметь возможность выполнить команду:Вход в уровни Функция - R

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

но он просто возвращает NULL. Я знаю, что вставка возвращает строку. Я знаю, что 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 документацию документы? Я нашел много учебников, но не имеет прямой документации по функциям.

Thakns заранее.

+0

Ввод знака вопроса перед именем функции показывает ее документацию. '? levels' или'? plot' –

ответ

1

levels принимает векторы класса factor (функция levels(x) действительно просто сокращение для attr(x, "levels").

Вы должны передать фактический столбец данных levels. "ScoreData$Column1" только передать строку (как Вы указываете). Вы можете сделать:

levels(scoreData[,xVarString]) 

xVarString Предполагая, что это строка требуемого имени столбца Простейшее метод:.

sapply(scoreData, levels) 

Чтобы просмотреть все уровни, разделенные столбцом.

Смежные вопросы