У меня есть два набора данных, один на индивидуальном уровне и один на школьном уровне.Я хотел бы рассчитать долю боевых действий в каждой школе, используя цикл (так как у меня> 100 школ).
Текущий код:
for (i in levels(df$school_id)) {
school <- subset(df, school_id == i)
number_students <- nrow(school)
prop <- (sum(school$fight_binary, na.rm = TRUE))/number_students
df$proportion_fight[df$school_id == i] <- prop
}
Сначала я попытался инициализировать новый столбец, но когда я запускаю этот цикл, ничего не происходит.
Вот некоторые примеры данных
ИНДИВИДУАЛЬНЫЙ УРОВЕНЬ:
student_id school_id ever_fight
1 2 1
2 3 0
3 1 1
4 1 1
5 2 0
6 2 0
7 2 0
8 2 0
9 3 1
10 1 0
11 3 1
12 3 1
13 3 1
14 3 1
15 1 0
16 2 0
17 1 0
18 1 0
19 1 0
20 1 0
ШКОЛЬНЫЙ УРОВЕНЬ (необходимо заполнить второй столбец данными сверху):
school_id proportion_fight
1
2
3