我需要编写一个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)
}
答案 0 :(得分:0)
尝试此操作(我所做的唯一更改是在您的函数中使用固定括号,并替换cat()
上的paste()
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)