Database 将列表通过R中的wilcox.test
我试图通过使用R中的Database 将列表通过R中的wilcox.test,database,r,statistics,Database,R,Statistics,我试图通过使用R中的wilcox.test(·)传递要分析的数据帧列中的所有数字 如果我传递c(1,2,3)它工作得很好,但是我想将一列从预先存在的数据库传递到函数中,而不完全键入它。(大约有200万行) 传递该列会出现错误:'x'必须是数字。 (这是可以理解的) 样本数据: AA AC AD AE AF 0.6047619 NA -1.0000000 1.0059524 -1.000000 -0.2348790 NA
wilcox.test(·)
传递要分析的数据帧列中的所有数字
如果我传递c(1,2,3)
它工作得很好,但是我想将一列从预先存在的数据库传递到函数中,而不完全键入它。(大约有200万行)
传递该列会出现错误:'x'必须是数字。
(这是可以理解的)
样本数据:
AA AC AD AE AF
0.6047619 NA -1.0000000 1.0059524 -1.000000
-0.2348790 NA 0.5812500 0.1294643 -1.000000
0.9523810 -1 -1.0000000 -1.0000000 -1.000000
使用的声明:
{print(wilcox.test(list, y = NULL, correct = TRUE, mu = 0, exact = NULL))}
错误消息:
Error in wilcox.test.default(list, y = NULL, correct = TRUE, mu = 0, exact = NULL) :
'x' must be numeric
列表是数据帧的一列。从AA到0.9523810 如果
列表
是您的数据框,您可以通过以下方式获得每列的结果:
apply(list,2,wilcox.test, y = NULL, correct = TRUE, mu = 0, exact = NULL)
df[1, ] # by number: first column
df["x1", ] # by name: column that is named "x1"
df$x1 # also by name
出现错误,因为其中一列不是数值变量。要在名为
df
的数据框中指定给定列,可以使用以下选项之一:
apply(list,2,wilcox.test, y = NULL, correct = TRUE, mu = 0, exact = NULL)
df[1, ] # by number: first column
df["x1", ] # by name: column that is named "x1"
df$x1 # also by name
因此,在本例中,您将使用(如果您需要名为“AA”的列)
请包括样本数据和可复制代码:什么是
列表
?您的数据帧?我尝试使用名称(列表)删除第一列。它没有改变任何东西,我仍然收到相同的错误消息。数据帧中的所有列都是数字吗?似乎不是。找到那些不是数字的,然后删除它们,这样就行了。