曼 – 惠特尼U检验与p值

我想做一个Mann-Whitney U检验,比较第2,3,4列与第5,6和7列,并得到每行的p值来评估重要性。

type Sp1 Sp2 Sp3 Sp4 Sp5 Sp6 GH1 4 4 4 2 2 0 GH2 7 7 7 4 8 4 GH3 13 17 16 10 16 10 GH5 9 10 10 11 10 6 GH6 0 0 0 0 0 0 GH7 1 1 1 1 1 0 GH9 0 0 1 0 1 0 GH10 3 1 1 0 2 0 GH11 1 1 0 2 1 1 GH12 3 1 2 3 1 2 GH13 11 13 12 12 13 12 GH15 2 1 2 2 1 3 GH16 17 16 16 14 11 13 GH17 7 7 7 8 6 7 GH18 7 9 9 9 9 5 GH20 2 2 2 2 1 2 GH22 0 0 0 0 0 0 GH23 2 1 2 1 0 3 GH24 0 0 0 1 0 0 GH25 1 1 1 1 0 0 GH26 0 0 0 0 0 0 

我看过一些教程来比较两组值

  wilcox.test(a,b, correct=FALSE) 

但是我不知道如何去做两组,并且为每一行都得到一个p值,这样我就能知道在这两个组中哪一个types是有意义的。 最后它会是这样的

  type Sp1 Sp2 Sp3 Sp4 Sp5 Sp6 p-value GH1 4 4 4 2 2 0 0.4 GH2 7 7 7 4 8 4 0.2 GH3 13 17 16 10 16 10 0.01 GH5 9 10 10 11 10 6 0.6 

 df$p_values <- apply(df, 1, function(x) { wilcox.test(as.numeric(x[2:4]), as.numeric(x[5:7]))$p.value }) type Sp1 Sp2 Sp3 Sp4 Sp5 Sp6 p_values 1 GH1 4 4 4 2 2 0 0.05934644 2 GH2 7 7 7 4 8 4 0.63735189 3 GH3 13 17 16 10 16 10 0.26115456 4 GH5 9 10 10 11 10 6 1.00000000 5 GH6 0 0 0 0 0 0 NaN 6 GH7 1 1 1 1 1 0 0.50498508 7 GH9 0 0 1 0 1 0 1.00000000 8 GH10 3 1 1 0 2 0 0.36868827 9 GH11 1 1 0 2 1 1 0.30169958 10 GH12 3 1 2 3 1 2 1.00000000 11 GH13 11 13 12 12 13 12 0.81366372 12 GH15 2 1 2 2 1 3 0.81366372 13 GH16 17 16 16 14 11 13 0.07652250 14 GH17 7 7 7 8 6 7 1.00000000 15 GH18 7 9 9 9 9 5 1.00000000 16 GH20 2 2 2 2 1 2 0.50498508 17 GH22 0 0 0 0 0 0 NaN 18 GH23 2 1 2 1 0 3 0.82218677 19 GH24 0 0 0 1 0 0 0.50498508 20 GH25 1 1 1 1 0 0 0.18763233 21 GH26 0 0 0 0 0 0 NaN