【问题标题】:Including a varying labels in user defined function在用户定义的函数中包含不同的标签
【发布时间】:2018-04-29 18:56:21
【问题描述】:

我需要编写一个 R 函数,其中输入是两个定性变量,输出频率表、卡方检验和两个变量之一的条形图。我可以获得基本的条形图,但我需要添加标题和图例,这取决于所用变量的名称。我尝试使用 cat 和 deparse 函数替换变量名,但绘图仍在打印,没有任何标题、轴标签或图例。

fx1=function(y,x){
  yy=as.factor(y)
  xx=as.factor(x)
  v=ftable(yy,xx)
  f=chisq.test(y,x)
  g=barplot(v, main= cat("Barplot of ", deparse(substitute(y)), 
                         " by", deparse(substitute(x))), 
            xlab= deparse(substitute(x)), 
            ylab = 'Frequency', names.arg=c(names(x)))
  r=c(v,g,f)
  return(r)
}

【问题讨论】:

    标签: r


    【解决方案1】:

    试试这个(我做的唯一改变是在你的函数中固定括号并用paste()替换cat()

    fx1=function(y,x){
      yy=as.factor(y)
      xx=as.factor(x)
      v=ftable(yy,xx)
      f=chisq.test(y,x)
      g=barplot(v, main= paste("Barplot of ", 
                                deparse(substitute(y)), 
                                " by", 
                                deparse(substitute(x))), 
                xlab= deparse(substitute(x)), 
                ylab = 'Frequency', names.arg=c(names(x)))
      r=c(v,g,f)
      return(r)
    }
    
    myx <- sample(c("M","F"), 10, replace = TRUE)
    myy <- sample(c(0,1), 10, replace = TRUE)
    fx1(myx,myy)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-14
      • 1970-01-01
      • 2012-12-22
      • 1970-01-01
      • 2012-06-06
      • 1970-01-01
      相关资源
      最近更新 更多