私は、遺伝子発現データに対して基本的なR解析を行っていました。分析は、副腎の遺伝子発現に性差があるかどうかを調べることを目的としています。単調/反復調整されたp値を与えるBH補正手順
データを男性および女性として分離し、その後のt検定を行った。最後に、私はp値のセットを得て、それに対してBH補正手順が実行されました。しかし、私が得た調整されたp値は単調で、同じ値が最初から最後まで繰り返されます。そして、私は10%の重要度で拒絶反応を見つけることができません。何が間違っている可能性がありますか?ここ
は、遺伝子発現データに対するt検定のために行わRコードである:
first.row <- t.test(son.a[1,males],son.a[1,-males])
# Result from t-test :
# Welch Two Sample t-test
# data: son.a[1, males] and son.a[1, -males]
# t = 0.8923, df = 9.594, p-value = 0.3941
# alternative hypothesis: true difference in means is
# not equal to 0
# 95 percent confidence interval:
# -0.1188546 0.2761207
# sample estimates:
# mean of x mean of y
# 0.527884 0.449251
「son.a」は、42421個の遺伝子の遺伝子発現値からなるデータフレームです。サンプルは、男性および女性の両方の副腎から採取される(合計9サンプル)。
# Assigning a function 't.test.pvalue'
t.test.pvalue <- function(dat) {
results <- t.test(dat[males],dat[-males])
return(results$p.value)
}
t.test.pvalue(son.a[1,])
# [1] 0.3940679
# Applying t.test.pvalue to all 42421 rows
all.rows <- apply(son.a,1,t.test.pvalue)
head(all.rows)
# [1] 0.3940679 0.5616102 0.6953087 0.3064443 0.8942156 0.8191188
tail(all.rows)
# [1] 0.8631147 0.3911861 0.4482372 0.8286146 0.8603733 0.2700229
# Loading "mutoss"
library("mutoss")
# Applying BH function
bh.adjustment <- BH(all.rows,alpha=0.1)
# Benjamini-Hochberg's (1995) step-up procedure
# Number of hyp.: 42421
# Number of rej.: 0
# Using p.adjust function
adjP <- p.adjust(all.rows,method = "BH")
adjP
# [1] 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772
0.9999772 0.9999772
# [10] 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772
# [19] 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772 0.9999772
値は、ベクトル 'adjP'の最後まで同じです。上記のRコードで何か間違っていますか?
ありがとうございます!
ようこそStackoverflow、まず[Stackoverflowで質問する方法](http://stackoverflow.com/help/how-to-ask)のリンクを見てください。また、私たちがあなたのお手伝いをし、あなたの問題が何であるかをよりよく把握できるように、これまで行ってきたことの例をいくつか教えてください。 –
@ピエール、私は私が投稿した質問を編集しました。解決策を見つけるのを助けてください。事前に感謝します。 – user7761694