小编ste*_*nie的帖子

R-x中的Wilcoxon检验必须是数字误差

wilcox.test在R中有问题.我的数据对象是一个矩阵,其中第一列包含一个名称,所有其他列包含一个(基因表达式)度量,它是数字:

str(myMatrix)
'data.frame':   2000 obs. of  143 variables:
$ precursor               : chr  "name1" "name2" "name3" "name4" ...
$ sample1: num  1.46e-03 2.64e+02 1.46e-03 1.46e-03 1.46e-03 ...
$ sample2: num  1.46e-03 1.91e+02 1.46e-03 1.46e-03 1.46e-03 ...
$ sample3: num  1.46e-03 3.01e+02 1.46e-03 1.46e-03 4.96 ...
Run Code Online (Sandbox Code Playgroud)

对于所有2000行,我想测试矩阵的2个给定部分之间是否存在差异.我尝试了4种不同的方式:

wilcox.test(as.numeric(myMatrix[i,2:87],myMatrix[i,88:98]))$p.value
#[1] 1.549484e-16

wilcox.test(myMatrix[i,2:87],myMatrix[i,88:98])$p.value
#Error in wilcox.test.default(myMatrix[i, 2:87], myMatrix[i, 88:98]) : 
#'x' must be numeric

t.test(as.numeric(myMatrix[i,2:87],myMatrix[i,88:98]))$p.value
#[1] 0.2973957

t.test(myMatrix[i,2:87],myMatrix[i,88:98])$p.value
#[1] 0.3098505
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,只有当我使用as.numeric()已经存在的数值时,我得到的结果没有用于Wilcoxon测试的错误消息,但结果完全不同于t.test结果,即使它们不应该.

使用在线工具手动验证表明t.test使用as.numeric()值的结果是错误的.

关于如何解决这个问题并进行正确的Wilcoxon测试的任何建议?如果您需要更多信息,请告诉我.

r

5
推荐指数
1
解决办法
4649
查看次数

标签 统计

r ×1