Este relatório estima a demanda habitacional potencial no Distrito Federal a partir da PDAD, utilizando expansão amostral com desenho complexo (estratos, conglomerados e pesos). As estimativas são apresentadas com medidas de incerteza (erro-padrão, IC e CV) e publicadas somente quando o CV ≤ 25%. Os microdados são padronizados (nomes, tipos e rótulos), harmonizamos códigos de RA/PMB/Área Rural e derivamos variáveis de interesse (idade, condição no domicílio, grupos etários, indicadores de demanda). Regras de qualidade verificam chaves (domicílio/pessoa), duplicidades e coerência do desenho amostral. Estimamos: (i) taxa de chefia por faixa etária e grupo territorial; (ii) quantidade de adultos potencialmente demandantes (24–64 anos, não responsáveis nem cônjuges, sob regras familiares); e (iii) demanda final como produto da demanda potencial pela taxa de chefia da respectiva faixa.
Resultados são estratificados por grupo territorial (DF, PMB, Área Rural) e, quando a precisão permite, por Região Administrativa (RA) e faixas etárias (24–29, 30–39, 40–64). Células com CV alto são suprimidas (NA) e, se necessário, agregadas.
Este bloco prepara o ambiente de execução, garantindo:
if (!requireNamespace("pacman", quietly = TRUE)) install.packages("pacman")
# Carrega os principais pacotes utilizados no relatório.
# A função pacman::p_load() instala automaticamente o pacote caso não esteja presente.
pacman::p_load(tidyverse, # Manipulação e visualização de dados
data.table, # Leitura e operações eficientes com grandes bases
janitor, # Padronização de nomes e limpeza de tabelas
stringr, # Manipulação de strings (texto)
lubridate, # Manipulação de datas
survey, # Desenho e análise de dados amostrais complexos
srvyr, # Interface tidy para o pacote survey
gt, # Geração de tabelas formatadas
scales, # Escalas numéricas e rotulagem para gráficos
readr, # Leitura de arquivos CSV
readxl, # Leitura de planilhas Excel
glue # Construção dinâmica de textos e expressões
)
options(
scipen = 999,
dplyr.summarise.inform = FALSE
)
Aqui definimos todos os parâmetros que controlam a execução:
caminhos de arquivos (dados e dicionários);
parâmetros amostrais (CV máximo permitido);
faixas etárias e ano de referência.
Estes parâmetros podem ser alterados sem mexer no corpo do relatório.
params <- list(
salariominimo = 1302, # Salário mínimo vigente
ano_pdad = 2025, # Ano de referência da pesquisa
arquivo_pdad = "/data/pdad2024out.csv", # Caminho do arquivo principal da PDAD
dic_dom = "/data/dicionario_dom.csv", # Caminho do dicionário de domicílios
dic_mor = "/data/dicionario_mor.csv", # Caminho do dicionário de moradores
cv_max = 0.25 # Coeficiente de variação máximo aceito (25%)
)
salariominimo<-1302
Este trecho cria automaticamente as pastas onde os dados e saídas do relatório serão armazenados, evitando erros de caminho inexistente.
#if (!dir.exists("data")) dir.create("data")
#if (!dir.exists("output")) dir.create("output")
Verifica se os pacotes essenciais estão carregados e imprime uma mensagem de confirmação no console.
pacotes_essenciais <- c("tidyverse", "survey", "srvyr", "gt")
pacotes_faltando <- pacotes_essenciais[!sapply(pacotes_essenciais, requireNamespace, quietly = TRUE)]
Este bloco realiza a leitura dos microdados da PDAD e dos dicionários de domicílios e moradores, aplicando limpeza básica (nomes consistentes).
Leitura dos dicionários (estrutura das variáveis)
dic_dom <- readr::read_csv(params$dic_dom, show_col_types = FALSE) |>janitor::clean_names()
dic_mor <- readr::read_csv(params$dic_mor, show_col_types = FALSE) |>janitor::clean_names()
pdad2023 <- readr::read_csv(params$arquivo_pdad, show_col_types = FALSE) |>janitor::clean_names()#Leitura dos microdados da PDAD
New names:
• `` -> `...1`
Aviso: One or more parsing issues, call `problems()` on your data frame for details, e.g.:
dat <- vroom(...)
problems(dat)
Este bloco tem por objetivo preparar e ajustar os microdados da PDAD para o cálculo da demanda habitacional com base na taxa de chefia tradicional, isto é, considerando todos os chefes de domicílio da faixa etária de 24 a 64 anos. As etapas incluem a harmonização das bases de moradores e domicílios, a criação de variáveis derivadas e a identificação dos arranjos familiares que configuram ou não demanda habitacional.
Este bloco harmoniza variáveis básicas da PDAD, como UF, RA e códigos de domicílio, para permitir a classificação territorial e familiar dos registros.
pdad2023$UF[pdad2023$a01uf==52]<-"PMB"
Aviso: Unknown or uninitialised column: `UF`.
pdad2023$UF[pdad2023$a01uf==53]<-"DF"
pdad2023$UF |> table()
DF PMB
50643 18899
Inclusão de descrições de localidade a partir do dicionário de domicílios
#dic_dom |> filter(str_detect(coluna,"loca"))
pdad2023 |>
left_join(dic_dom |> filter(coluna=="localidade") |> mutate(strata_localidade=desc_valor) |> select(-coluna,-desc_coluna,-desc_valor),by=c("localidade"="valor"))->pdad2023
Criação e padronização de variáveis derivadas
pdad2023$idade<-pdad2023$idade_calculada
pdad2023$A01nficha<-pdad2023$ficha
pdad2023$RA_nome<-pdad2023$strata_localidade
pdad2023<-pdad2023 %>% mutate(grupo_pdadA=case_when(RA_nome=="Área Rural"~"Área Rural",
UF=="DF"~"DF",TRUE~UF))
contagem de pessoas no domicílio (A01npessoas)
pdad2023 %>% select(ficha,morador_id) %>%
mutate(n_morador=as.numeric(str_remove(morador_id,paste0(ficha,"-")))) %>%
group_by(ficha) %>%summarise(A01npessoas=max(n_morador)) %>%
right_join(pdad2023,by=c("ficha") )->pdad2023
Nesta etapa, restringe-se a base apenas aos domicílios cujo responsável tem entre 24 e 64 anos, faixa considerada economicamente ativa e foco da análise da demanda habitacional.
Deixar apenas os domicílios/moradores onde o responsável tem entre 24 e 64 anos.
pdad2023_original <- pdad2023
pdad2023 <-subset(pdad2023,ficha %in% subset(pdad2023, e04 == 1 & idade_calculada %in% c(24:64))$ficha)
Caso deseja-se ignorar essa regra ordar essa alternativa:
#pdad2023_original <- pdad2023
Nesta subseção inicia-se a identificação dos arranjos familiares, a partir da criação da variável matriz_familiar, que agrupa informações por tipo de membro (responsável, cônjuge, filho, etc.).
matriz_familiar <- pdad2023 %>%
# select(A01nficha, A01npessoas, e04, idade) %>%
mutate(condicao = 1,
e04_edit = case_when(e04 == 1 ~ 'responsavel',
e04 == 2 ~ 'conjuge',
e04 == 3 ~ 'conjuge',
e04 == 4 & idade < 24 ~ 'filho_menor24',
e04 == 5 & idade < 24 ~ 'filho_menor24',
e04 == 6 & idade < 24 ~ 'filho_menor24' ,
e04 == 4 & idade >=24 ~ 'filho_maior24',
e04 == 5 & idade >=24 ~ 'filho_maior24',
e04 == 6 & idade >=24 ~ 'filho_maior24',
e04 == 7 ~ 'genro_nora',
e04 == 8 ~ 'pais',
e04 == 9 ~ 'sogros',
e04 == 10 ~ 'neto',
e04 == 11 ~ 'bisneto',
e04 == 12 ~ 'irmao',
e04 == 13 ~ 'avos',
e04 == 14 ~ 'outro_parente',
e04 == 15 ~ 'agregado',
e04 == 16 ~ 'convivente',
e04 == 17 ~ 'pensionista',
e04 == 18 ~ 'empregado_domestico',
e04 == 19 ~ 'parente_empregado')) %>%
group_by(A01nficha, A01npessoas,
e04_edit) %>%
summarise(n = sum(condicao)) %>%
spread(e04_edit, n)
Nesta fase são criadas variáveis auxiliares que indicam:
Essas variáveis são cruciais para determinar quando o domicílio gera ou não demanda.
Criar variável indicadora de idoso no domicílio
pdad2023$idoso <- ifelse(pdad2023$idade >= 65, 1, 0)
matriz_idosos <-
as.data.frame(table(pdad2023$A01nficha, pdad2023$idoso))
pdad2023$idoso <- NULL
matriz_idosos$idosos <-
as.numeric(levels(matriz_idosos$Var2))[matriz_idosos$Var2] * matriz_idosos$Freq
names(matriz_idosos)[1] <- "A01nficha"
matriz_idosos <- subset(matriz_idosos, idosos > 0)
matriz_familiar <-
merge(matriz_familiar,
matriz_idosos,
by = "A01nficha",
all.x = TRUE)
#rm(matriz_idosos)
Indicadora se o idoso é responsável ou cônjuge
matriz_familiar$idoso_conj <-
ifelse(
matriz_familiar$A01nficha %in% subset(pdad2023, e04 %in% c(2, 3) &
idade >= 65)$A01nficha,
1,
0
)
Criação de variável indicadora de adulto (24–64 anos)
pdad2023$adulto <-
ifelse(pdad2023$idade >= 24 & pdad2023$idade < 65, 1, 0)
matriz_adulto <-
as.data.frame(table(pdad2023$A01nficha, pdad2023$adulto))
pdad2023$adulto <- NULL
matriz_adulto$adulto <-
as.numeric(levels(matriz_adulto$Var2))[matriz_adulto$Var2] * matriz_adulto$Freq
names(matriz_adulto)[1] <- "A01nficha"
matriz_adulto <- subset(matriz_adulto, adulto > 0)
matriz_familiar <-
merge(matriz_familiar,
matriz_adulto,
by = "A01nficha",
all.x = TRUE)
#rm(matriz_adulto)
Identificação de adultos responsáveis e cônjuges
matriz_familiar$adulto_resp <-
ifelse(
matriz_familiar$A01nficha %in% subset(pdad2023, e04 == 1 &
idade >= 24 & idade < 65)$A01nficha,
1,
0
)
matriz_familiar %>% group_by(adulto_resp) %>% summarise(n=n()) ### todos os domicilios tem adultos como responsaveis pelo domicilio
matriz_familiar$adulto_conj <-
ifelse(
matriz_familiar$A01nficha %in% subset(pdad2023, e04 %in% c(2, 3) &
idade >= 24 & idade < 65)$A01nficha,
1,
0
)
#matriz_familiar %>% group_by(adulto_conj) %>% summarise(n=n()) ### todos os domicilios tem adultos como responsaveis pelo domicilio
Aqui são aplicadas as regras que determinam se o domicílio gera demanda:
não há demanda quando o domicílio contém apenas o responsável, cônjuge, filhos menores e idosos;
há demanda quando existem adultos adicionais (24–64 anos) que não são responsáveis nem cônjuges.
Identificação de domicílios sem demanda
# filhos menores de 24 anos e idosos.
matriz_familiar$demanda <- NA
matriz_familiar$demanda <-
ifelse(((
rowSums(matriz_familiar[, c("responsavel", "conjuge", "filho_menor24", "idosos")], na.rm =TRUE)
- (matriz_familiar[, c("idoso_conj")])
) == matriz_familiar$A01npessoas) == TRUE,
0,
matriz_familiar$demanda)
matriz_familiar$demanda %>% table()
.
0
14211
Número de pessoas no domicílio que demandam habitação - i.e tem pessoas entre 24 e 64 anos que não são responsáveis ou cônjuges.
matriz_familiar$demanda <-
ifelse((matriz_familiar$A01npessoas - (
rowSums(matriz_familiar[, c("responsavel", "conjuge", "filho_menor24", "idosos")], na.rm =
TRUE) - (matriz_familiar[, c("idoso_conj")])
)) > 0,
(
matriz_familiar$adulto - rowSums(matriz_familiar[, c("adulto_resp", "adulto_conj")], na.rm =
TRUE)
),
matriz_familiar$demanda
)
Este bloco refina os casos de casais especiais (pais, avós, sogros, genros/noras e filhos adultos), que demandam regras diferenciadas na identificação de chefes e cônjuges. O objetivo é evitar dupla contagem de demanda ou imputação indevida.
Casais de avós, pais e sogros
matriz_familiar$casal_avos <- ifelse(matriz_familiar$avos == 2, 1, NA)
matriz_familiar$casal_pais <- ifelse(matriz_familiar$pais == 2, 1, NA)
matriz_familiar$casal_sogros <- ifelse(matriz_familiar$sogros == 2, 1, NA)
Nesta etapa, identificam-se diferentes tipos de casais presentes nos domicílios (avós, sogros, pais e filhos / genros / noras). O objetivo é determinar corretamente quem é o chefe do casal e seu cônjuge, evitando dupla contagem ou atribuição incorreta de demanda.
A indicação da existência de casal de filhos é a própria variável de genro/nora. Faz-se para cada tipo de casal separado porque pode haver mais de um tipo de casal por domicílio. Separa-se os indivíduos de cada casal para calcular a idade máxima (utilizada para identificar o chefe).
idade_casal_avos <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, casal_avos == 1 &
demanda > 0)$A01nficha) %>%
subset(e04 == 13)
idade_casal_sogros <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, casal_sogros == 1 &
demanda > 0)$A01nficha) %>%
subset(e04 == 9)
idade_casal_pais <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, casal_pais == 1 &
demanda > 0)$A01nficha) %>%
subset(e04 == 8)
Aqui calcula-se a idade do cônjuge mais velho para identificar o chefe de cada casal. A regra define o chefe como o indivíduo mais velho do par; em caso de empate, usa-se o menor identificador (morador_id) como critério secundário.
idade_casal_avos2 <- idade_casal_avos %>%
group_by(A01nficha) %>%
summarise(chefe_idade = max(idade))
idade_casal_avos <-
merge(idade_casal_avos,
idade_casal_avos2,
by = "A01nficha",
all.x = TRUE)
idade_casal_avos <- idade_casal_avos %>%
group_by(A01nficha) %>%
mutate(chefe_id = ifelse(sum(idade) / 2 == chefe_idade,min(morador_id),ifelse(idade == chefe_idade, morador_id, 0))) %>%
mutate(chefe_casal = ifelse(morador_id == chefe_id, 1, 0)) %>%
mutate(conj_casal = ifelse(morador_id != chefe_id, 1, 0))
#rm(idade_casal_avos2)
idade_casal_sogros2 <- idade_casal_sogros %>%
group_by(A01nficha) %>%
summarise(chefe_idade = max(idade))
idade_casal_sogros <-
merge(idade_casal_sogros,
idade_casal_sogros2,
by = "A01nficha",
all.x = TRUE)
idade_casal_sogros <- idade_casal_sogros %>%
group_by(A01nficha) %>%
mutate(chefe_id = ifelse(sum(idade) / 2 == chefe_idade,min(morador_id),ifelse(idade == chefe_idade, morador_id, 0))) %>%
mutate(chefe_casal = ifelse(morador_id == chefe_id, 1, 0)) %>%
mutate(conj_casal = ifelse(morador_id != chefe_id, 1, 0))
#rm(idade_casal_sogros2)
idade_casal_pais2 <- idade_casal_pais %>%
group_by(A01nficha) %>%
summarise(chefe_idade = max(idade))
idade_casal_pais <-
merge(idade_casal_pais,
idade_casal_pais2,
by = "A01nficha",
all.x = TRUE)
idade_casal_pais <- idade_casal_pais %>%
group_by(A01nficha) %>%
mutate(chefe_id = ifelse(sum(idade) / 2 == chefe_idade,min(morador_id),ifelse(idade == chefe_idade, morador_id, 0))) %>%
mutate(chefe_casal = ifelse(morador_id == chefe_id, 1, 0)) %>%
mutate(conj_casal = ifelse(morador_id != chefe_id, 1, 0))
#rm(idade_casal_pais2)
As próximas etapas lidam com arranjos em que filhos adultos e genros/noras compõem novos núcleos familiares dentro do domicílio. Cada caso é tratado separadamente, conforme a quantidade de filhos adultos e o tipo de vínculo.
# CASO 1 — Genro/nora com apenas um(a) filho(a) adulto(a) (≥24 anos)
idade_casal_filhos01 <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, genro_nora == 1 & filho_maior24 == 1, demanda > 0)$A01nficha) %>%
subset(e04 == 7 | (e04 %in% c(4:6) & idade >= 24)) # Mantém apenas registros do genro/nora (e04==7) e dos filhos adultos (e04 4:6, idade≥24)
# Calcula a idade máxima dentro de cada domicílio para identificar o chefe do casal
idade_casal_filhos01b <- idade_casal_filhos01 %>%
group_by(A01nficha) %>% summarise(chefe_idade = max(idade))
# Junta o valor da idade máxima de volta à base principal
idade_casal_filhos01 <-
merge(idade_casal_filhos01,
idade_casal_filhos01b,
by = "A01nficha",
all.x = TRUE)
# Define o chefe do casal (o mais velho) e o cônjuge (o outro indivíduo)
idade_casal_filhos01 <- idade_casal_filhos01 %>%
group_by(A01nficha) %>%
mutate(chefe_id = ifelse(sum(idade) / 2 == chefe_idade,min(morador_id),ifelse(idade == chefe_idade, morador_id, 0))) %>%# chefe_id = id do indivíduo mais velho; em empate, escolhe o menor morador_id
mutate(chefe_casal = ifelse(morador_id == chefe_id, 1, 0)) %>%
mutate(conj_casal = ifelse(morador_id != chefe_id, 1, 0))
#rm(idade_casal_filhos01b)
# CASO 2 — Genro/nora com dois ou mais filhos adultos (≥24 anos)
idade_casal_filhos02 <-
subset(pdad2023,A01nficha %in% subset(matriz_familiar, genro_nora == 1 &filho_maior24 >= 2, demanda > 0)$A01nficha) %>% # # Domicílios com 1 genro/nora e 2 ou mais filhos adultos, com demanda positiva
subset(e04 == 7 | (e04 %in% c(4:6) & idade >= 24)) # Mantém registros de genro/nora (e04==7) e filhos adultos (e04 4:6)
# Dentro desses domicílios, identifica o(a) filho(a) adulto(a) mais velho(a)
idade_casal_filhos02ad <- idade_casal_filhos02 %>%
group_by(A01nficha) %>%
filter(e04 %in% c(4:6)) %>%summarise(idade_filho = max(idade))
#Junta essa idade máxima à base principal
idade_casal_filhos02 <-
merge(idade_casal_filhos02,
idade_casal_filhos02ad,
by = "A01nficha",
all.x = TRUE) %>% subset(e04 == 7 | idade == idade_filho) %>%
subset(!(A01nficha == 57658 & morador_id == 4)) # Retira-se este caso específico em que os dois filhos mais velhos são gêmeos.
#rm(idade_casal_filhos02ad)
idade_casal_filhos02b <- idade_casal_filhos02 %>%
group_by(A01nficha) %>% summarise(chefe_idade = max(idade))
idade_casal_filhos02 <-
merge(idade_casal_filhos02,
idade_casal_filhos02b,
by = "A01nficha",
all.x = TRUE)
idade_casal_filhos02 <- idade_casal_filhos02 %>%
group_by(A01nficha) %>%
mutate(chefe_id = ifelse(sum(idade) / 2 == chefe_idade,min(morador_id),ifelse(idade == chefe_idade, morador_id, 0))) %>%
mutate(chefe_casal = ifelse(morador_id == chefe_id, 1, 0)) %>%
mutate(conj_casal = ifelse(morador_id != chefe_id, 1, 0))
#rm(idade_casal_filhos02b)
Trata-se dos casos em que o genro ou nora é o chefe do núcleo familiar, e o filho mais velho é identificado como cônjuge. Esses ajustes permitem representar corretamente o papel de cada indivíduo no arranjo.
# O genro/nora vai ser o chefe neste caso. Imputam-se os filhos mais velhos como cônjuge.
idade_casal_filhos03genro <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, genro_nora == 2 &
demanda > 0)$A01nficha
) %>%
subset(e04 == 7)
# Tem alguns casos que tem dois genros/noras, e não tem filhos com mais de 24 anos, apenas filhos menores.
idade_casal_filhos03filho <-
subset(
pdad2023,
A01nficha %in% subset(matriz_familiar, genro_nora == 2 &
demanda > 0)$A01nficha
) %>%
subset(e04 %in% c(4:6)) %>%
arrange(desc(idade)) %>%
group_by(A01nficha) %>%
slice(1:2)
# Junto os dados dos genros e filhos.
idade_casal_filhos03 <-
rbind(idade_casal_filhos03genro, idade_casal_filhos03filho)
idade_casal_filhos03 <- idade_casal_filhos03 %>%
group_by(A01nficha) %>%
mutate(chefe_casal = ifelse(e04 == 7, 1, 0)) %>%
mutate(conj_casal = ifelse(e04 != 7, 1, 0)) %>%
mutate(chefe_id = ifelse(chefe_casal == 1, morador_id, 0))
#rm(idade_casal_filhos03genro, idade_casal_filhos03filho)
Por fim, todos os casais identificados são consolidados em um único objeto (casais) e reincorporados à base original da PDAD. Também é incorporada a variável de demanda habitacional e o estrato de renda do responsável.
casais <-
bind_rows(
#list(
idade_casal_avos,
idade_casal_pais,
idade_casal_sogros,
idade_casal_filhos01,
idade_casal_filhos02,
idade_casal_filhos03
)
# Apesar de o objeto ser "casais", o número de observações é ímpar porque têm casais que só tem o genro.
casais <-
casais[, c("A01nficha",
"morador_id",
"chefe_casal",
"conj_casal",
"chefe_id")]
casais <- as.data.frame(casais)
Adição da informação sobre casais e demanda à PDAD
pdad2023_original <-
merge(
pdad2023_original,
casais,
all.x = TRUE,
by = c("A01nficha", "morador_id")
)
pdad2023_original$conj_casal <-
ifelse(is.na(pdad2023_original$conj_casal) == TRUE,
0,
pdad2023_original$conj_casal)
#pdad2023_original$conj_casal %>% table()
# Juntando as informações de demanda habitacional com a PDAD.
pdad2023_original <-
merge(pdad2023_original,
matriz_familiar[, c("A01nficha", "demanda")],
by = "A01nficha",
all.x = TRUE)
pdad2023_original$demanda %>% table()
.
0 1 2 3 4 5
40311 10229 4035 1008 163 38
Contabilização da renda do responsável
pdad_renda <- pdad2023_original %>%
filter(e04 == 1) %>%
mutate(
renda_resp = case_when(
renda_ind_r <= 1100 ~ "ate01SM",
renda_ind_r > 1100 &
renda_ind_r <= 3300 ~ "1a3SM",
renda_ind_r > 3300 &
renda_ind_r <= 5500 ~ "3a5SM",
renda_ind_r > 5500 &
renda_ind_r <= 13200 ~ "5a12SM",
renda_ind_r > 13200 ~ "maisde12SM"
)
) %>%
select(A01nficha, renda_resp)
# Junção dos dados de renda dos responsável com as demais informações da PDAD.
pdad2023_original <-
merge(pdad2023_original,
pdad_renda,
by = "A01nficha",
all.x = TRUE)
pdad2023_original$demanda %>% table()
.
0 1 2 3 4 5
40311 10229 4035 1008 163 38
Nesta seção, declara-se o desenho amostral complexo que será utilizado na estimação das taxas e totais expandidos. O plano considera:
amostra_mor <-
survey::svydesign(id = ~ficha,
strata = ~setor_distrito,
weights = ~peso_mor,
nest=TRUE,
data=pdad2023_original)
amostra_mor <- srvyr::as_survey(amostra_mor) %>%
mutate(grupo_etario = case_when(idade %in% c(24:29) ~ "idade_24_29",
idade %in% c(30:39) ~ "idade_30_39",
idade %in% c(40:64) ~ "idade_40_64",TRUE~"Outro"))
Nesta seção estimamos a taxa de chefia de domicílio por faixa etária e por grupo territorial (DF, PMB, Área Rural), utilizando o desenho amostral amostra_mor já declarado. Publicamos apenas estimativas com CV ≤ params$cv_max.
Calculando a população total
pop_total_total <- amostra_mor %>%
srvyr::group_by(grupo_pdadA) %>%
srvyr::filter(!grupo_etario=="Outro") %>%
srvyr::summarise(pop_total = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_total=ifelse(pop_total_cv>params$cv_max,NA,pop_total))
pop_total_total
Calculando a população chefe de domicílio
pop_chefe_total <- amostra_mor %>%
srvyr::filter(e04 == 1,!grupo_etario=="Outro") %>%
srvyr::group_by(grupo_pdadA) %>%
srvyr::summarise(pop_chefe = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_chefe=ifelse(pop_chefe_cv>params$cv_max,NA,pop_chefe))
pop_chefe_total
Calculando a taxa de chefia
taxa_chefia_groupo_A_total <- pop_chefe_total %>%
left_join(pop_total_total, by = c("grupo_pdadA")) %>%
mutate(taxa_chefia = pop_chefe / pop_total) %>%
select(grupo_pdadA, taxa_chefia, pop_chefe, pop_total)
taxa_chefia_groupo_A_total %>% filter(grupo_pdadA=="DF")
Calculando a população total
pop_total <- amostra_mor %>%
srvyr::group_by(grupo_etario,grupo_pdadA) %>%
srvyr::filter(!grupo_etario=="Outro") %>%
srvyr::summarise(pop_total = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_total=ifelse(pop_total_cv>params$cv_max,NA,pop_total))
pop_total
Calculando a população chefe de domicílio
pop_chefe <- amostra_mor %>%
srvyr::filter(e04 == 1,!grupo_etario=="Outro") %>%
srvyr::group_by(grupo_etario,grupo_pdadA) %>%
srvyr::summarise(pop_chefe = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_chefe=ifelse(pop_chefe_cv>params$cv_max,NA,pop_chefe))
pop_chefe
Calculando a taxa de chefia
taxa_chefia_groupo_A <- pop_chefe %>%
left_join(pop_total, by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(taxa_chefia = pop_chefe / pop_total) %>%
select(grupo_etario, grupo_pdadA, taxa_chefia, pop_chefe, pop_total)
taxa_chefia_groupo_A %>% filter(grupo_pdadA=="DF")
Calculando a população total
pop_total <- amostra_mor %>%
srvyr::group_by(grupo_etario,grupo_pdadA,strata_localidade) %>%
srvyr::filter(!grupo_etario=="Outro") %>%
srvyr::summarise(pop_total = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_total=ifelse(pop_total_cv>params$cv_max,NA,pop_total))
pop_total
Calculando a população chefe de domicílio
pop_chefe <- amostra_mor %>%
srvyr::filter(e04 == 1,!grupo_etario=="Outro") %>%
srvyr::group_by(grupo_etario,grupo_pdadA,strata_localidade) %>%
srvyr::summarise(pop_chefe = survey_total(vartype = c("cv", "ci"))) %>%
mutate(pop_chefe=ifelse(pop_chefe_cv>params$cv_max,NA,pop_chefe))
pop_chefe
Calculando a taxa de chefia
taxa_chefia_strata_localidade <- pop_chefe %>%
left_join(pop_total, by = c("grupo_etario", "grupo_pdadA",'strata_localidade')) %>%
mutate(taxa_chefia = pop_chefe / pop_total) %>%
select(grupo_etario, grupo_pdadA,strata_localidade, taxa_chefia, pop_chefe, pop_total)
taxa_chefia_strata_localidade %>% filter(grupo_pdadA=="DF")
Estimamos a demanda, no nível do morador, adultos 24–64 que não são responsáveis nem cônjuges. É a maneira mais direta de evitar duplicações. publicamos apenas resultados com CV ≤ params$cv_max e cruzamos por faixa etária e grupo usando a mesma definição do Bloco 5. ## 6.1 DEMANDA Grupos PDAD A | sem faixa etária
Calculando a demanda potencial por faixa etária e grupo territorial.
demanda_idade <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_pdadA) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade %>% filter(grupo_pdadA=="DF")
Versão com a taxa de chefia do do
demanda_idade_groupo_A_total <-
merge(demanda_idade, taxa_chefia_groupo_A_total,
by = c("grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_pdadA,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_groupo_A_total %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_pdadA demanda_ajustada demanda taxa_chefia pop_chefe pop_total
DF 119792.5 256829 0.4664289 779154.9 1670469
Total 119792.5 256829 0.4664289 779154.9 1670469
Calculando a demanda potencial por faixa etária e grupo territorial.
demanda_idade <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade %>% filter(grupo_pdadA=="DF")
Versão com a taxa de chefia do do
demanda_idade_groupo_A <-
merge(demanda_idade, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_groupo_A %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF 32333.53 116140.53 0.2784000 75125.59 269847.7
idade_30_39 DF 36566.39 84400.93 0.4332464 203635.50 470022.4
idade_40_64 DF 30266.45 56287.51 0.5377117 500393.82 930598.7
Total - 99166.37 256828.97 1.2493581 779154.91 1670468.8
Calculando a demanda potencial por faixa etária e grupo territorial.
demanda_idade <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_localidade) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade %>% filter(grupo_pdadA=="DF")
demanda_idade_RA <-
merge(demanda_idade, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,strata_localidade,grupo_pdadA,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_RA %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario strata_localidade grupo_pdadA demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 Arapoanga DF 684.38779 2458.2894 0.2784000 75125.59 269847.7
idade_24_29 Arniqueira DF 552.88538 1985.9388 0.2784000 75125.59 269847.7
idade_24_29 Brazlândia DF 528.14886 1897.0864 0.2784000 75125.59 269847.7
idade_24_29 Candangolândia DF 142.11927 510.4859 0.2784000 75125.59 269847.7
idade_24_29 Ceilândia DF 2805.99349 10078.9992 0.2784000 75125.59 269847.7
idade_24_29 Cruzeiro DF 272.94360 980.4008 0.2784000 75125.59 269847.7
idade_24_29 Fercal DF 68.19922 244.9685 0.2784000 75125.59 269847.7
idade_24_29 Gama DF 1357.19174 4874.9701 0.2784000 75125.59 269847.7
idade_24_29 Guará DF 1011.72064 3634.0539 0.2784000 75125.59 269847.7
idade_24_29 Itapoã DF 719.80971 2585.5233 0.2784000 75125.59 269847.7
idade_24_29 Jardim Botânico DF 876.35213 3147.8164 0.2784000 75125.59 269847.7
idade_24_29 Lago Norte DF 390.48697 1402.6112 0.2784000 75125.59 269847.7
idade_24_29 Lago Sul DF 279.17039 1002.7672 0.2784000 75125.59 269847.7
idade_24_29 Núcleo Bandeirante DF 240.20248 862.7962 0.2784000 75125.59 269847.7
idade_24_29 Paranoá DF 712.82892 2560.4486 0.2784000 75125.59 269847.7
idade_24_29 Park Way DF 296.73303 1065.8514 0.2784000 75125.59 269847.7
idade_24_29 Planaltina DF 1580.36472 5676.5972 0.2784000 75125.59 269847.7
idade_24_29 Plano Piloto DF 1776.57709 6381.3830 0.2784000 75125.59 269847.7
idade_24_29 Recanto Das Emas DF 1583.53511 5687.9851 0.2784000 75125.59 269847.7
idade_24_29 Riacho Fundo DF 564.28372 2026.8811 0.2784000 75125.59 269847.7
idade_24_29 Riacho Fundo II DF 982.41699 3528.7965 0.2784000 75125.59 269847.7
idade_24_29 SCIA DF 377.37604 1355.5173 0.2784000 75125.59 269847.7
idade_24_29 SIA DF NA NA 0.2784000 75125.59 269847.7
idade_24_29 Samambaia DF 3148.40127 11308.9122 0.2784000 75125.59 269847.7
idade_24_29 Santa Maria DF 1919.90629 6896.2149 0.2784000 75125.59 269847.7
idade_24_29 Sobradinho DF 929.61581 3339.1371 0.2784000 75125.59 269847.7
idade_24_29 Sobradinho II DF 963.73993 3461.7094 0.2784000 75125.59 269847.7
idade_24_29 Sol Nascente / Pôr do Sol DF 1136.92671 4083.7883 0.2784000 75125.59 269847.7
idade_24_29 Sudoeste e Octogonal DF 282.40469 1014.3846 0.2784000 75125.59 269847.7
idade_24_29 São Sebastião DF 1378.15404 4950.2658 0.2784000 75125.59 269847.7
idade_24_29 Taguatinga DF 2392.01768 8592.0172 0.2784000 75125.59 269847.7
idade_24_29 Varjão DF 132.45404 475.7688 0.2784000 75125.59 269847.7
idade_24_29 Vicente Pires DF 1049.02440 3768.0473 0.2784000 75125.59 269847.7
idade_24_29 Água Quente DF 137.40315 493.5458 0.2784000 75125.59 269847.7
idade_24_29 Águas Claras DF 941.70495 3382.5608 0.2784000 75125.59 269847.7
idade_30_39 Arapoanga DF 587.71993 1356.5490 0.4332464 203635.50 470022.4
idade_30_39 Arniqueira DF 623.32152 1438.7230 0.4332464 203635.50 470022.4
idade_30_39 Brazlândia DF 594.87621 1373.0668 0.4332464 203635.50 470022.4
idade_30_39 Candangolândia DF 151.73601 350.2303 0.4332464 203635.50 470022.4
idade_30_39 Ceilândia DF 3722.65247 8592.4609 0.4332464 203635.50 470022.4
idade_30_39 Cruzeiro DF 313.16883 722.8424 0.4332464 203635.50 470022.4
idade_30_39 Fercal DF 72.06469 166.3365 0.4332464 203635.50 470022.4
idade_30_39 Gama DF 2136.32591 4930.9725 0.4332464 203635.50 470022.4
idade_30_39 Guará DF 1683.22736 3885.1506 0.4332464 203635.50 470022.4
idade_30_39 Itapoã DF 572.11697 1320.5350 0.4332464 203635.50 470022.4
idade_30_39 Jardim Botânico DF 791.05205 1825.8712 0.4332464 203635.50 470022.4
idade_30_39 Lago Norte DF 413.99836 955.5726 0.4332464 203635.50 470022.4
idade_30_39 Lago Sul DF NA NA 0.4332464 203635.50 470022.4
idade_30_39 Núcleo Bandeirante DF 352.21660 812.9707 0.4332464 203635.50 470022.4
idade_30_39 Paranoá DF 614.49026 1418.3391 0.4332464 203635.50 470022.4
idade_30_39 Park Way DF 322.55379 744.5043 0.4332464 203635.50 470022.4
idade_30_39 Planaltina DF 1526.61691 3523.6693 0.4332464 203635.50 470022.4
idade_30_39 Plano Piloto DF 1912.63450 4414.6579 0.4332464 203635.50 470022.4
idade_30_39 Recanto Das Emas DF 1462.18858 3374.9587 0.4332464 203635.50 470022.4
idade_30_39 Riacho Fundo DF 722.92712 1668.6283 0.4332464 203635.50 470022.4
idade_30_39 Riacho Fundo II DF 1031.14866 2380.0515 0.4332464 203635.50 470022.4
idade_30_39 SCIA DF 344.78096 795.8081 0.4332464 203635.50 470022.4
idade_30_39 SIA DF NA NA 0.4332464 203635.50 470022.4
idade_30_39 Samambaia DF 3410.55410 7872.0894 0.4332464 203635.50 470022.4
idade_30_39 Santa Maria DF 2237.07409 5163.5150 0.4332464 203635.50 470022.4
idade_30_39 Sobradinho DF 1178.81595 2720.8906 0.4332464 203635.50 470022.4
idade_30_39 Sobradinho II DF 1119.16583 2583.2088 0.4332464 203635.50 470022.4
idade_30_39 Sol Nascente / Pôr do Sol DF NA NA 0.4332464 203635.50 470022.4
idade_30_39 Sudoeste e Octogonal DF NA NA 0.4332464 203635.50 470022.4
idade_30_39 São Sebastião DF 1179.17614 2721.7219 0.4332464 203635.50 470022.4
idade_30_39 Taguatinga DF 2640.05596 6093.6598 0.4332464 203635.50 470022.4
idade_30_39 Varjão DF 115.73544 267.1354 0.4332464 203635.50 470022.4
idade_30_39 Vicente Pires DF 1502.23238 3467.3860 0.4332464 203635.50 470022.4
idade_30_39 Água Quente DF 124.70951 287.8489 0.4332464 203635.50 470022.4
idade_30_39 Águas Claras DF 1394.75499 3219.3115 0.4332464 203635.50 470022.4
idade_40_64 Arapoanga DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Arniqueira DF 464.98066 864.7397 0.5377117 500393.82 930598.7
idade_40_64 Brazlândia DF 435.93503 810.7226 0.5377117 500393.82 930598.7
idade_40_64 Candangolândia DF 168.80392 313.9302 0.5377117 500393.82 930598.7
idade_40_64 Ceilândia DF 4395.73027 8174.8832 0.5377117 500393.82 930598.7
idade_40_64 Cruzeiro DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Fercal DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Gama DF 1724.57154 3207.2421 0.5377117 500393.82 930598.7
idade_40_64 Guará DF 1572.17071 2923.8173 0.5377117 500393.82 930598.7
idade_40_64 Itapoã DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Jardim Botânico DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Lago Norte DF 420.86819 782.7023 0.5377117 500393.82 930598.7
idade_40_64 Lago Sul DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Núcleo Bandeirante DF 301.40361 560.5301 0.5377117 500393.82 930598.7
idade_40_64 Paranoá DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Park Way DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Planaltina DF 1319.14402 2453.2553 0.5377117 500393.82 930598.7
idade_40_64 Plano Piloto DF 1757.23865 3267.9941 0.5377117 500393.82 930598.7
idade_40_64 Recanto Das Emas DF 921.15376 1713.0998 0.5377117 500393.82 930598.7
idade_40_64 Riacho Fundo DF 530.82475 987.1921 0.5377117 500393.82 930598.7
idade_40_64 Riacho Fundo II DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 SCIA DF 262.85371 488.8376 0.5377117 500393.82 930598.7
idade_40_64 SIA DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 Samambaia DF 2297.84754 4273.3822 0.5377117 500393.82 930598.7
idade_40_64 Santa Maria DF 1518.67573 2824.3309 0.5377117 500393.82 930598.7
idade_40_64 Sobradinho DF 1008.26019 1875.0944 0.5377117 500393.82 930598.7
idade_40_64 Sobradinho II DF 885.40859 1646.6233 0.5377117 500393.82 930598.7
idade_40_64 Sol Nascente / Pôr do Sol DF 841.38622 1564.7535 0.5377117 500393.82 930598.7
idade_40_64 Sudoeste e Octogonal DF NA NA 0.5377117 500393.82 930598.7
idade_40_64 São Sebastião DF 964.85288 1794.3684 0.5377117 500393.82 930598.7
idade_40_64 Taguatinga DF 3105.84700 5776.0452 0.5377117 500393.82 930598.7
idade_40_64 Varjão DF 122.14371 227.1546 0.5377117 500393.82 930598.7
idade_40_64 Vicente Pires DF 901.91278 1677.3167 0.5377117 500393.82 930598.7
idade_40_64 Água Quente DF 84.02860 156.2707 0.5377117 500393.82 930598.7
idade_40_64 Águas Claras DF NA NA 0.5377117 500393.82 930598.7
Total - - 93075.61439 244529.4719 43.7275322 27270421.89 58466408.5
demanda_idade_RA <-
merge(demanda_idade, taxa_chefia_strata_localidade,
by = c("grupo_etario", "grupo_pdadA","strata_localidade")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,strata_localidade,grupo_pdadA,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_RA %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario strata_localidade grupo_pdadA demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 Água Quente DF 186.72119 493.5458 0.3783260 439.0531 1160.5154
idade_24_29 Águas Claras DF 1494.67520 3382.5608 0.4418768 5039.9202 11405.7130
idade_24_29 Arapoanga DF 649.36355 2458.2894 0.2641526 1451.3100 5494.2105
idade_24_29 Arniqueira DF 580.74496 1985.9388 0.2924284 1291.5980 4416.8004
idade_24_29 Brazlândia DF 513.83461 1897.0864 0.2708546 1082.9076 3998.1138
idade_24_29 Candangolândia DF 198.34395 510.4859 0.3885395 567.9877 1461.8530
idade_24_29 Ceilândia DF 3545.52626 10078.9992 0.3517736 9781.7833 27807.0389
idade_24_29 Cruzeiro DF 280.31132 980.4008 0.2859150 680.0866 2378.6321
idade_24_29 Fercal DF 92.71846 244.9685 0.3784914 310.6755 820.8257
idade_24_29 Gama DF 1014.84487 4874.9701 0.2081746 2453.0353 11783.5485
idade_24_29 Guará DF 1184.28560 3634.0539 0.3258855 3790.6829 11631.9459
idade_24_29 Itapoã DF 976.16274 2585.5233 0.3775494 2717.2840 7197.1618
idade_24_29 Jardim Botânico DF NA 3147.8164 NA NA 4946.7141
idade_24_29 Lago Norte DF 486.13122 1402.6112 0.3465901 1166.7856 3366.4709
idade_24_29 Lago Sul DF NA 1002.7672 NA NA 1672.9974
idade_24_29 Núcleo Bandeirante DF 282.83511 862.7962 0.3278122 773.6254 2359.9654
idade_24_29 Paranoá DF 736.19121 2560.4486 0.2875243 1509.2334 5249.0636
idade_24_29 Park Way DF NA 1065.8514 NA NA 1561.0942
idade_24_29 Planaltina DF 1106.78211 5676.5972 0.1949728 2410.4123 12362.8126
idade_24_29 Plano Piloto DF 1802.47052 6381.3830 0.2824577 4337.9317 15357.8123
idade_24_29 Recanto Das Emas DF 1268.39624 5687.9851 0.2229957 2619.7775 11748.1073
idade_24_29 Riacho Fundo DF 657.56072 2026.8811 0.3244200 1541.2174 4750.6859
idade_24_29 Riacho Fundo II DF 808.90746 3528.7965 0.2292304 1607.7793 7013.8135
idade_24_29 Samambaia DF 2518.26815 11308.9122 0.2226800 5325.5532 23915.7269
idade_24_29 Santa Maria DF 1825.69871 6896.2149 0.2647392 3442.1223 13001.9344
idade_24_29 São Sebastião DF 1783.69313 4950.2658 0.3603227 4153.8658 11528.1824
idade_24_29 SCIA DF 470.78830 1355.5173 0.3473126 1442.1546 4152.3241
idade_24_29 SIA DF NA NA NA NA 875.4585
idade_24_29 Sobradinho DF 645.15058 3339.1371 0.1932088 1240.5633 6420.8438
idade_24_29 Sobradinho II DF 994.83338 3461.7094 0.2873821 2123.4027 7388.7780
idade_24_29 Sol Nascente / Pôr do Sol DF 1223.60320 4083.7883 0.2996245 3051.0528 10182.9202
idade_24_29 Sudoeste e Octogonal DF 454.40657 1014.3846 0.4479628 1584.1510 3536.3450
idade_24_29 Taguatinga DF 1565.27873 8592.0172 0.1821783 3444.6535 18908.1479
idade_24_29 Varjão DF 177.91448 475.7688 0.3739516 441.4791 1180.5783
idade_24_29 Vicente Pires DF 851.42775 3768.0473 0.2259599 1990.8285 8810.5370
idade_30_39 Água Quente DF 143.37348 287.8489 0.4980858 852.0832 1710.7155
idade_30_39 Águas Claras DF 1755.33200 3219.3115 0.5452508 16319.4367 29930.1499
idade_30_39 Arapoanga DF 635.17135 1356.5490 0.4682259 3528.2057 7535.2643
idade_30_39 Arniqueira DF 648.08748 1438.7230 0.4504602 3173.5006 7045.0185
idade_30_39 Brazlândia DF 589.28226 1373.0668 0.4291723 2614.3319 6091.5670
idade_30_39 Candangolândia DF 163.19191 350.2303 0.4659560 1154.4915 2477.6836
idade_30_39 Ceilândia DF 3475.53996 8592.4609 0.4044871 17775.9087 43946.7832
idade_30_39 Cruzeiro DF 296.60716 722.8424 0.4103345 1865.9673 4547.4298
idade_30_39 Fercal DF 77.55938 166.3365 0.4662800 675.3566 1448.3929
idade_30_39 Gama DF 2025.80016 4930.9725 0.4108318 8130.6232 19790.6390
idade_30_39 Guará DF 1767.99584 3885.1506 0.4550649 10616.8855 23330.4840
idade_30_39 Itapoã DF 733.79213 1320.5350 0.5556779 5846.3908 10521.1860
idade_30_39 Jardim Botânico DF 706.22447 1825.8712 0.3867877 4634.2421 11981.3593
idade_30_39 Lago Norte DF 449.05125 955.5726 0.4699290 3314.1951 7052.5447
idade_30_39 Lago Sul DF NA NA NA NA 2713.9318
idade_30_39 Núcleo Bandeirante DF 309.48578 812.9707 0.3806850 1492.0079 3919.2713
idade_30_39 Paranoá DF 643.31017 1418.3391 0.4535658 4095.1607 9028.8119
idade_30_39 Park Way DF 209.15205 744.5043 0.2809279 809.4543 2881.3594
idade_30_39 Planaltina DF 1508.34152 3523.6693 0.4280599 8128.0310 18988.0691
idade_30_39 Plano Piloto DF 1960.12693 4414.6579 0.4440043 16142.5251 36356.6895
idade_30_39 Recanto Das Emas DF 1397.41505 3374.9587 0.4140540 7034.0189 16988.1691
idade_30_39 Riacho Fundo DF 700.90399 1668.6283 0.4200480 3060.4287 7285.9019
idade_30_39 Riacho Fundo II DF 984.64152 2380.0515 0.4137060 4630.4652 11192.6478
idade_30_39 Samambaia DF 3500.46707 7872.0894 0.4446681 18275.3993 41098.9657
idade_30_39 Santa Maria DF 1803.40220 5163.5150 0.3492586 7075.0896 20257.4507
idade_30_39 São Sebastião DF 1295.84458 2721.7219 0.4761120 8094.2318 17000.6871
idade_30_39 SCIA DF 375.00744 795.8081 0.4712285 2945.4293 6250.5333
idade_30_39 SIA DF NA NA 0.5828497 772.6981 1325.7243
idade_30_39 Sobradinho DF 825.18663 2720.8906 0.3032781 3328.7470 10975.8884
idade_30_39 Sobradinho II DF 1066.26385 2583.2088 0.4127672 5111.0021 12382.2876
idade_30_39 Sol Nascente / Pôr do Sol DF NA NA 0.4438060 7266.4740 16373.0880
idade_30_39 Sudoeste e Octogonal DF NA NA 0.6016848 5479.2608 9106.5297
idade_30_39 Taguatinga DF 2447.81698 6093.6598 0.4016990 12528.3817 31188.4821
idade_30_39 Varjão DF 122.55453 267.1354 0.4587731 697.1347 1519.5631
idade_30_39 Vicente Pires DF 1258.51958 3467.3860 0.3629592 5727.1842 15779.1414
idade_40_64 Água Quente DF 91.88234 156.2707 0.5879689 1997.8922 3397.9554
idade_40_64 Águas Claras DF NA NA 0.6212638 31801.0768 51187.7192
idade_40_64 Arapoanga DF NA NA 0.5873248 8312.7663 14153.6104
idade_40_64 Arniqueira DF 473.02575 864.7397 0.5470152 8425.2666 15402.2540
idade_40_64 Brazlândia DF 454.46840 810.7226 0.5605720 7260.6063 12952.1389
idade_40_64 Candangolândia DF 160.74952 313.9302 0.5120550 2311.3213 4513.8143
idade_40_64 Ceilândia DF 4283.83730 8174.8832 0.5240243 47435.0722 90520.7527
idade_40_64 Cruzeiro DF NA NA 0.5854187 5547.4271 9475.9988
idade_40_64 Fercal DF NA NA 0.5499338 1431.8738 2603.7203
idade_40_64 Gama DF 1577.08113 3207.2421 0.4917250 22553.4699 45866.0216
idade_40_64 Guará DF 1426.63674 2923.8173 0.4879364 21339.6075 43734.4076
idade_40_64 Itapoã DF NA NA 0.6304697 11889.7773 18858.6026
idade_40_64 Jardim Botânico DF NA NA 0.5344266 15346.6145 28716.0378
idade_40_64 Lago Norte DF 415.63408 782.7023 0.5310245 7934.7134 14942.2750
idade_40_64 Lago Sul DF NA NA 0.3758333 3790.6966 10086.1129
idade_40_64 Núcleo Bandeirante DF 286.36027 560.5301 0.5108740 3776.1257 7391.5012
idade_40_64 Paranoá DF NA NA 0.6508143 10563.6676 16231.4632
idade_40_64 Park Way DF NA NA 0.4738657 4054.4557 8556.1281
idade_40_64 Planaltina DF 1328.64427 2453.2553 0.5415842 20507.7370 37866.2030
idade_40_64 Plano Piloto DF 1708.64239 3267.9941 0.5228413 39670.4927 75874.8222
idade_40_64 Recanto Das Emas DF 942.23476 1713.0998 0.5500174 17281.5239 31419.9558
idade_40_64 Riacho Fundo DF 554.79491 987.1921 0.5619928 7319.2545 13023.7505
idade_40_64 Riacho Fundo II DF NA NA 0.5785937 13274.3085 22942.3671
idade_40_64 Samambaia DF 2186.50727 4273.3822 0.5116573 34322.8942 67081.8000
idade_40_64 Santa Maria DF 1451.36437 2824.3309 0.5138790 18932.8797 36843.0685
idade_40_64 São Sebastião DF 1044.18540 1794.3684 0.5819236 16560.1072 28457.5264
idade_40_64 SCIA DF 272.30797 488.8376 0.5570520 5227.2913 9383.8485
idade_40_64 SIA DF NA NA 0.5630630 864.7036 1535.7138
idade_40_64 Sobradinho DF 934.36371 1875.0944 0.4983022 11972.2450 24026.0721
idade_40_64 Sobradinho II DF 825.24060 1646.6233 0.5011715 13192.2095 26322.7468
idade_40_64 Sol Nascente / Pôr do Sol DF 958.16198 1564.7535 0.6123405 19827.5266 32379.9018
idade_40_64 Sudoeste e Octogonal DF NA NA 0.6139738 10909.6615 17768.9377
idade_40_64 Taguatinga DF 2979.82295 5776.0452 0.5158933 34999.0532 67841.6522
idade_40_64 Varjão DF 129.58725 227.1546 0.5704803 1330.1537 2331.6383
idade_40_64 Vicente Pires DF 837.53290 1677.3167 0.4993290 18429.3424 36908.2137
Total - - 89576.38523 244529.4719 43.4026133 777401.4722 1670468.8157
###Por grupo Etário
#pdad2023$e07#Estado civil
demanda_idade_strata1 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_estado_civil=case_when(e07==1~"Solteiro",
e07==2~"Casado",
e07==3~"Desquitado ou separado judicialmente",
e07==4~"Desquitado ou separado judicialmente",
e07==5~"Viúvo",
TRUE~"Não Sabe / Não se Aplica")) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_estado_civil) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata1 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata1 <-
merge(demanda_idade_strata1, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_estado_civil,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata1 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_estado_civil demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF Casado 1933.748 6945.934 0.2784000 75125.59 269847.7
idade_24_29 DF Desquitado ou separado judicialmente NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Solteiro 29877.766 107319.558 0.2784000 75125.59 269847.7
idade_24_29 DF Viúvo NA NA 0.2784000 75125.59 269847.7
idade_30_39 DF Casado 4037.859 9320.006 0.4332464 203635.50 470022.4
idade_30_39 DF Desquitado ou separado judicialmente 2074.316 4787.844 0.4332464 203635.50 470022.4
idade_30_39 DF Solteiro 30096.832 69468.171 0.4332464 203635.50 470022.4
idade_30_39 DF Viúvo NA NA 0.4332464 203635.50 470022.4
idade_40_64 DF Casado 5030.471 9355.331 0.5377117 500393.82 930598.7
idade_40_64 DF Desquitado ou separado judicialmente 4367.217 8121.856 0.5377117 500393.82 930598.7
idade_40_64 DF Solteiro 19109.993 35539.479 0.5377117 500393.82 930598.7
idade_40_64 DF Viúvo 1673.811 3112.840 0.5377117 500393.82 930598.7
Total - - 98202.013 253971.019 4.9974323 3116619.64 6681875.3
###sem grupo etário
#pdad2023$e07#Estado civil
demanda_idade_strata1_total <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_estado_civil=case_when(e07==1~"Solteiro",
e07==2~"Casado",
e07==3~"Desquitado ou separado judicialmente",
e07==4~"Desquitado ou separado judicialmente",
e07==5~"Viúvo",
TRUE~"Não Sabe / Não se Aplica")) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_pdadA,strata_estado_civil) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata1_total %>% filter(grupo_pdadA=="DF")
demanda_idade_strata1_total <-
merge(demanda_idade_strata1_total, taxa_chefia_groupo_A_total,
by = c("grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_pdadA,strata_estado_civil,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata1_total %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_pdadA strata_estado_civil demanda_ajustada demanda taxa_chefia pop_chefe pop_total
DF Casado 11950.501 25621.272 0.4664289 779154.9 1670469
DF Desquitado ou separado judicialmente 6674.296 14309.355 0.4664289 779154.9 1670469
DF Solteiro 99035.543 212327.208 0.4664289 779154.9 1670469
DF Viúvo 1588.339 3405.319 0.4664289 779154.9 1670469
Total - 119248.680 255663.153 1.8657155 3116619.6 6681875
###Por grupo Etário
pdad2023$escolaridade#Estado civil
[1] 5 7 7 1 1 2 5 4 2 2 5 8 2 4 6 2 1 7 7 2 5 3 4 7 7 2 2 5 8 8 8 8 7 5 2 2 2 5 7 3 3 8 2 2 5 5 4 8 2 7 7 2 2 3 4 1 1 7 7
[60] 8 8 5 8 2 8 2 7 7 7 5 2 5 5 4 2 5 4 2 1 6 5 7 7 7 7 2 5 2 8 2 2 5 7 2 5 5 5 5 6 4 6 2 5 2 4 5 3 2 4 2 5 5 4 5 5 7 7 6
[119] 6 4 3 8 5 4 5 7 7 7 7 5 5 5 2 2 2 3 7 6 2 4 2 6 5 5 7 5 7 7 5 7 7 5 1 2 2 2 2 5 4 2 2 8 4 2 2 2 7 5 7 7 2 8 7 4 2 7 6
[178] 7 5 7 2 3 4 3 2 2 6 5 5 2 2 2 2 7 7 7 5 1 3 3 4 7 5 1 6 4 7 1 2 2 8 1 8 6 5 6 6 7 4 5 8 2 1 5 7 4 7 7 7 5 6 2 4 2 7 7
[237] 6 2 5 5 2 4 2 8 2 5 2 2 2 5 5 5 2 3 2 1 7 5 8 4 3 3 7 7 5 2 2 8 7 5 8 4 5 5 2 5 5 5 2 4 4 4 2 2 1 8 5 7 6 2 5 2 1 2 1
[296] 2 7 7 2 2 5 3 5 5 3 5 5 7 6 3 5 5 5 2 7 6 7 3 6 5 5 7 5 4 2 7 7 5 5 4 8 3 4 2 8 7 5 7 7 5 2 5 2 2 7 4 6 5 6 2 4 2 7 7
[355] 5 6 2 5 2 2 1 8 5 7 5 8 4 4 4 1 2 2 2 2 1 8 2 2 5 7 1 5 2 2 2 8 7 5 4 2 7 7 2 2 5 3 2 1 8 8 7 2 4 4 2 2 2 3 1 8 5 2 8
[414] 4 2 5 5 6 4 2 4 1 2 2 5 5 5 5 2 4 3 7 5 5 7 7 5 7 6 6 4 2 7 7 2 3 6 5 1 2 2 7 7 7 6 2 2 2 8 7 6 2 7 5 5 4 7 7 7 7 2 2
[473] 2 2 5 5 6 5 1 6 7 5 5 2 2 1 2 5 2 1 2 8 2 3 4 2 8 7 7 1 7 7 1 5 3 4 7 7 4 2 5 2 5 6 2 2 2 2 6 5 8 5 5 2 8 7 6 7 7 7 2
[532] 2 5 5 4 4 3 4 6 5 8 2 7 7 2 5 5 2 2 5 7 2 4 2 2 1 8 5 3 8 5 7 5 2 4 5 2 5 5 4 7 5 7 7 5 5 4 7 7 2 7 7 5 7 5 5 6 5 7 7
[591] 7 7 7 1 6 7 4 7 7 2 2 5 2 8 3 3 2 8 5 5 5 1 7 2 8 7 5 7 2 2 5 2 5 7 4 5 2 2 5 2 5 7 7 5 7 7 6 5 5 4 5 5 1 3 1 5 2 3 2
[650] 5 5 7 7 7 7 2 3 6 6 2 2 5 5 2 5 7 2 2 5 2 2 2 5 8 2 5 2 2 7 2 5 7 4 8 5 5 4 1 7 7 4 7 5 4 2 5 5 6 2 5 5 6 2 7 2 2 2 8
[709] 6 6 2 2 2 2 2 8 8 8 3 7 6 4 7 7 2 3 1 7 6 1 8 2 2 2 1 4 2 2 2 3 5 7 2 2 2 1 5 5 5 2 7 7 2 2 1 5 2 5 5 7 5 2 6 7 7 1 7
[768] 5 2 1 8 5 2 6 2 7 7 2 3 5 6 3 1 2 2 4 4 5 2 1 7 5 6 6 4 8 5 5 7 7 1 5 7 7 3 6 3 2 2 4 3 5 7 5 5 7 2 2 2 2 3 3 7 6 5 5
[827] 2 8 7 4 2 4 6 8 2 2 1 8 8 1 2 5 2 2 5 5 5 5 7 2 2 5 4 2 2 2 2 5 5 6 2 3 2 3 5 5 5 1 2 2 2 2 1 8 4 4 4 5 5 2 2 7 7 7 2
[886] 2 7 7 5 4 4 2 2 7 7 5 3 2 2 3 8 5 2 7 7 5 2 7 5 1 8 2 4 2 2 7 3 7 5 6 4 1 1 2 2 2 3 5 3 5 2 1 8 8 7 7 4 2 7 2 6 8 5 7
[945] 7 3 4 4 2 2 1 8 7 7 4 4 5 5 5 2 5 5 4 1 5 5 2 1 7 7 7 6 2 2 2 2 5 7 1 1 4 7 3 2 5 2 2 5 5 1 5 5 5 5 5 6 7 6 4 2
[ reached getOption("max.print") -- omitted 54784 entries ]
demanda_idade_strata2 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_escolaridade=case_when(escolaridade==1~"Sem instrução",
escolaridade==2~"Fundamental incompleto ou equivalente",
escolaridade==3~"Fundamental completo ou equivalente",
escolaridade==4~"Médio incompleto ou equivalente",
escolaridade==5~"Médio completo ou equivalente",
escolaridade==6~"Superior incompleto ou equivalente",
escolaridade==7~"Superior completo ",
escolaridade==8~"Sem classificação",
TRUE~"Não Sabe / Não se Aplica")) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_escolaridade) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata2 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata2 <-
merge(demanda_idade_strata2, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_escolaridade,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata2 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_escolaridade demanda_ajustada demanda taxa_chefia pop_chefe
idade_24_29 DF Fundamental completo ou equivalente 578.8574 2079.229 0.2784000 75125.59
idade_24_29 DF Fundamental incompleto ou equivalente 1088.8655 3911.155 0.2784000 75125.59
idade_24_29 DF Médio completo ou equivalente 9769.7015 35092.317 0.2784000 75125.59
idade_24_29 DF Médio incompleto ou equivalente 1372.1906 4928.845 0.2784000 75125.59
idade_24_29 DF Sem classificação 844.2503 3032.508 0.2784000 75125.59
idade_24_29 DF Sem instrução NA NA 0.2784000 75125.59
idade_24_29 DF Superior completo 12656.9003 45463.002 0.2784000 75125.59
idade_24_29 DF Superior incompleto ou equivalente 5766.7659 20713.957 0.2784000 75125.59
idade_30_39 DF Fundamental completo ou equivalente 627.0126 1447.243 0.4332464 203635.50
idade_30_39 DF Fundamental incompleto ou equivalente 2572.0865 5936.776 0.4332464 203635.50
idade_30_39 DF Médio completo ou equivalente 10088.2462 23285.241 0.4332464 203635.50
idade_30_39 DF Médio incompleto ou equivalente 1698.8711 3921.259 0.4332464 203635.50
idade_30_39 DF Sem classificação 1948.6349 4497.753 0.4332464 203635.50
idade_30_39 DF Sem instrução NA NA 0.4332464 203635.50
idade_30_39 DF Superior completo 15064.1815 34770.474 0.4332464 203635.50
idade_30_39 DF Superior incompleto ou equivalente 3822.4948 8822.913 0.4332464 203635.50
idade_40_64 DF Fundamental completo ou equivalente 1923.4800 3577.159 0.5377117 500393.82
idade_40_64 DF Fundamental incompleto ou equivalente 5441.6096 10119.939 0.5377117 500393.82
idade_40_64 DF Médio completo ou equivalente 9693.2051 18026.770 0.5377117 500393.82
idade_40_64 DF Médio incompleto ou equivalente 1336.4272 2485.397 0.5377117 500393.82
idade_40_64 DF Sem classificação 2875.4377 5347.545 0.5377117 500393.82
idade_40_64 DF Sem instrução NA NA 0.5377117 500393.82
idade_40_64 DF Superior completo 6968.6250 12959.780 0.5377117 500393.82
idade_40_64 DF Superior incompleto ou equivalente 1271.1049 2363.915 0.5377117 500393.82
Total - - 97408.9486 252783.178 9.9948645 6233239.29
pop_total
269847.7
269847.7
269847.7
269847.7
269847.7
269847.7
269847.7
269847.7
470022.4
470022.4
470022.4
470022.4
470022.4
470022.4
470022.4
470022.4
930598.7
930598.7
930598.7
930598.7
930598.7
930598.7
930598.7
930598.7
13363750.5
###sem grupo etário
#pdad2023$e07#Estado civil
demanda_idade_strata2_total <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_escolaridade=case_when(escolaridade==1~"Sem instrução",
escolaridade==2~"Fundamental incompleto ou equivalente",
escolaridade==3~"Fundamental completo ou equivalente",
escolaridade==4~"Médio incompleto ou equivalente",
escolaridade==5~"Médio completo ou equivalente",
escolaridade==6~"Superior incompleto ou equivalente",
escolaridade==7~"Superior completo ",
escolaridade==8~"Sem classificação",
TRUE~"Não Sabe / Não se Aplica")) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_pdadA,strata_escolaridade) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata2_total %>% filter(grupo_pdadA=="DF")
demanda_idade_strata2_total <-
merge(demanda_idade_strata2_total, taxa_chefia_groupo_A_total,
by = c("grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_pdadA,strata_escolaridade,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata2_total %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_pdadA strata_escolaridade demanda_ajustada demanda taxa_chefia pop_chefe pop_total
DF Fundamental completo ou equivalente 3313.338 7103.630 0.4664289 779154.9 1670469
DF Fundamental incompleto ou equivalente 9313.591 19967.870 0.4664289 779154.9 1670469
DF Médio completo ou equivalente 35637.186 76404.329 0.4664289 779154.9 1670469
DF Médio incompleto ou equivalente 5287.205 11335.501 0.4664289 779154.9 1670469
DF Sem classificação 6006.581 12877.806 0.4664289 779154.9 1670469
DF Sem instrução 1343.304 2879.975 0.4664289 779154.9 1670469
DF Superior completo 43468.027 93193.256 0.4664289 779154.9 1670469
DF Superior incompleto ou equivalente 14879.448 31900.785 0.4664289 779154.9 1670469
Total - 119248.680 255663.153 3.7314311 6233239.3 13363751
###Por grupo Etário
pdad2023_original$renda
NULL
pdad2023$renda_ind#Estado civil
[1] 0 NA NA 0 0 1000 NA 0 0 0 600 NA 0 10000 NA 0 0 7000 0
[20] 600 0 0 0 NA NA 0 0 0 NA NA NA NA NA 0 NA 0 0 NA
[39] NA NA NA 0 NA 0 NA 800 0 0 NA NA NA 0 0 NA NA 0 0
[58] NA 0 0 0 NA NA 0 0 1412 0 0 0 NA 1302 NA 0 0 0 NA
[77] NA 0 0 NA NA NA NA 18000 NA 0 600 NA 0 0 0 NA NA 0 NA
[96] NA NA 0 0 NA 1300 0 1412 NA NA NA 600 NA 0 0 0 NA 112 2500
[115] 4600 NA NA NA 0 0 0 0 650 200 NA 14500 NA NA NA NA NA NA 0
[134] NA 0 NA NA NA NA 0 0 NA NA NA NA 1400 0 NA NA 0 NA 0
[153] NA NA NA 0 NA NA 0 0 0 0 700 1320 0 0 NA 0 NA NA 0
[172] 0 3500 NA NA NA 0 NA NA NA 0 1320 800 800 0 0 NA 0 1650 300
[191] 0 50 0 0 0 NA 1412 NA NA NA 1412 NA NA 0 NA 0 NA NA NA
[210] NA 0 0 NA NA NA NA NA NA 1100 NA 0 0 0 NA NA 0 NA NA
[229] NA NA NA 700 0 0 NA NA 0 NA 0 0 0 800 NA 0 0 NA 300
[248] 300 0 NA NA 0 3130 0 0 0 NA NA 1380 0 NA 0 NA NA 800 NA
[267] 0 0 NA NA NA 0 NA NA 0 NA 0 NA 1412 NA NA NA 0 0 0
[286] 0 0 NA 0 NA NA 0 0 0 0 0 NA NA 0 NA NA NA NA NA
[305] NA NA 1800 NA NA NA NA NA NA 0 NA 0 NA NA 0 0 NA 0 NA
[324] 0 0 NA NA 375 NA NA 0 800 NA 0 0 0 NA NA NA 0 NA 0
[343] 0 0 NA NA NA NA NA 0 0 0 12000 NA 0 NA 0 NA 1302 NA 1302
[362] NA 0 NA 0 0 NA 0 4700 NA NA 111 0 0 0 0 1100 0 NA NA
[381] 0 NA NA NA 0 NA NA 0 0 0 NA NA 0 0 600 750 0 0 0
[400] 0 NA 2824 NA 1320 0 NA 0 700 0 1400 NA 2824 0 NA 0 1320 0 NA
[419] 600 0 0 0 0 0 NA NA 0 NA 0 0 0 0 NA NA NA NA NA
[438] NA NA 0 NA 0 NA NA 0 NA NA 650 NA 0 1412 NA NA 7400 0 NA
[457] 0 0 0 10000 NA 0 0 NA NA 0 NA NA NA 26000 0 0 NA NA NA
[476] NA NA NA 0 NA NA NA 0 0 0 0 400 NA 0 0 NA 650 0 0
[495] 600 0 0 NA NA 0 250 NA 0 NA NA 0 NA NA 0 0 NA 0 7000
[514] 0 NA 0 0 0 NA NA NA NA 0 0 0 NA NA NA NA NA NA 0
[533] 0 0 0 112 NA NA NA NA NA 0 0 NA NA NA NA 0 0 1412 NA
[552] 1284 0 0 0 0 0 NA 0 0 NA NA 0 NA 0 NA NA NA NA 0
[571] 8000 NA NA 3000 NA NA NA NA NA 0 NA NA NA 8000 NA 0 NA 0 NA
[590] 0 7100 NA NA 0 NA 0 0 NA NA 0 1662 NA 0 0 NA NA 0 NA
[609] 0 NA 650 0 675 0 0 NA NA NA 0 0 650 0 0 NA 5000 NA NA
[628] NA 1320 0 11000 NA 8000 NA 15000 0 0 0 NA 100 0 NA 0 NA 590 NA
[647] 0 2000 0 NA NA NA NA NA NA NA NA NA 0 0 1320 NA NA 0 NA
[666] 11000 0 0 880 NA 0 0 0 0 NA NA 0 0 NA 0 NA NA NA NA
[685] 800 3500 0 0 NA NA 0 NA NA 0 0 NA 0 0 NA NA NA 400 0
[704] NA 0 0 NA 0 NA NA 0 0 NA 600 500 0 490 NA NA NA 0 0
[723] NA NA NA 650 0 NA 600 0 0 2000 NA NA 0 NA 0 0 0 0 NA
[742] 1320 800 NA 0 0 2000 0 1252 0 0 0 0 NA NA NA 0 NA NA NA
[761] NA NA NA 23600 NA 0 0 NA 0 0 0 1412 1662 NA 0 NA 15000 0 0
[780] NA NA NA 0 NA 1712 NA NA 0 0 0 NA NA NA NA 0 NA NA NA
[799] NA NA 0 NA 2500 NA NA NA 0 0 NA 550 0 0 NA NA NA 0 800
[818] 500 0 1320 3200 0 0 NA NA NA 0 0 NA NA NA 0 0 0 600 0
[837] 0 0 0 0 NA NA 0 0 NA 0 NA NA NA 0 0 NA NA 0 0
[856] 0 0 NA 0 NA 0 NA NA 0 NA NA NA 0 600 0 0 0 0 0
[875] 1400 0 0 0 NA NA 0 0 NA NA 0 0 21910 18300 NA 0 0 0 NA
[894] NA NA NA NA NA NA 325 NA NA 1412 NA NA 0 0 NA NA 0 0 NA
[913] NA 0 0 NA NA NA 0 0 0 0 2824 600 0 0 250 0 1000 NA 0
[932] 0 0 0 NA NA 0 0 0 NA NA NA NA NA NA NA NA 250 0 0
[951] 0 0 NA 700 0 0 NA 0 NA 0 NA NA 0 0 NA NA 0 0 NA
[970] NA NA NA 0 0 0 1400 0 NA 0 NA NA NA NA NA NA 0 1320 5000
[989] 0 0 NA 0 0 0 NA NA NA NA NA 0
[ reached getOption("max.print") -- omitted 54784 entries ]
demanda_idade_strata3 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(#e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_renda=case_when(renda_ind<3*salariominimo~"0-3SM",
renda_ind<5*salariominimo~"3-5SM",
renda_ind>5*salariominimo~"5+SM",
#renda_ind<salariominimo~"maior4SM",
# TRUE~"Não Sabe / Não se Aplica"
)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_renda) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata3 <-
merge(demanda_idade_strata3, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_renda,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_renda demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF 0-3SM 12212.96 43868.39 0.2784000 75125.59 269847.7
idade_24_29 DF 3-5SM NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF 5+SM NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF <NA> 19931.69 71593.70 0.2784000 75125.59 269847.7
idade_30_39 DF 0-3SM 11984.86 27662.92 0.4332464 203635.50 470022.4
idade_30_39 DF 3-5SM NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF 5+SM NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF <NA> 24309.92 56111.07 0.4332464 203635.50 470022.4
idade_40_64 DF 0-3SM 10912.93 20295.14 0.5377117 500393.82 930598.7
idade_40_64 DF 3-5SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF 5+SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF <NA> 18984.45 35306.01 0.5377117 500393.82 930598.7
Total - - 98336.81 254837.22 4.9974323 3116619.64 6681875.3
demanda_idade_strata3 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(#e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_renda=case_when(renda_ind<salariominimo~"0-1SM",
renda_ind<3*salariominimo~"1-3SM",
renda_ind>3*salariominimo~"5+SM",
#renda_ind<salariominimo~"maior4SM",
# TRUE~"Não Sabe / Não se Aplica"
)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_renda) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata3 <-
merge(demanda_idade_strata3, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_renda,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_renda demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF 0-1SM 11374.9619 40858.339 0.2784000 75125.59 269847.7
idade_24_29 DF 1-3SM 837.9994 3010.055 0.2784000 75125.59 269847.7
idade_24_29 DF 5+SM NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF <NA> 19931.6857 71593.696 0.2784000 75125.59 269847.7
idade_30_39 DF 0-1SM 11228.6490 25917.469 0.4332464 203635.50 470022.4
idade_30_39 DF 1-3SM 756.2090 1745.448 0.4332464 203635.50 470022.4
idade_30_39 DF 5+SM NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF <NA> 24309.9170 56111.070 0.4332464 203635.50 470022.4
idade_40_64 DF 0-1SM 7997.8674 14873.895 0.5377117 500393.82 930598.7
idade_40_64 DF 1-3SM 2915.0652 5421.242 0.5377117 500393.82 930598.7
idade_40_64 DF 5+SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF <NA> 18984.4531 35306.008 0.5377117 500393.82 930598.7
Total - - 98336.8078 254837.222 4.9974323 3116619.64 6681875.3
pdad2023_original$renda_domiciliar
[1] 0 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[20] NA NA NA NA NA 7000 7000 600 0 0 0 NA NA NA 0 0 NA NA NA
[39] NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 0 800 800 800
[58] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[77] NA 1412 1412 1412 1412 NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[96] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1400 NA NA NA
[115] 2262 NA NA NA 1412 NA NA NA 600 NA NA NA NA NA NA NA NA NA NA
[134] NA 7100 7100 NA NA NA NA NA 0 0 NA NA NA NA NA NA NA NA NA
[153] NA NA NA NA NA NA NA NA NA NA NA NA NA 3600 250 250 NA 1400 1400
[172] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2020 2020 2020 2020
[191] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2824 2824 1320 NA
[210] NA NA NA NA 1600 1600 1600 1600 NA NA 2000 2000 2000 2000 2000 NA NA NA 1412
[229] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[248] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[267] 700 700 700 NA NA NA NA NA NA NA NA NA NA 1320 NA NA NA NA NA
[286] NA NA NA NA NA NA 3130 3130 3130 3130 NA NA NA NA NA NA 650 650 2850
[305] 2850 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[324] NA NA NA NA NA NA NA NA NA NA NA 20000 NA NA NA NA 3424 3424 3424
[343] NA NA NA NA NA NA NA 3960 3960 3960 0 0 0 NA NA NA NA NA NA
[362] NA NA NA NA NA NA 2130 2130 NA NA NA NA NA NA NA NA NA NA 0
[381] NA NA NA NA NA 5000 NA NA 3290 3290 3290 3290 NA NA NA NA NA NA NA
[400] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 NA NA NA
[419] NA NA NA NA NA NA NA NA NA NA NA NA NA 1412 1412 NA NA NA NA
[438] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1400 1400 1400
[457] NA NA NA NA NA NA 1100 1100 1100 1100 1100 1100 NA NA NA NA NA NA NA
[476] NA NA NA NA NA NA NA NA NA NA NA NA 4686 4686 4686 NA 1350 1350 1350
[495] 1350 1350 1350 NA NA NA NA 0 2824 NA NA NA NA NA NA NA NA NA NA
[514] NA 2100 2100 2100 NA 2824 2824 NA NA NA NA NA 600 600 600 600 600 600 NA
[533] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[552] NA NA 4260 4260 NA NA NA NA 1412 NA NA NA NA NA NA 1320 1320 1320 NA
[571] NA NA NA 3000 3000 0 NA NA NA NA NA NA 0 NA NA NA NA NA NA
[590] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[609] NA NA NA NA NA 600 600 600 600 2824 2824 2824 NA NA NA NA NA NA NA
[628] NA NA NA NA NA NA NA NA NA NA NA 7000 7000 NA NA NA NA NA NA
[647] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[666] NA NA NA NA NA NA NA NA NA NA NA NA 3000 3000 3000 NA NA 1284 1284
[685] 1284 1284 1284 1284 20000 NA NA NA 10500 10500 NA NA NA NA NA NA NA NA NA
[704] NA NA NA NA NA NA NA NA 1650 1650 NA NA NA NA NA NA NA NA NA
[723] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[742] NA NA NA NA NA NA NA NA NA NA NA NA NA 675 675 675 NA NA NA
[761] NA NA NA NA NA 650 650 0 NA NA NA NA NA 1320 1320 NA NA NA NA
[780] 15000 15000 15000 15000 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[799] NA NA NA NA NA NA NA 1320 NA NA NA NA NA NA NA NA NA NA NA
[818] NA NA NA NA NA NA NA NA NA NA 0 NA NA NA NA NA 4300 4300 4300
[837] 4300 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[856] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[875] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[894] NA NA NA NA NA NA NA NA NA NA NA NA NA 2000 2000 1252 1252 0 0
[913] 0 NA NA NA NA NA NA 5000 NA NA NA NA NA NA NA NA NA NA NA
[932] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[951] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[970] NA NA NA NA NA NA NA 550 550 550 NA NA NA NA 1300 1300 1320 1320 NA
[989] NA NA NA NA NA NA NA NA 0 0 NA NA
[ reached getOption("max.print") -- omitted 68542 entries ]
demanda_idade_strata3 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(#e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_renda=case_when(renda_domiciliar<salariominimo~"0-1SM",
renda_domiciliar<3*salariominimo~"1-3SM",
renda_domiciliar>3*salariominimo~"5+SM",
#renda_ind<salariominimo~"maior4SM",
# TRUE~"Não Sabe / Não se Aplica"
)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_renda) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata3 <-
merge(demanda_idade_strata3, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_renda,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_renda demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF 0-1SM 1168.3608 4196.698 0.2784000 75125.59 269847.7
idade_24_29 DF 1-3SM 963.0143 3459.103 0.2784000 75125.59 269847.7
idade_24_29 DF 5+SM NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF <NA> 29767.1942 106922.389 0.2784000 75125.59 269847.7
idade_30_39 DF 0-1SM 1345.3357 3105.244 0.4332464 203635.50 470022.4
idade_30_39 DF 1-3SM 1500.3282 3462.991 0.4332464 203635.50 470022.4
idade_30_39 DF 5+SM NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF <NA> 33158.0506 76533.938 0.4332464 203635.50 470022.4
idade_40_64 DF 0-1SM 655.2037 1218.504 0.5377117 500393.82 930598.7
idade_40_64 DF 1-3SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF 5+SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF <NA> 27615.7421 51357.898 0.5377117 500393.82 930598.7
Total - - 96173.2296 250256.765 4.9974323 3116619.64 6681875.3
demanda_idade_strata3 <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(#e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_renda=case_when(renda_ind<salariominimo~"0-1SM",
renda_ind<3*salariominimo~"1-3SM",
renda_ind>3*salariominimo~"5+SM",
#renda_ind<salariominimo~"maior4SM",
# TRUE~"Não Sabe / Não se Aplica"
)) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_etario, grupo_pdadA,strata_renda) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF")
demanda_idade_strata3 <-
merge(demanda_idade_strata3, taxa_chefia_groupo_A,
by = c("grupo_etario", "grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_etario,grupo_pdadA,strata_renda,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata3 %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_etario grupo_pdadA strata_renda demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF 0-1SM 11374.9619 40858.339 0.2784000 75125.59 269847.7
idade_24_29 DF 1-3SM 837.9994 3010.055 0.2784000 75125.59 269847.7
idade_24_29 DF 5+SM NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF <NA> 19931.6857 71593.696 0.2784000 75125.59 269847.7
idade_30_39 DF 0-1SM 11228.6490 25917.469 0.4332464 203635.50 470022.4
idade_30_39 DF 1-3SM 756.2090 1745.448 0.4332464 203635.50 470022.4
idade_30_39 DF 5+SM NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF <NA> 24309.9170 56111.070 0.4332464 203635.50 470022.4
idade_40_64 DF 0-1SM 7997.8674 14873.895 0.5377117 500393.82 930598.7
idade_40_64 DF 1-3SM 2915.0652 5421.242 0.5377117 500393.82 930598.7
idade_40_64 DF 5+SM NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF <NA> 18984.4531 35306.008 0.5377117 500393.82 930598.7
Total - - 98336.8078 254837.222 4.9974323 3116619.64 6681875.3
###sem grupo etário
#pdad2023$e07#Estado civil
demanda_idade_strata2_total <- amostra_mor %>%#Filtra apenas observações com demanda positiva
srvyr::filter(e07<6,
demanda > 0 & !(e04 %in% c(1:3)),!grupo_etario=="Outro") %>%#Cria variável binária: adulto entre 24 e 64 anos, que não é cônjuge nem chefe de casal
srvyr::mutate(demanda_ind = ifelse(idade %in% c(24:64) & conj_casal == 0, 1, 0),
strata_escolaridade=case_when(escolaridade==1~"Sem instrução",
escolaridade==2~"Fundamental incompleto ou equivalente",
escolaridade==3~"Fundamental completo ou equivalente",
escolaridade==4~"Médio incompleto ou equivalente",
escolaridade==5~"Médio completo ou equivalente",
escolaridade==6~"Superior incompleto ou equivalente",
escolaridade==7~"Superior completo ",
escolaridade==8~"Sem classificação",
TRUE~"Não Sabe / Não se Aplica")) %>%#Classifica faixas etárias de interesse
srvyr::group_by(grupo_pdadA,strata_escolaridade) %>%
srvyr::summarise(demanda = survey_total(demanda_ind, vartype = c("cv", "ci"), na.rm = TRUE)) %>%
as.data.frame() %>% #Converte para data.frame e aplica filtro de precisão
mutate(demanda=ifelse(demanda_cv>params$cv_max,NA,demanda))
demanda_idade_strata2_total %>% filter(grupo_pdadA=="DF")
demanda_idade_strata2_total <-
merge(demanda_idade_strata2_total, taxa_chefia_groupo_A_total,
by = c("grupo_pdadA")) %>%
mutate(demanda_ajustada = demanda * taxa_chefia) %>% select(grupo_pdadA,strata_escolaridade,demanda_ajustada,demanda,taxa_chefia,pop_chefe,pop_total)
demanda_idade_strata2_total %>% filter(grupo_pdadA=="DF") %>% adorn_totals()
grupo_pdadA strata_escolaridade demanda_ajustada demanda taxa_chefia pop_chefe pop_total
DF Fundamental completo ou equivalente 3313.338 7103.630 0.4664289 779154.9 1670469
DF Fundamental incompleto ou equivalente 9313.591 19967.870 0.4664289 779154.9 1670469
DF Médio completo ou equivalente 35637.186 76404.329 0.4664289 779154.9 1670469
DF Médio incompleto ou equivalente 5287.205 11335.501 0.4664289 779154.9 1670469
DF Sem classificação 6006.581 12877.806 0.4664289 779154.9 1670469
DF Sem instrução 1343.304 2879.975 0.4664289 779154.9 1670469
DF Superior completo 43468.027 93193.256 0.4664289 779154.9 1670469
DF Superior incompleto ou equivalente 14879.448 31900.785 0.4664289 779154.9 1670469
Total - 119248.680 255663.153 3.7314311 6233239.3 13363751
###Por grupo Etário
demanda_idade_strata2 %>% filter(grupo_pdadA=="DF") %>% filter(!strata_mudança=="Não Sabe / Não se Aplica") %>%
select(grupo_etario,grupo_pdadA,strata_mudança, demanda_ajustada) %>%
spread(strata_mudança, demanda_ajustada) %>% adorn_totals(where = "row") %>%
mutate(percentual = (sim/(sim+Não))*100)
grupo_etario grupo_pdadA Não sim percentual
idade_24_29 DF 13259.93 17799.33 57.30765
idade_30_39 DF 12203.76 22324.02 64.65524
idade_40_64 DF 14236.68 14432.66 50.34180
Total - 39700.37 54556.02 57.88044
demanda_idade_strata2 %>% filter(grupo_pdadA=="DF") %>% #filter(!is.na(demanda_ajustada)) %>%
adorn_totals()
grupo_etario grupo_pdadA destino demanda_ajustada demanda taxa_chefia pop_chefe pop_total
idade_24_29 DF Na Região Adminstrativa 530.8859 1906.918 0.2784000 75125.59 269847.7
idade_24_29 DF Plano Piloto NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Gama NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Taguatinga NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Sobradinho NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Planaltina NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Núcleo Bandeirante NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Ceilândia NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Guará NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Cruzeiro NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Samambaia NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Santa Maria NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF São Sebastião NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Recanto Das Emas NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Lago Sul NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Riacho Fundo NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Lago Norte NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Águas Claras NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Riacho Fundo II NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Sudoeste e Octogonal NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Varjão NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Sobradinho II NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Jardim Botânico NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Itapoã NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Vicente Pires NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Arniqueira NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF No município NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Águas Lindas de Goiás NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Planaltina NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Santo Antônio do Descoberto NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Outros municípios de Goiás NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Goiás NA NA 0.2784000 75125.59 269847.7
idade_24_29 DF Distrito Federal 2615.7508 9395.656 0.2784000 75125.59 269847.7
idade_30_39 DF Na Região Adminstrativa NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Plano Piloto NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Gama NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Taguatinga NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Brazlândia NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Sobradinho NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Núcleo Bandeirante NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Ceilândia NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Guará NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Samambaia NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF São Sebastião NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Recanto Das Emas NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Riacho Fundo NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Águas Claras NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Riacho Fundo II NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Itapoã NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Vicente Pires NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Fercal NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Águas Lindas de Goiás NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Novo Gama NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Valparaíso de Goiás NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Outros municípios de Goiás NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Goiás NA NA 0.4332464 203635.50 470022.4
idade_30_39 DF Distrito Federal 3704.3359 8550.183 0.4332464 203635.50 470022.4
idade_40_64 DF Na Região Adminstrativa NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Plano Piloto NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Gama NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Taguatinga NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Sobradinho NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Planaltina NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Guará NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Samambaia NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF São Sebastião NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Águas Claras NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Riacho Fundo II NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Vicente Pires NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Fercal NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Águas Lindas de Goiás NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Planaltina NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Valparaíso de Goiás NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Outros municípios de Goiás NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Goiás NA NA 0.5377117 500393.82 930598.7
idade_40_64 DF Distrito Federal 1933.8511 3596.446 0.5377117 500393.82 930598.7
Total - - 8784.8237 23449.204 29.8016352 16873879.14 37866887.0