对因素进行t检验

时间:2018-09-26 17:24:57

标签: r dataframe

我尝试在两组水平上进行t.test。

数据外观如下:

group x

0.4749584
0.5873566
0.5803553
0.5958644
0.5745614
0.562469

group y

0.5873566
0.5803553
0.5958644
0.5745614
0.5624696 

然后我尝试在组之间执行t.test:

x=process_tomas[2,1:5]
y=process_tomas[2,6:11]
z=droplevels.data.frame(x)
u=droplevels.data.frame(y)
# list_u<-as.list(u)
# list_z<-as.list(z)
t.test(z,u)

我知道了

  

if(stderr <10 * .Machine $ double.eps * max(abs(mx),abs(my)))stop(“ data本质上是恒定的”)错误:
  缺少需要TRUE / FALSE的值
  另外:警告消息:
  1:在mean.default(x)中:参数不是数字或逻辑:返回NA
  2:在mean.default(y)中:参数不是数字或逻辑:返回NA

我从代码中获得的列表如下:

list_u

似乎水平没有下降。

我检查了:

z[,3]
[1] 0.5706557
Levels: 0.5706557

如何降低水平并进行t.test?

1 个答案:

答案 0 :(得分:0)

如果您要转换的数据与第一个块中显示的一样,显示为

group x
0.4749584
0.5873566
0.5803553
0.5958644
0.5745614
0.562469

group y
0.5873566
0.5803553
0.5958644
0.5745614
0.5624696

从这些列表中获取值的最好方法是将因素通过字符串传递,然后传递给数字,例如:

 z=as.numeric(as.character((group x))
 u=as.numeric(as.character((group y))

您可以从那里简单地进行t检验,就可以了。