[英]Calculate Fisher's exact test p-value in dataframe rows
我在一個數據框中有1700個樣本的列表,其中每一行代表每個助手在不同盒子中隨機抽取的樣本中計數的彩色項目的數量。 有兩種可用的顏色,有兩個人在計算物品,因此可以輕松創建2x2列聯表。
df
Box-ID 1_Red 1_Blue 2_Red 2_Blue
1 1075 918 29 26
2 903 1076 135 144
我想知道如何將每一行都視為一張偶數表(向量或矩陣),以便執行卡方檢驗(如Fisher或Barnard的檢驗)並生成具有p值的第六列。 到目前為止,這是我嘗試過的方法,但不確定是否正確
df$p-value = chisq.test(t(matrix(c(df[,1:4]), nrow=2)))$p.value
我想你可以做這樣的事情
df$p_value <- apply(df,1,function(x) fisher.test(matrix(x[-1],nrow=2))$p.value)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.