繁体   English   中英

将用户输入纳入R中的因子函数

[英]Incorporating user input in factor function in R

我试图弄清楚如何获取用户提供的列名以响应R中的提示并将其用于功能因子中。 这个想法是使用ggplot2创建一个脚本,该脚本将允许用户轻松地从表中选择他们想要按颜色编码和按形状编码的变量。
请求用户输入的代码行为:

> Color_Factor<-readline("What is the Column Heading of the Variable you would like separated by Color? ") 

您要用颜色分隔的变量的列标题是什么? 达到

我的问题是我无法弄清楚如何使用此输入来调用特定列以进行绘图。 下面的代码创建一个具有单一颜色和单个变量“ Reach”的图形。

> qplot(d13C, d15N, data=InputFile, **col=factor(Color_Factor)**, shape=factor(Functional_Group))

我所有尝试将函数作为factor()中的初始参数的尝试都失败了。 我特别出于图形目的对此感兴趣,但同时也想知道是否有一种方法可以使用变量的值而不是变量名来通常指定这种类型的函数中的列。 我对R完全陌生,所以也许有一个明显的解决方案,但是到目前为止,我还无法在线找到答案。 谢谢

这不是很优雅,但是对ggplot2的参数的非标准评估始终使我感到困惑:

> Color_Factor<-readline("What is the Column Heading of the Variable you would like separated by Color? ") 
What is the Column Heading of the Variable you would like separated by Color? mpg

qplot( x=mtcars[, Color_Factor], wt, data=mtcars)

我试过(和失败的)使用各种语言水平咒语as.namesubstituteeval提供的X参数与满足它的语言元素。 上面的策略使用[.data.frame的容量来评估Color_Factor并将其与mtcars中的列名称进行mtcars 这种选择也可以成功(因为它几乎复制了第一个正在做的事情:

 qplot( x=eval(as.name(Color_Factor), mtcars), wt, data=mtcars)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM