У меня есть фрейм данных с именем yield.df, который выглядит примерно так:
ID region income
1 rot 3700
2 ams 2500
3 utr 3300
4 utr 5300
5 utr 4400
6 ams 3100
8 ams 3000
9 rot 4000
10 rot 4400
12 rot 2000
Я хочу использовать функцию Gini для вычисления Коэффициент Джини для каждого региона. Если бы я хотел вычислить его для всего фрейма данных, не принимая во внимание регион, я бы сделал следующее:
library(DescTools)
Gini(income.df$income, n = rep(1, length(income.df$income)), unbiased = TRUE, conf.level = NA, R = 1000, type = "bca", na.rm = TRUE)
Есть ли способ сделать это для каждого региона в кадре данных? Так что же в данном случае для «гниль», «утр» и «амс»? Обратите внимание, что для функции Джини также требуется длина вектора (которая будет равна 4, 3 и 3 для трех областей соответственно). Я подозреваю, что что-то вроде lapply может это сделать, но я не мог понять, как автоматически передавать эти длины внутри функции (мой фактический фрейм данных намного больше, поэтому вручную это не вариант).