У меня есть сгруппированная структура данных (разные домохозяйства отвечают на еженедельный опрос общественного мнения), и я наблюдаю за каждым домохозяйством в течение 52 недель (в примере 4 недели). Теперь я хочу указать стоимость домохозяйства в данный момент времени с помощью энтропии. Значение домохозяйства, участвующего в опросе, должно быть выше, если домохозяйство не участвовало в последние недели. Таким образом, домохозяйство, всегда отвечающее на опрос, должно иметь более низкое значение в эти 4 недели, чем домохозяйство, отвечающее каждые две недели в течение двух недель, когда оно участвует. Важно, чтобы для данного домохозяйства показатель неравенства варьировался в течение нескольких недель.
Каков наилучший способ сделать это? Если это энтропия, как мне применить ее к структуре данных панели, используя R?
Структура данных выглядит следующим образом:
da_poll <- data.frame(household = c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4), participation = c(1,1,1,1,0,0,0,1,0,1,0,1,1,1,1,0))
da_poll
household participation
1 1 1
2 1 1
3 1 1
4 1 1
5 2 0
6 2 0
7 2 0
8 2 1
9 3 0
10 3 1
11 3 0
12 3 1
13 4 1
14 4 1
15 4 1
16 4 0
# 1 indicates participation, 0 no participation.
Я пытался сгруппировать ее по домашним хозяйствам, но затем Я получаю только одно значение для каждого домохозяйства:
da_poll %>%
group_by(household) %>%
mutate(entropy = entropy(participation))
A tibble: 16 x 4
# Groups: household [4]
household week participation entropy
<dbl> <dbl> <dbl> <dbl>
1 1 1 1 1.39
2 1 2 1 1.39
3 1 3 1 1.39
4 1 4 1 1.39
5 2 1 0 0
6 2 2 0 0
7 2 3 0 0
8 2 4 1 0
9 3 1 0 0.693
10 3 2 1 0.693
11 3 3 0 0.693
12 3 4 1 0.693
13 4 1 1 1.10
14 4 2 1 1.10
15 4 3 1 1.10
16 4 4 0 1.10
Если я группирую по домохозяйству и неделе, я также получаю нечто странное:
da_poll %>%
group_by(household, week) %>%
mutate(entropy = entropy(participation))
# A tibble: 16 x 4
# Groups: household, week [16]
household week participation entropy
<dbl> <dbl> <dbl> <dbl>
1 1 1 1 0
2 1 2 1 0
3 1 3 1 0
4 1 4 1 0
5 2 1 0 NA
6 2 2 0 NA
7 2 3 0 NA
8 2 4 1 0
9 3 1 0 NA
10 3 2 1 0
11 3 3 0 NA
12 3 4 1 0
13 4 1 1 0
14 4 2 1 0
15 4 3 1 0
16 4 4 0 NA