簡體   English   中英

R 中分類數據與二項式響應的相關性

[英]Correlation of categorical data to binomial response in R

我正在尋找分析分類輸入變量和二項式響應變量之間的相關性,但我不確定如何組織我的數據或者我是否正在計划正確的分析。

這是我的數據表(變量解釋如下):

species<-c("Aaeg","Mcin","Ctri","Crip","Calb","Tole","Cfus","Mdes","Hill","Cpat","Mabd","Edim","Tdal","Tmin","Edia","Asus","Ltri","Gmor","Sbul","Cvic","Egra","Pvar")
scavenge<-c(1,1,0,1,1,1,1,0,1,0,1,1,1,0,0,1,0,0,0,0,1,1)
dung<-c(0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,1,1,0,0)
pred<-c(0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0)
nectar<-c(1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,1,1,0,0)
plant<-c(0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,0)
blood<-c(1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0)
mushroom<-c(0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0)
loss<-c(0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,1,0,0,0,0,0) #1 means yes, 0 means no
data<-cbind(species,scavenge,dung,pred,nectar,plant,blood,mushroom,loss)
data #check data table

數據表說明

我列出了個別物種,接下來的列是它們的注釋喂養類型。 給定列中的 1 表示是,0 表示否。 有些物種有多種攝食類型,而有些只有一種攝食類型。 我感興趣的響應變量是“損失”,表示特征的損失。 我很想知道是否有任何喂養類型預測或與“損失”狀態相關。

想法

我不確定是否有一種好方法可以將喂養類型作為一個具有多個類別的分類變量。 我不認為我可以將其組織為類型為 c("scavenge","dung","pred", etc...) 的單個變量,因為某些物種有多種喂養類型,所以我將它們分成單獨的列並將其狀態指示為 1(是)或 0(否)。 目前我正在考慮嘗試使用對數線性分析,但我發現的示例並沒有完全可比的數據......我很高興提出建議。

非常感謝任何幫助或指出正確的方向!

樣本太少,您有 4 個損失 == 0 和 18 個損失 == 1。您將遇到擬合完整邏輯回歸(即包括所有變量)的問題。 我建議使用 Fisher 測試來測試每種喂養習慣的關聯:

library(dplyr)
library(purrr)

# function for the fisher test
FISHER <- function(x,y){
       FT = fisher.test(table(x,y))

data.frame(
       pvalue=FT$p.value,
       oddsratio=as.numeric(FT$estimate),
       lower_limit_OR = FT$conf.int[1],
       upper_limit_OR = FT$conf.int[2]
)
}
# define variables to test
FEEDING <- c("scavenge","dung","pred","nectar","plant","blood","mushroom")
# we loop through and test association between each variable and "loss"

results <- data[,FEEDING] %>% 
map_dfr(FISHER,y=data$loss) %>% 
add_column(var=FEEDING,.before=1)

您會得到每種喂養習慣的結果:

> results
       var      pvalue oddsratio lower_limit_OR upper_limit_OR
1 scavenge 0.264251538 0.1817465    0.002943469       2.817560
2     dung 1.000000000 1.1582683    0.017827686      20.132849
3     pred 0.263157895 0.0000000    0.000000000       3.189217
4   nectar 0.535201640 0.0000000    0.000000000       5.503659
5    plant 0.002597403       Inf    2.780171314            Inf
6    blood 1.000000000 0.0000000    0.000000000      26.102285
7 mushroom 0.337662338 5.0498688    0.054241930     467.892765

p值是來自fisher.test的p值,基本上優勢比> 1,該變量與損失呈正相關。 在所有變量中,植物是最強的,您可以檢查:

> table(loss,plant)
    plant
loss  0  1
   0 18  0
   1  1  3

幾乎所有植物 = 1,損失 = 1 .. 所以對於你當前的數據集,我認為這是你能做的最好的。 應該獲得更大的樣本量,看看這是否仍然成立。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM