Dunn检验运行报错:'pairlist'无法强制转换为'double'类型求助
解决Dunn检验的强制转换错误问题
问题原因
你碰到的报错'pairlist' object cannot be coerced to type 'double'和警告is.na() applied to non-(list or vector) of type 'language',核心是**dunn.test()函数不支持公式语法(y ~ group)**。当你传入dt$c ~ dt$group这种公式时,函数会把它识别成language类型的对象,而不是它需要的数值向量,自然没法完成类型转换,就触发了报错。
正确的调用方式
dunn.test()的参数要求直接传入数值向量和分组向量,而不是公式。修改后的代码如下:
# 构造你的数据 dt = data.frame(c = 1:50, group = rep(c("a","b"), each=25)) # 先安装并加载dunn.test包(如果没安装过的话) # install.packages("dunn.test") library(dunn.test) # 正确调用Dunn检验 dunn.test(x = dt$c, g = dt$group)
补充说明
运行上面的代码后,就能得到Dunn检验的标准输出,包括各组秩和、Z值、P值等统计结果。如果需要调整检验的细节(比如多重比较校正方法、置信水平),可以输入?dunn.test查看帮助文档来设置对应参数。
内容的提问来源于stack exchange,提问作者user3022875
相关产品推荐
相关产品推荐

