【发布时间】:2018-08-19 17:45:01
【问题描述】:
我正在尝试对每一行进行 t.test,然后提取 p 值进行绘图。作为参考,我找到了这个旧帖子:output p value from a t-test in R
这是我的 sn-p:
> pVal143<-apply(mRNA143.data, 1, t.test)$p.value
但是当我尝试调用它时,我只返回“NULL”?下面是我的几行数据,仅供参考,谢谢。
c.mRNA h.mRNA
1 8.224342 8.520142
2 9.096665 11.762597
3 10.698863 10.815275
4 10.666233 10.972130
5 12.043525 12.140297
使用原始数据集“c007”更新(我需要比较“C”值和 H 值的 p 值)。
C1 C2 C3 C4 C5 C6 H1 H2 H3 H4 H5 H6
NP_000005 P01023 Protein Name 8.57345 8.45938 8.68941 8.35913 8.48177 8.44560 8.40986 8.59392 8.46562 8.07999 8.22759 8.41817
NP_000010 P24752 Protein Name 8.32595 8.19273 8.10708 8.48156 7.99014 8.24859 8.78216 8.59592 8.48299 8.52647 8.34797 8.38534
【问题讨论】:
-
请在您的问题中添加
mRNA143.data的样本,以使您的问题可重现。最好使用dput(mRNA143.data)。 -
你问过类似的问题here。 t-每组只有一次观察的测试(我假设您在这种情况下尝试这样做)可能效果不佳(请参阅维基百科上的 t-test为什么理论上这是一个禁忌)。你基本上想做的是
t.test(x = 8.224342, y = 8.520142)。 -
以上是 mRNA143.data. 的样本,两列,143 行(我只包括了 5 行)。
-
拥有多少行并不重要,因为您试图为每个行获取一个 p 值,而这是不可能的。 t 检验需要“理解”数据的分布,并且每组 1 点的 2 组比较没有意义。有意义的是比较一组行,或比较你的 2 列。您提供的链接使用
t.test(1:10, 7:20)比较具有 10 个值的组 (1:10) 与具有 14 个值的组 (7:20)。 -
就像@RomanLuštrik 所说,你需要更多的观察。提示:
t.test可以使用 length(x) == length(y) == 2。
标签: r