Ответ 1
Вы можете использовать функцию svytable
из пакета survey
или wtd.table
из rgrs
.
EDIT: rgrs
теперь называется questionr
:
df <- data.frame(var = c("A", "A", "B", "B"), wt = c(30, 10, 20, 40))
library(questionr)
wtd.table(x = df$var, weights = df$wt)
# A B
# 40 60
Это также возможно с помощью dplyr
:
library(dplyr)
count(x = df, var, wt = wt)
# # A tibble: 2 x 2
# var n
# <fctr> <dbl>
# 1 A 40
# 2 B 60