「case.control」というデータがあり、1000行と2000列があり、列はケースまたはコントロールのいずれかであるため、ケースとコントロールに基づいてそれらを分離したため、1000行と400列=ケースになる2つのデータセットがあります別の1000行と600列=コントロールすべての行でフィッシャーテストを実行しようとしました
dat1=c()
dat2=c()
for (i in 1:nrow(case)){
dat1[i]<-table(case[i,])
dat2[i]<-table(control[i,])
tab[i]<-as.table(rbind(dat[i],dat[i]))
fisher.test(tab, alternative="greater")}
セルにゼロの値がある場合があるため、このコードは機能しませんが、コードはそれを別の数値に変更します。
g1 g2
400 0
500 100
に変更します
g1 g2
400 400
500 100
なにか提案を
データは次のサンプルのようになります。
Positions gene1 gene2 gene3 ...... gene2000
1 0 1 2 2
2 1 0 0 1
3 2 1 1 1
.
.
1000 1 0 0 0