[英]Calculate the weighted mean for a variable, which has two types with R
我有以下數據集,其中變量“V0220”通過“id_municipio”出現在數據中的次數(“n”),但這個變量有兩種類型:1 和 2。此外,我有權重(“peso_amostral ") 的每個觀察。
id_municipio peso_amostral v0220 n
1100015 2.04 2 1
1100015 2.68 1 1
1100015 3.45 2 1
1100015 4.51 1 1
1100015 4.62 2 1
1100015 4.75 1 1
我想做的是以下幾點:
id_municipio 2 1
1100015 X Y
因此,我想通過 id_municipio 計算該變量的類型(2 或 1)的每個變量“V0220”的加權平均值。 請注意,“X”和“Y”是“V0220”的加權平均值,分別按類型 2 和 1。 我想用 R 來做。
您可以使用dcast
中的data.table
嘗試此操作。 您可以更改fun.aggregate
為您需要的功能。
library(data.table)
dcast(data,
id_municipio ~ v0220,
fun.aggregate = mean,
value.var = "peso_amostral")
輸出:
id_municipio 1 2
1 1100015 3.98 3.37
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.