создание фактора из фиктивных переменных и подсчет - PullRequest
0 голосов
/ 20 июня 2020

Я хотел бы посчитать определенные вещи в моем наборе данных. У меня есть данные панели, и в идеале я хотел бы подсчитать количество действий на один 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)

Таким образом, мой результат скажет мне, что у человека 4 2 задачи. эти данные и с этой функцией работают отлично.

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)

Теперь, несколько дней go я просто запускаю тот же код, что и выше, после добавления макетов в мой df, чтобы получить результаты не только на уровне zip, но и на уровне состояния.

, поэтому результат будет выглядеть так

California
frequency activity 2

Как мне добавить эффекты уровня состояния в свою функцию?

1 Ответ

0 голосов
/ 20 июня 2020

Вам что-то подобное нужно?

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
...