簡體   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