我想使用一个字符串作为函数的参数,以便使用该字符串来绘制结果,但是R绘制了参数变量名称而不是字符串值。 我尝试了不同的解决方案(diparse,as.character ...),但仍然没有解决方案。你有什么主意吗?传递一个字符串作为函数参数
mcnemar_test <- function (c1,c2,class1, class2)
{
name1=label(class1)
name2=deparse(substitute(class2))
v1 = c1$encerts
v2 = c2$encerts
e00 = sum(ifelse(v1+v2==0,1,0)) #bad classification for both
e01 = sum(ifelse(v1<v2,1,0)) #bad classification for 1
e10 = sum(ifelse(v1>v2,1,0)) #bad classification for 2
e11 = sum(ifelse(v1+v2==2,1,0)) #good classification for both
matriu <- matrix(c(e00,e01,e10,e11),nrow = 2,
dimnames = list(name1 = c("Disapprove", "Approve"),
name2 = c("Disapprove", "Approve")))
print (matriu)
t <- mcnemar.test(matriu)
return (t)
}
mcnemar_test(classifiers.NaiveBayes,classifiers.CART,"aa","bb")
我想看看“AA”和“BB”,但看到“NAME 1和NAME
你试过'eval'吗?很多问题在这里这种东西 – Ben
@本eval只是一个字母,远离R地狱;最好避免,当不是真的需要 – baptiste
相当正确,有较不明显的方法,它是[慢](https://stat.ethz.ch/pipermail/r-help/2007-January/123208.html),指示[缺乏知识](http://stackoverflow.com/q/13649979/1036500),并有许多[替代品](http://www.talkstats.com/showthread.php/20974-Why-is-eval- parse-bad?p = 67452&viewfull = 1#post67452),例如[get](http://stackoverflow.com/questions/13647046/avoiding-the-infamous-evalparse-construct)和['[[']( http://stackoverflow.com/a/11025440/1036500)。你提到的一封信是什么(我对此并不熟悉......) – Ben