我在data.frame中有两个变量“c”和“q”。 “c”是介于0和1之间的数字(贫困水平),“q”表示家庭(或对象)贫困为1或非贫困为0。 我怎样才能计算贫困家庭(q = 1)的“c”的均值。使用调查的子集的均值
重要的细节:我有一个coutry数据库,我想这个结果的区域。 我使用svyby
这样的:
svyby(~q , ~region , design = base2015_pos , na.rm=TRUE, svytotal)
所以以这种方式将R给我差多少地区和我现在不需要这个。我需要按地区划分子集的平均值(请参见上图)。
structure(list(domicilio = c(11000015001, 11000015003, 11000015004), agua = c(0, 0, 6), ind_agua = c(0, 0, 1), esgoto = c(1, 1, 6), ind_cond_sanitaria = c(1, 1, 1), lixo = c(0, 0, 0), ind_lixo = c(0, 0, 0), luz = c(0, 0, 0), ind_iluminacao = c(0, 0, 0), ativos = c(0, 0, 0), ind_ativos = c(0, 0, 0), emprego = c(0, 0, 0), ind_emprego = c(0, 0, 0), renda = c(0, 0, 0), ind_renda = c(0, 0, 0), casa = c(1, 1, 0), ind_riqueza = c(1, 1, 0), anos = c(0, 0, 0), ind_estudo = c(0, 0, 0), ler = c(0, 0, 0), ind_alfabetizado = c(0, 0, 0), peso = c(270, 270, 270), sexo = c(0, 1, 1), uf = c("11", "11", "11"), v4609 = c("001772940", "001772940", "001772940"), v4617 = c(110001, 110001, 110001), v4618 = c(1, 1, 1), pre_wgt = c(200, 200, 200), one = c(1L, 1L, 1L), region = c("1", "1", "1"), c = c(0.2, 0.2, 0.2), q = c(0, 0, 0)), .Names = c("domicilio", "agua", "ind_agua", "esgoto", "ind_cond_sanitaria", "lixo", "ind_lixo", "luz", "ind_iluminacao","ativos", "ind_ativos", "emprego", "ind_emprego", "renda", "ind_renda", "casa", "ind_riqueza", "anos", "ind_estudo", "ler", "ind_alfabetizado","peso", "sexo", "uf", "v4609", "v4617", "v4618", "pre_wgt", "one", "region", "c", "q"), row.names = c(NA, 3L), class = "data.frame")
欢迎堆叠溢出!你应该检查[问]。与此同时,它可以帮助我们使用'dput(data.frame)'来包含数据框架样本,并将结果代码粘贴到您的问题中。 –
谢谢杰克。我做过,但我不知道如何粘贴编辑我的问题的巨大结果代码。 –
'dput(head(data.frame,x))'其中x是您希望输出的行数。 –