簡體   English   中英

如何計算R中兩個分類變量的比例

[英]How to calculate the proportion of two categorical variables in R

目前我正在寫我的碩士論文。 我的大學為我提供了包含多個變量的學生數據,例如年齡、性別、學科、教師、訪問的課程、獲得的成績、學生流失情況等等。 我的任務是分析這些數據,以預測哪個學生會流失以及哪個學生會獲得學位。 在此之前,我想嘗試進行探索性數據分析。 目前我被困在我想計算兩個分類變量的比例:主題和學生是否流失。

我為要計算的統計數據創建了一個簡單的示例:

Subject_Churn_df <- data.frame(Subject = c("Math", "Engineering", "IT", "Math", "IT", "IT", "Engineering"),
                               Churn = c("Yes", "Yes", "No", "No", "Yes", "Yes", "No"))

現在我想確定哪個主題流失的比例。

我嘗試了以下代碼:

Subject_Churn_df %>% 
  select(Subject, Churn) %>% 
  table() %>% 
  prop.table()

但結果我得到

             Churn
Subject              No       Yes
  Engineering 0.1428571 0.1428571
  IT          0.1428571 0.2857143
  Math        0.1428571 0.1428571

在這種情況下,通過考慮整個樣本來計算比例。 但是,我想知道每個主題的流失率,例如

Engineering 0.5
IT 0.333333
Math: 0.5

我將不勝感激每一個提示/解決方案。 首先十分感謝。

雖然這在Stack Overflow上可能更好,但您的具體問題是您沒有在proportions調用中將正確的參數傳遞給margin ,因此您獲得了整個表格的比例。 由於對table的調用將主題放在行中,因此您希望將$1$傳遞給margin ,如下所示:

Subject_Churn_df <- data.frame(Subject = c("Math", "Engineering", "IT", "Math", "IT", "IT", "Engineering"),
Churn = c("Yes", "Yes", "No", "No", "Yes", "Yes", "No"))

proportions(table(Subject_Churn_df), margin = 1L)

結果是:

             Churn
Subject              No       Yes
  Engineering 0.5000000 0.5000000
  IT          0.3333333 0.6666667
  Math        0.5000000 0.5000000

我相信你想要的。

暫無
暫無

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

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