簡體   English   中英

從虛擬變量中創建因子並計數

[英]creating factor out of dummy variables and counting

我想在我的數據集中計算某些東西。 我有面板數據,理想情況下想計算每個 zip 的活動數量。

zip <- c(1,1,1,2,2,3,3,4,4,5,5)
    activity <- c(1,1,1,2,2,3,4,5,5,6,6)
    completion <- c(0,0,1,0,1,1,1,0,0,0,1)

所以我的 output 會告訴我第 4 個人有 2 個任務。

zip 1
    frequency activity 2

我使用這些數據和這個 function 它完美地工作。

library(dplyr)
    cllw %>% 
      group_by(zip) %>% 
      summarise("id_task" = n())%>% View()

現在,我為 zip 數據編寫了一些虛擬變量,如下所示:

df$California <- ifelse(df$zip ==1, 1, 0)
df$Hawaii <- ifelse(df$zip ==2, 1, 0)
df$Oregon <- ifelse(df$zip ==3, 1, 0)
df$Washington <- ifelse(df$zip ==4, 1, 0)
df$Alaska <- ifelse(df$zip ==5, 1, 0)

現在,幾天前,我只是在將虛擬對象添加到我的 df 之后運行與上面相同的代碼,以便不僅獲得 zip 級別的結果,而且獲得狀態級別的結果。

所以 output 看起來像這樣

California
frequency activity 2

我如何才能將狀態級效果融入我的 function

你需要這樣的東西嗎?

library(dplyr)

df %>%
  tidyr::pivot_longer(cols = California:Alaska) %>%
  filter(value == 1) %>%
  count(name)

# A tibble: 5 x 2
#  name           n
#  <chr>      <int>
#1 Alaska         2
#2 California     3
#3 Hawaii         2
#4 Oregon         2
#5 Washington     2

暫無
暫無

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

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