From 99c80490f1bc9cded7d0147803c6a9b34270e4bb Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 4 Nov 2022 09:34:47 -0300 Subject: [PATCH 01/37] depend forcats --- DESCRIPTION | 4 +++- R/kin.R | 1 + data/swe_surv.rda | Bin 81904 -> 0 bytes man/kin.Rd | 2 ++ vignettes/Reference.Rmd | 10 ++++++---- 5 files changed, 12 insertions(+), 5 deletions(-) delete mode 100644 data/swe_surv.rda diff --git a/DESCRIPTION b/DESCRIPTION index f14db16..9b3e9db 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -14,12 +14,14 @@ RoxygenNote: 7.2.1 Suggests: knitr, rmarkdown, - testthat (>= 3.0.0) + testthat (>= 3.0.0), + ggplot2 VignetteBuilder: knitr Imports: dplyr, tidyr, purrr, + forcats, HMDHFDplus, progress, matrixcalc, diff --git a/R/kin.R b/R/kin.R index e9a5669..b585345 100644 --- a/R/kin.R +++ b/R/kin.R @@ -11,6 +11,7 @@ #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param stable logic. Deprecated. Use `time_invariant`. #' @return A list with: #' \itemize{ #' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age.} diff --git a/data/swe_surv.rda b/data/swe_surv.rda deleted file mode 100644 index f00af74cc482396fab5d01db97089bdb919011d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81904 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 diff --git a/man/kin.Rd b/man/kin.Rd index 21c8115..bccb33e 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -35,6 +35,8 @@ kin( \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} \item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, this needs to be set as 1.} + +\item{stable}{logic. Deprecated. Use \code{time_invariant}.} } \value{ A list with: diff --git a/vignettes/Reference.Rmd b/vignettes/Reference.Rmd index 388a072..33560b2 100644 --- a/vignettes/Reference.Rmd +++ b/vignettes/Reference.Rmd @@ -11,7 +11,7 @@ vignette: > --- ```{r, include=FALSE} -devtools::load_all() +knitr::opts_chunk$set(collapse = TRUE, comment = "#>") ``` In this vignette, we'll demonstrate how `DemoKin` can be used to compute kinship networks for an average member of a given (female) population. Let us call her Focal: an average Swedish woman who has always lived in Sweden and whose family has never left the country. @@ -25,7 +25,9 @@ In order to implement the time-invariant models, the function `DemoKin::kin` exp ```{r, message=FALSE, warning=FALSE} library(DemoKin) -library(tidyverse) +library(tidyr) +library(dplyr) +library(ggplot2) library(knitr) # First, get vectors for a given year swe_surv_2015 <- swe_px[,"2015"] @@ -245,7 +247,7 @@ demokin_svk1980_caswell2020 %>% filter(kin %in% c("oa","ya"), age_focal %in% c(20,60)) %>% mutate(parity = as.integer(stage_kin)-1, parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity)), - parity = fct_rev(parity)) %>% + parity = forcats::fct_rev(parity)) %>% group_by(age_focal, age_kin, parity) %>% summarise(count= sum(living)) %>% ggplot() + @@ -263,7 +265,7 @@ demokin_svk1980_caswell2020 %>% filter(kin %in% c("d","m")) %>% mutate(parity = as.integer(stage_kin)-1, parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity)), - parity = fct_rev(parity)) %>% + parity = forcats::fct_rev(parity)) %>% group_by(age_focal, kin, parity) %>% summarise(count= sum(living)) %>% DemoKin::rename_kin() %>% From 76df24339c026e783594a366b08a4d239ec41fd1 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Sat, 19 Nov 2022 10:46:24 -0300 Subject: [PATCH 02/37] fix no pi or N case --- R/kin_time_variant.R | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index bc962fc..a48306b 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -42,8 +42,10 @@ kin_time_variant <- function(U = NULL, f = NULL, N = NULL, pi = NULL, if(is.null(N)){ # create pi and fill it during the loop message("Stable assumption was made for calculating pi on each year because no input data.") + pi_N_null_flag <- TRUE pi <- matrix(0, nrow=ages, ncol=n_years_data) }else{ + pi_N_null_flag <-FALSE pi <- rbind(t(t(N * f)/colSums(N * f)), matrix(0,ages,length(years_data))) } } @@ -72,7 +74,7 @@ kin_time_variant <- function(U = NULL, f = NULL, N = NULL, pi = NULL, # print(iyear) Ut <- as.matrix(U[[iyear]]) ft <- as.matrix(f[[iyear]]) - if(is.null(pi)){ + if(pi_N_null_flag){ A <- Ut[1:ages,1:ages] + ft[1:ages,1:ages] A_decomp = eigen(A) w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) From f9bb9e51e3cefad0e7bda3b33f0eefeb4e86f6f7 Mon Sep 17 00:00:00 2001 From: alburezg Date: Wed, 4 Jan 2023 18:20:03 +0100 Subject: [PATCH 03/37] Added labels to plot_diagram --- R/plot_diagramm.R | 157 +++++++++++++++++++++------------------------- 1 file changed, 71 insertions(+), 86 deletions(-) diff --git a/R/plot_diagramm.R b/R/plot_diagramm.R index 2497186..0305e38 100644 --- a/R/plot_diagramm.R +++ b/R/plot_diagramm.R @@ -1,90 +1,75 @@ #' plot a Kin diagram (network) -#' @description Given estimation of kin counts from `kins` function, draw a network diagramm. -#' @param kin_total data.frame. With columns `kin` with type and `count` with some measeure. -#' @param rounding numeric. Estimation could have a lot of decimals. Rounding will make looks more clear the diagramm. -#' @return A plot +#' @description Draws a Keyfitz-style kinship diagram given a kinship object created by the `kin` function. Displays expected kin counts for a Focal aged 'a'. +#' @param kin_total data.frame. values in column `kin` define the relative type - see `demokin_codes()`. Values in column `count` are the expected number of relatives. +#' @param rounding numeric. Number of decimals to show in diagram. +#' @return A Keyfitz-style kinship plot. #' @export -plot_diagram <- function(kin_total, rounding = 3){ - - vertices <- data.frame( - nodes = c("ggd", "gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", "os", "nos", "ya", "cya", "ys", "nys") - , x = c(1, 1, 1, 1, 1, 1, 1, 0, -1, 0, -1, 2, 3, 2, 3) - , y = c(0, 1, 2, 3, 4, 5, 6, 4, 3, 3, 2, 4, 3, 3, 2) - ) - - d <- data.frame( - from = c("ggd", "gd", "d", "Focal", "m", "gm", "gm", "oa", "m", "os", "gm", "ya", "m", "ys") - , to = c("gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", "os", "nos", "ya", "cya", "ys", "nys") - ) - - # Add values - lookup <- c(with(kin_total, paste0(kin, " \n", round(count, rounding))), "Focal") - names(lookup) <- c(kin_total$kin, "Focal") - - vertices$nodes <- lookup[vertices$nodes] - d$from <- lookup[d$from] - d$to <- lookup[d$to] - - # Plot - - b <- igraph::graph_from_data_frame(vertices = vertices, d= d, directed = FALSE) - - plot( - b - , vertex.size = 30 - , curved = 1 - , vertex.color = "#FFF1E2" - , vertex.shape = "circle" - , vertex.label.cex = 0.8 - , vertex.label.color = "black" - , label.degree = -pi/2 - , edge.width = 2 - , edge.color = "black" - ) - -} - -# old function - -# plot_diagram <- function(kin_total, rounding = 3){ -# # https://cran.r-project.org/web/packages/DiagrammeR/vignettes/graphviz-mermaid.html -# # https://color.hailpixel.com/#D9E9BE,BF62CB,94C2DB,79D297,CDA76A,C8695B -# -# kin_total <- kin_total %>% mutate(count = round(count,digits = rounding)) -# -# DiagrammeR::mermaid( -# paste0("graph TD -# -# GGM(ggm:
", kin_total$count[kin_total$kin=="ggm"] ,") -# GGM ==> GM(gm:
", kin_total$count[kin_total$kin=="gm"] ,") -# GM --> AOM(oa:
", kin_total$count[kin_total$kin=="oa"] ,") -# GM ==> M(m:
", kin_total$count[kin_total$kin=="m"] ,") -# GM --> AYM(ya:
", kin_total$count[kin_total$kin=="ya"] ,") -# AOM --> CAOM(coa:
", kin_total$count[kin_total$kin=="coa"] ,") -# M --> OS(os:
", kin_total$count[kin_total$kin=="os"] ,") -# M ==> E((Ego)) -# M --> YS(ys:
", kin_total$count[kin_total$kin=="ys"] ,") -# AYM --> CAYM(cya:
", kin_total$count[kin_total$kin=="cya"] ,") -# OS --> NOS(nos:
", kin_total$count[kin_total$kin=="nos"] ,") -# E ==> D(d:
", kin_total$count[kin_total$kin=="d"] ,") -# YS --> NYS(nys:
", kin_total$count[kin_total$kin=="nys"] ,") -# D ==> GD(gd:
", kin_total$count[kin_total$kin=="gd"] ,") -# style GGM fill:#a1f590, stroke:#333, stroke-width:2px; -# style GM fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center; -# style M fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center -# style D fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center -# style YS fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center -# style OS fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center -# style CAOM fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style AYM fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style AOM fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style CAYM fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style NOS fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style NYS fill:#f1f0f5, stroke:#333, stroke-width:2px, text-align: center -# style E fill:#FFF, stroke:#333, stroke-width:4px, text-align: center -# style D fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center -# style GD fill:#a1f590, stroke:#333, stroke-width:2px, text-align: center")) -# } - +plot_diagram <- + function (kin_total, rounding = 3) { + rels <- c("ggd", "gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", "os", "nos", "ya", "cya", "ys", "nys") + vertices <- data.frame( + nodes = rels + , x = c(1, 1, 1, 1, 1, 1, 1, 0, -1, 0, -1, 2, 3, 2, 3) + , y = c(0, 1, 2, 3, 4, 5, 6, 4, 3, 3, 2, 4, 3, 3, 2) + ) + d <- data.frame(from = c("ggd", "gd", "d", "Focal", "m", + "gm", "gm", "oa", "m", "os", "gm", "ya", "m", "ys"), + to = c("gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", + "os", "nos", "ya", "cya", "ys", "nys")) + lookup <- c(with(kin_total, paste0(kin, " \n", round(count, rounding))), "Focal") + names(lookup) <- c(kin_total$kin, "Focal") + vertices$nodes <- lookup[vertices$nodes] + d$from <- lookup[d$from] + d$to <- lookup[d$to] + # to show full relative names + relatives <- c("Cousins from older aunt", "Cousins from younger aunt", + "Daughter", "Grand-daughter", "Great-grand-daughter", + "Great-grandmother", "Grandmother", "Mother", "Nieces from older sister", + "Nieces from younger sister", "Aunt older than mother", + "Aunt younger than mother", "Older sister", "Younger sister", "") + names(relatives) <- c("coa", "cya", "d", "gd", "ggd", + "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", + "ys", "Focal") + labs <- relatives[rels] + # Plot + b <- igraph::graph_from_data_frame(vertices = vertices, d= d, directed = FALSE) + b_auto_layout <- igraph::layout.auto(b) + b_auto_layout_scaled <- igraph::norm_coords(b_auto_layout, ymin=-1, ymax=1, xmin=-1, xmax=1) + plot( + b + , vertex.size = 70 + , curved = 1 + , vertex.color = "#FFF1E2" + , vertex.shape = "circle" + , vertex.label.cex = 0.8 + , vertex.label.color = "black" + , edge.width = 2 + , layout = b_auto_layout_scaled * 3 + , rescale = FALSE + , xlim = c(-3.3,3.3) + , ylim = c(-2.5,2.5) + ) + # Add relative names + # Thanks to Egor Kotov for this tip! + plot( + b + , vertex.size = 70 + , curved = 1 + , vertex.color = NA + , vertex.shape = "none" + , vertex.label = labs + , vertex.label.dist = -6.5 + , vertex.label.cex = 0.8 + , vertex.label.color = "black" + , vertex.label.degree = -pi/2 + , edge.width = 2 + , edge.color = NA + , layout = b_auto_layout_scaled * 3 + , rescale = FALSE + , xlim = c(-3.3,3.3) + , ylim = c(-2.5,2.5) + , add = T + ) + } From 75c1bc3199b46b922c0d66a3bb04a4895ec5a4fa Mon Sep 17 00:00:00 2001 From: alburezg Date: Wed, 4 Jan 2023 18:59:15 +0100 Subject: [PATCH 04/37] increased y-limit of igraph --- R/plot_diagramm.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/R/plot_diagramm.R b/R/plot_diagramm.R index 0305e38..87d55b1 100644 --- a/R/plot_diagramm.R +++ b/R/plot_diagramm.R @@ -49,7 +49,7 @@ plot_diagram <- , layout = b_auto_layout_scaled * 3 , rescale = FALSE , xlim = c(-3.3,3.3) - , ylim = c(-2.5,2.5) + , ylim = c(-3.1,3.1) ) # Add relative names # Thanks to Egor Kotov for this tip! @@ -69,7 +69,7 @@ plot_diagram <- , layout = b_auto_layout_scaled * 3 , rescale = FALSE , xlim = c(-3.3,3.3) - , ylim = c(-2.5,2.5) + , ylim = c(-3.1,3.1) , add = T ) } From bcbdcef1e59c204a4d6067ee5be8657b86923734 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Tue, 24 Jan 2023 16:05:08 -0300 Subject: [PATCH 05/37] adding 2sex model + vignette --- R/data.R | 22 ++++ R/kin.R | 8 +- R/kin_time_invariant_2sex.R | 162 +++++++++++++++++++++++ R/kin_time_variant_2sex.R | 254 ++++++++++++++++++++++++++++++++++++ data/fra_asfr_sex.rda | Bin 0 -> 870 bytes data/fra_surv_sex.rda | Bin 0 -> 1598 bytes vignettes/TwoSex.Rmd | 205 +++++++++++++++++++++++++++++ 7 files changed, 650 insertions(+), 1 deletion(-) create mode 100644 R/kin_time_invariant_2sex.R create mode 100644 R/kin_time_variant_2sex.R create mode 100644 data/fra_asfr_sex.rda create mode 100644 data/fra_surv_sex.rda create mode 100644 vignettes/TwoSex.Rmd diff --git a/R/data.R b/R/data.R index 1bacb90..b11636a 100644 --- a/R/data.R +++ b/R/data.R @@ -127,3 +127,25 @@ #' @source #' Caswell (2021) "kin_svk1990_caswell2020" + +#' Fertility for France (2012) by sex in Caswell (2022). +#' +#' Fertility for France (2012) by sex in Caswell (2022). +#' @docType data +#' @format +#' A data.frame with age specific fertility rates by age and sex. +#' +#' @source +#' Caswell (2022) +"fra_asfr_sex" + +#' Survival probability for France (2012) by sex in Caswell (2022). +#' +#' Survival probability for France (2012) by sex in Caswell (2022). +#' @docType data +#' @format +#' A data.frame with survival probabilities by age and sex. +#' +#' @source +#' Caswell (2022) +"fra_surv_sex" diff --git a/R/kin.R b/R/kin.R index b585345..6dd8dec 100644 --- a/R/kin.R +++ b/R/kin.R @@ -74,7 +74,13 @@ kin <- function(U = NULL, f = NULL, } # reorder - kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, kin, age_kin, living, dead) + kin_full <- kin_full %>% + dplyr::select(year, cohort, age_focal, kin, age_kin, living, dead) %>% + dplyr::mutate(kin_group = dplyr::case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + kin %in% c("coa", "cya") ~ "c", + kin %in% c("nys", "nos") ~ "n", + T ~ kin)) # summary # select period/cohort diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R new file mode 100644 index 0000000..1d178b1 --- /dev/null +++ b/R/kin_time_invariant_2sex.R @@ -0,0 +1,162 @@ +#' Estimate kin counts in a time invariant framework considering two sex + +#' @description Two sex matrix framework for kin count estimates. Implementation of Caswell (2022). + +#' @param pf numeric. A vector of survival probabilities for females with same length as ages. +#' @param ff numeric. A vector of age-specific fertility rates for females with same length as ages. +#' @param pm numeric. A vector of survival probabilities for males with same length as ages. +#' @param fm numeric. A vector of age-specific fertility rates for males with same length as ages. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param birth_female numeric. Female portion at birth. +#' @param pif numeric. For using some specific non-stable age distribution of childbearing for mothers (same length as ages). Default `NULL`. +#' @param pim numeric. For using some specific non-stable age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param output_kin character. kin to return, considering matrilineal names. For example "m" for parents, "d" for children, etc. See the `vignette` for all kin types. +#' @param list_output logical. Results as a list with `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` +#' +#' @return A data frame with focal´s age, related ages and type of kin +#' (for example `d` is children, `oa` is older aunts/uncles, etc.), sex, alive and death. If `list_output = TRUE` then this is a list. +#' @export + +kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, + ff = NULL, fm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + output_kin = NULL, + list_output = FALSE){ + + # same input length + if(!all(length(pf)==length(pm), length(pf)==length(ff), length(pf)==length(fm))) stop("Lengths of p's and f's should be the same") + + # make matrix transition from vectors. Include death counts with matrix M + age = 0:(length(pf)-1) + ages = length(age) + agess = ages * 2 + Uf = Um = Ff = Fm = Gt = zeros = matrix(0, nrow=ages, ncol=ages) + Uf[row(Uf)-1 == col(Uf)] <- pf[-ages] + Uf[ages, ages] = Uf[ages] + Um[row(Um)-1 == col(Um)] <- pm[-ages] + Um[ages, ages] = Um[ages] + Mm <- diag(1-pm) + Mf <- diag(1-pf) + Ut <- as.matrix(rbind( + cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros, zeros)), + cbind(Matrix::bdiag(Mf, Mm), Matrix::bdiag(zeros, zeros)))) + Ff[1,] = ff + Fm[1,] = fm + Ft <- Ft_star <- matrix(0, agess*2, agess*2) + Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Ff, birth_female * Fm), + cbind((1-birth_female) * Ff, (1-birth_female) * Fm)) + + # mother and father do not reproduce independently to produce focal´s siblings. Assign to mother + Ft_star[1:agess,1:ages] <- rbind(birth_female * Ff, (1-birth_female) * Ff) + + # parents age distribution under stable assumption in case no input + if(is.null(pif)){ + A = Uf + Ff + A_decomp = eigen(A) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + pif = w*A[1,]/sum(w*A[1,]) + if(all(is.na(pif))) pif <- rep(1/ages, ages) + } + if(is.null(pim)){ + A = Um + Fm + A_decomp = eigen(A) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + pim = w*A[1,]/sum(w*A[1,]) + if(all(is.na(pim))) pim <- rep(1/ages, ages) + } + + # initial count matrix (kin ages in rows and focal age in column) + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, agess*2, ages) + + # locate focal at age 0 depending sex + sex_index <- ifelse(sex_focal == "f", 1, ages+1) + phi[sex_index, 1] <- 1 + + # G matrix moves focal by age + G <- matrix(0, nrow=ages, ncol=ages) + G[row(G)-1 == col(G)] <- 1 + Gt <- matrix(0, agess*2, agess*2) + Gt[1:(agess), 1:(agess)] <- as.matrix(Matrix::bdiag(G, G)) + + # focal´s trip + # names of matrix count by kin refers to matrilineal as general reference + m[1:(agess),1] = c(pif, pim) + for(i in 1:(ages-1)){ + # i = 1 + phi[,i+1] = Gt %*% phi[, i] + d[,i+1] = Ut %*% d[,i] + Ft %*% phi[,i] + gd[,i+1] = Ut %*% gd[,i] + Ft %*% d[,i] + ggd[,i+1] = Ut %*% ggd[,i] + Ft %*% gd[,i] + m[,i+1] = Ut %*% m[,i] + ys[,i+1] = Ut %*% ys[,i] + Ft_star %*% m[,i] + nys[,i+1] = Ut %*% nys[,i] + Ft %*% ys[,i] + } + + gm[1:(agess),1] = m[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + gm[,i+1] = Ut %*% gm[,i] + } + + ggm[1:(agess),1] = gm[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + ggm[,i+1] = Ut %*% ggm[,i] + } + + os[1:(agess),1] = d[1:(agess),] %*% pif + nos[1:(agess),1] = gd[1:(agess),] %*% pif + for(i in 1:(ages-1)){ + os[,i+1] = Ut %*% os[,i] + nos[,i+1] = Ut %*% nos[,i] + Ft %*% os[,i] + } + + oa[1:(agess),1] = os[1:(agess),] %*% (pif + pim) + ya[1:(agess),1] = ys[1:(agess),] %*% (pif + pim) + coa[1:(agess),1] = nos[1:(agess),] %*% (pif + pim) + cya[1:(agess),1] = nys[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + oa[,i+1] = Ut %*% oa[,i] + ya[,i+1] = Ut %*% ya[,i] + Ft_star %*% gm[,i] + coa[,i+1] = Ut %*% coa[,i] + Ft %*% oa[,i] + cya[,i+1] = Ut %*% cya[,i] + Ft %*% ya[,i] + } + + # get results + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + # only selected kin + if(!is.null(output_kin)){ + kin_list <- kin_list %>% purrr::keep(names(.) %in% output_kin) + } + + # as data.frame + kin <- purrr::map2(kin_list, names(kin_list), + function(x,y){ + out <- as.data.frame(x) + colnames(out) <- age + out %>% + dplyr::mutate(kin = y, + age_kin = rep(age,4), + sex = rep(c(rep("f",ages), rep("m",ages)),2), + alive = c(rep("living",2*ages), rep("dead",2*ages))) %>% + tidyr::pivot_longer(c(-age_kin, -kin, -sex, -alive), names_to = "age_focal", values_to = "count") %>% + dplyr::mutate(age_focal = as.integer(age_focal)) %>% + tidyr::pivot_wider(names_from = alive, values_from = count) + } + ) %>% + purrr::reduce(rbind) + + + # results as list? + if(list_output) { + out <- kin_list + }else{ + out <- kin + } + + return(out) +} diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R new file mode 100644 index 0000000..93248ba --- /dev/null +++ b/R/kin_time_variant_2sex.R @@ -0,0 +1,254 @@ +#' Estimate kin counts in a time variant framework + +kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, + Ff = NULL, Fm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + Pif = NULL, Pim = NULL, + Nf = NULL, Nm = NULL, + output_cohort = NULL, output_period = NULL, output_kin = NULL, + list_output = FALSE){ + + # same input length + if(!all(dim(Pf) == dim(Pm), dim(Pf) == dim(Ff), dim(Pf) == dim(Fm))) stop("Dimension of P's and F's should be the same") + + # data should be from same interval years + years_data <- as.integer(colnames(Pf)) + if(var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") + + # utils + age <- 0:(nrow(Pf)-1) + n_years_data <- length(years_data) + ages <- length(age) + agess <- ages*2 + om <- max(age) + zeros <- matrix(0, nrow=ages, ncol=ages) + + # age distribution at childborn + if(is.null(Pif)){ + if(!is.null(Nf)){ + Pif <- rbind(t(t(Nf * Ff)/colSums(Nf * Ff)), matrix(0,ages,length(years_data))) + }else{ + Pif <- matrix(0, nrow=ages, ncol=n_years_data) + no_Pif <- TRUE + } + } + if(is.null(Pim)){ + if(!is.null(Nm)){ + Pim <- rbind(t(t(Nm * Fm)/colSums(Nm * Fm)), matrix(0,ages,length(years_data))) + }else{ + Pim <- matrix(0, nrow=ages, ncol=n_years_data) + no_Pim <- TRUE + } + } + + # get lists of matrix + Ul = Fl = Fl_star = list() + for(t in 1:n_years_data){ + # t = 1 + Uf = Um = Fft = Fmt = Mm = Mf = Gt = zeros = matrix(0, nrow=ages, ncol=ages) + Uf[row(Uf)-1 == col(Uf)] <- Pf[-ages,t] + Uf[ages, ages] = Pf[ages,t] + Um[row(Um)-1 == col(Um)] <- Pm[-ages,t] + Um[ages, ages] = Pm[ages,t] + Mm <- diag(1-Pm[,t]) + Mf <- diag(1-Pf[,t]) + Ut <- as.matrix(rbind( + cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros, zeros)), + cbind(Matrix::bdiag(Mf, Mm), Matrix::bdiag(zeros, zeros)))) + Ul[[as.character(years_data[t])]] <- Ut + Fft[1,] = Ff[,t] + Fmt[1,] = Fm[,t] + Ft <- Ft_star <- matrix(0, agess*2, agess*2) + Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Fft, birth_female * Fmt), + cbind((1-birth_female) * Fft, (1-birth_female) * Fmt)) + Ft_star[1:agess,1:ages] <- rbind(birth_female * Fft, (1-birth_female) * Fft) + Fl[[as.character(years_data[t])]] <- Ft + Fl_star[[as.character(years_data[t])]] <- Ft_star + if(no_Pif){ + A <- Uf + Fft + A_decomp = eigen(A) + w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + Pif[,t] <- w*A[1,]/sum(w*A[1,]) + } + if(no_Pim){ + A <- Um + Fmt + A_decomp = eigen(A) + w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + Pim[,t] <- w*A[1,]/sum(w*A[1,]) + } + } + + # loop over years (more performance here) + kin_all <- list() + pb <- progress::progress_bar$new( + format = "Running over input years [:bar] :percent", + total = n_years_data, clear = FALSE, width = 60) + for (iyear in 1:n_years_data){ + # iyear = 1 + Ut <- as.matrix(Ul[[iyear]]) + Ft <- as.matrix(Fl[[iyear]]) + Ft_star <- as.matrix(Fl_star[[iyear]]) + pitf <- Pif[,iyear] + pitm <- Pim[,iyear] + pit <- c(pitf, pitm) + if (iyear==1){ + p1f <- Pf[,1] + p1m <- Pm[,1] + f1f <- Ff[,1] + f1m <- Fm[,1] + pif1 <- Pif[,1] + pim1 <- Pim[,1] + kin_all[[1]] <- kin_time_invariant_2sex(pf = p1f, pm = p1m, + ff = f1f, fm = f1m, + pif = pif1, pim = pim1, + birth_female = birth_female, list_output = TRUE) + } + kin_all[[iyear+1]] <- timevarying_kin_2sex(Ut=Ut, Ft=Ft, Ft_star=Ft_star, pit=pit, sex_focal, ages, pkin=kin_all[[iyear]]) + pb$tick() + } + + # filter years and kin that were selected + names(kin_all) <- as.character(years_data) + + # combinations to return + out_selected <- output_period_cohort_combination(output_cohort, output_period, age = age, years_data = years_data) + + possible_kin <- c("d","gd","ggd","m","gm","ggm","os","ys","nos","nys","oa","ya","coa","cya") + if(is.null(output_kin)){ + selected_kin_position <- 1:length(possible_kin) + }else{ + selected_kin_position <- which(possible_kin %in% output_kin) + } + + # first filter + kin_list <- kin_all %>% + purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% + purrr::map(~ .[selected_kin_position]) + + # long format + kin <- lapply(names(kin_list), function(Y){ + X <- kin_list[[Y]] + X <- purrr::map2(X, names(X), function(x,y){ + # browser() + as.data.frame(x) %>% + dplyr::mutate(year = Y, + kin=y, + sex = rep(c(rep("f",ages), rep("m",ages)),2), + age_kin = rep(age,4), + alive = c(rep("living",agess), rep("dead",agess)), + .before=everything()) + }) %>% + dplyr::bind_rows() %>% + stats::setNames(c("year","kin", "sex", "age_kin","alive",as.character(age))) %>% + tidyr::gather(age_focal, count,-age_kin, -kin, -year, -sex, -alive) %>% + dplyr::mutate(age_focal = as.integer(age_focal), + year = as.integer(year), + cohort = year - age_focal) %>% + dplyr::filter(age_focal %in% out_selected$age[out_selected$year==as.integer(Y)]) %>% + tidyr::pivot_wider(names_from = alive, values_from = count) + }) %>% + dplyr::bind_rows() + + # results as list? + if(list_output) { + out <- kin_list + }else{ + out <- kin + } + + return(out) +} + +#' one time projection kin + +#' @description one time projection kin. internal function. +#' +#' @param Ut numeric. A matrix of survival probabilities (or ratios). +#' @param ft numeric. A matrix of age-specific fertility rates. +#' @param pit numeric. A matrix with distribution of childbearing. +#' @param ages numeric. +#' @param pkin numeric. A list with kin count distribution in previous year. +# +timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ + + agess <- ages*2 + om <- ages-1 + pif <- pit[1:ages] + pim <- pit[(ages+1):agess] + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0,agess*2,ages) + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + # G matrix moves focal by age + G <- matrix(0, nrow=ages, ncol=ages) + G[row(G)-1 == col(G)] <- 1 + Gt <- matrix(0, agess*2, agess*2) + Gt[1:(agess), 1:(agess)] <- as.matrix(Matrix::bdiag(G, G)) + + # locate focal at age 0 depending sex + sex_index <- ifelse(sex_focal == "f", 1, ages+1) + phi[sex_index, 1] <- 1 + + # initial distribution + m[1:agess,1] = pit + gm[1:agess,1] = pkin[["m"]][1:agess,] %*% (pif + pim) + ggm[1:agess,1] = pkin[["gm"]][1:agess,] %*% (pif + pim) + os[1:agess,1] = pkin[["d"]][1:agess,] %*% pif + nos[1:agess,1] = pkin[["gd"]][1:ages,] %*% pif + oa[1:agess,1] = pkin[["os"]][1:agess,] %*% (pif + pim) + ya[1:agess,1] = pkin[["ys"]][1:agess,] %*% (pif + pim) + coa[1:agess,1] = pkin[["nos"]][1:agess,] %*% (pif + pim) + cya[1:agess,1] = pkin[["nys"]][1:agess,] %*% (pif + pim) + + for (ix in 1:om){ + # ix = 1 + phi[,ix+1] = Gt %*% phi[, ix] + d[,ix+1] = Ut %*% pkin[["d"]][,ix] + Ft %*% phi[,ix] + gd[,ix+1] = Ut %*% pkin[["gd"]][,ix] + Ft %*% pkin[["d"]][,ix] + ggd[,ix+1] = Ut %*% pkin[["ggd"]][,ix] + Ft %*% pkin[["gd"]][,ix] + m[,ix+1] = Ut %*% pkin[["m"]][,ix] + gm[,ix+1] = Ut %*% pkin[["gm"]][,ix] + ggm[,ix+1] = Ut %*% pkin[["ggm"]][,ix] + os[,ix+1] = Ut %*% pkin[["os"]][,ix] + ys[,ix+1] = Ut %*% pkin[["ys"]][,ix] + Ft_star %*% pkin[["m"]][,ix] + nos[,ix+1] = Ut %*% pkin[["nos"]][,ix] + Ft %*% pkin[["os"]][,ix] + nys[,ix+1] = Ut %*% pkin[["nys"]][,ix] + Ft %*% pkin[["ys"]][,ix] + oa[,ix+1] = Ut %*% pkin[["oa"]][,ix] + ya[,ix+1] = Ut %*% pkin[["ya"]][,ix] + Ft_star %*% pkin[["gm"]][,ix] + coa[,ix+1] = Ut %*% pkin[["coa"]][,ix] + Ft %*% pkin[["oa"]][,ix] + cya[,ix+1] = Ut %*% pkin[["cya"]][,ix] + Ft %*% pkin[["ya"]][,ix] + } + + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + return(kin_list) +} + +#' defince apc combination to return + +#' @description defince apc to return. +#' +output_period_cohort_combination <- function(output_cohort = NULL, output_period = NULL, age = NULL, years_data = NULL){ + + # no specific + if(is.null(output_period) & is.null(output_cohort)){ + message("No specific output was set. Return all period data.") + output_period <- years_data + } + + # cohort combination + if(!is.null(output_cohort)){ + selected_cohorts_year_age <- data.frame(age = rep(age,length(output_cohort)), + year = purrr::map(output_cohort,.f = ~.x+age) %>% + unlist(use.names = F)) + }else{selected_cohorts_year_age <- c()} + + # period year combination + if(!is.null(output_period)){selected_years_age <- expand.grid(age, output_period) %>% dplyr::rename(age=1,year=2) + }else{selected_years_age <- c()} + + # end + return(dplyr::bind_rows(selected_years_age,selected_cohorts_year_age) %>% dplyr::distinct()) +} diff --git a/data/fra_asfr_sex.rda b/data/fra_asfr_sex.rda new file mode 100644 index 0000000000000000000000000000000000000000..63188d388eb82c71a020c2674c246758335941c6 GIT binary patch literal 870 zcmV-s1DX6EiwFP!000002JKaiPt0K)|8-ZLB6LE{2}365Wu$JBPg0k+lCE;O(t7zd zx~}XloQzWKaLG$dNK$HDopOqt-gY<4>CMPwmE!UmI~@rt@$)j9f56M;vwipZJfG*Y zeV^_5K70H<`3o%hmIOi22~(O0K{ul$VHOy`oy{RAhgz5rri2B>BcjFOVbP>GAxuI_ z34%6~^6H7-1h}s_a5kx{9~-iw^d32m*gXEQdA3al5_9`(b?b_e>h4>h&;}wyrzlQ! zy^pNwW8>AllgN|OeA0aaQB>IeI+V*mX=9{u>EsZUi?)+Z6J)4VuA6&(NQ`Qll4RcY zM%}$28&`G^G}p2VyLlg=-R;nq>yZa-V*|0s+5y_qOX||Rwa_|_wR(H^1vJaY^_pi~ zL2YYc0%r>kRZD8>3>Ge^T-LDBQ-~-A$)*B)x$)QMlKSum{IP!0m^uAK$ zBHP70ZNj!eWL~vPn{nYXIU3fUUHAnJFt-d?o?KJE2d96l$fY&1H&uQCN8P%ciqo_{2hQ@z$jTz@_e|= zySd*Wki+}DlUe_#TKM<4owR3iu-;k!lC^9$HuYAVX36TXL*DHWD2>8i-<(fMHVc_~ zcl7h~Z{o!BC0{2N`JgN2r z%1$BF&r}BG_C=`V$bwh)8BuY@^O9TWai}`A&dhE8IJbsMWF z8V&veVoMznn=P#ryUy_uQ={}{*Y5&(Ct((UVhF;Mcs+j7 z0tnjH+BGx65b$~+J)X(Ms*zI$&PW{LI&)fV{b>UBUg`(Z$cKM=4*p&I^5@W_Hi;;* wqUx(ne&=5z!>CAHxQLWcdd!d95LKhU>F*g@bo5Up`msOs1@@prg8K#l06#9bq5uE@ literal 0 HcmV?d00001 diff --git a/data/fra_surv_sex.rda b/data/fra_surv_sex.rda new file mode 100644 index 0000000000000000000000000000000000000000..abef45f09308b088f83eb4460e6fd1576258ed22 GIT binary patch literal 1598 zcmV-E2Eq9siwFP!00000236GwG}K!h2k?nxsg&YTw7=97ugyeRenMfAN+VORo>Wwp zvScaAdU%D3si7E0iyk$K@T9Vpt%w(fnv9Wso4G=gWxStPr*rzB^FN<^@BjX{`~Tki zw>D*Llw-(IC=^M`bctycNhvH+q-^NhwR9=if|Y5M=@eOXmZOKgou`+Fx1FbhFNGo@ zk8Q7k4BzC@&!hkmcRV}pH3DRE#br$kF=|bHbW9U<*0Sk&gu1Bqrxv2FA%<#$=;?%k z@MBYT=D2}7dW31g^g?OQ9|zRXRk!xUKEUgW8>$bxpmnDoSDZ&VulCyZqY-oC!>OqA zG|r+_)KYW9>>6~fri#)!RFQ4|$pFa2L?~=pfc9qc=sGB0dbnp3TJ>+PKR(Yy{-4{g zT|iSRH1A}h5jSL>2cpMW{(a@BLH~q68lA%(HOK`r&a1XHx`9T9#l&&Y)$W993S=x> zxMnXw_32U@HUk;WZwOhNjB0Q`dEtG&1}gnc4geW>c}SY~5XhI2Di5#E=u#WLAsfeW zrD~`8eITD@8)KtwfednM()T6-8MvxDXdDFOliqtLr$iv6G<{*9A`p>|N`3o3K>FgO z+u0%@Jwxu150(Szwprqv>jU z8z|Uc<~CYp0*{n9yYjTnDBm~yt||%z#=4lxJhQVaGce!NyB7xG_ng$bRD8S+wLRja z!$NJEbF&LjMxaQ22tDXtl=Nom_+9^xQ*|RbmsELFwxwttj+^-YUuN;4=2A;O>**4#m3q8 z*gnFw(pJzw?G;>+Dgl;FGCbe36RsTW|vN4k3kwhjCoIK8D!K0vYo6X$akcxwpO0 zWO)g5FCSVJ`y5DrnzFzI&nN4P(;rs?5gy*b@4)%jyT#s4SPG=;4Zqn9*Po8nH)WOa zyjJtQ?AQ1lf;OgcFTQ`H(wWwPrI_dG^h&oYKx%ncXel^8)mge(a=0#39HkW$O#mtF z*RsgO@q2MPTZ4`7mp7cFr;qa|H^C&}o;8qc*F(c{_b|`2&XW%ffut#D*capalak=> z5PdLHce}05S!-~8*mJb$LJ^LGv9`M~7~e;$)YX`J6^N3qp_&g1M5B?qFRb|> z5)@~geVYQJl5^>yTwf5~Jx^^`!n$9e`^&@{5Yb|U7Im2*QYcs-r8*OY6;*M5N!lPh zV5`OIdJcV0`}iw${(#>8&^l!^9`uM6;Sg60-5pnVbh9r*7e}Q2;J|L^q%R+5md}KC z!HQAl?O + %\VignetteIndexEntry{Use} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r, include=FALSE} +knitr::opts_chunk$set(collapse = TRUE, comment = "#>") +``` + +Age distribution of Focal´s father when she born depends on male fertility pattern. Living siblings depends on sex composition (brothers and sisters) due to differential mortality risk. Intensity in care tasks is not the same between sex in many societies, so the sex of ego and his/her "sandwichness" change, because an average family network expects different roles in supporting. For these reasons, and many others, sex specific kin count estimates are important. Here we implement relations in Caswell (2022), not focusing in applications that can be analogous to the one-sex model, but in the specific advantages. + +```{r, message=FALSE, warning=FALSE} +library(DemoKin) +library(tidyr) +library(dplyr) +library(ggplot2) +library(knitr) +devtools::load_all() +``` + +### 1.1. Rates by sex + +Female fertility by age is not a widespread available data source. Caswell (2022) takes Schoumaker (2019) makes available estimates for 160 countries, reporting that male TFR almost always exceeds female TFR. We take the case of France in 2012 for showing how functions works (fertility and mortality data are available with the package, with column-sex values). Let´s see main differences in age distribution (TFR of 1.98 and 1.99 for males and females, practically the same) + +```{r} +fra_fert_f <- fra_fert_sex[,"ff"] +fra_fert_m <- fra_fert_sex[,"fm"] +fra_surv_f <- fra_surv_sex[,"pf"] +fra_surv_m <- fra_surv_sex[,"pm"] +sum(fra_fert_m)-sum(fra_fert_f) +data.frame(value = c(fra_fert_f, fra_fert_m, fra_surv_f, fra_surv_m), + age = rep(0:100, 4), + sex = rep(c(rep("f", 101), rep("m", 101)), 2), + risk = c(rep("fertility rate", 101 * 2), rep("survival probability", 101 * 2))) %>% + ggplot(aes(age, value, col=sex)) + geom_line() + facet_wrap(~ risk, scales = "free_y") + theme_bw() +``` + +### 1.1. Visualizing the distribution of kin + +Compared with one sex functions, here the user needs to specify risk by sex and decide results for which ego´s sex wants. (**this should be wrapped on a kin general formula? (note for Diego)**) + +```{r} +kin_out <- kin_time_invariant_2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) +``` + +Let´s group aunts and siblings and see living kin by age (**should reply fig 6 (note for Diego)**). + +```{r} +kin_out <- kin_out %>% + mutate(kin = case_when(kin %in% c("s", "s") ~ "s", + kin %in% c("ya", "oa") ~ "a", + T ~ kin)) %>% + filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) +kin_out %>% + group_by(kin, age_focal, sex) %>% + summarise(count=sum(living)) %>% + ggplot(aes(age_focal, count, fill=sex))+ + geom_area()+ + theme_bw() + + facet_wrap(~kin) +``` + +Kin availability by sex allows to inspect its distribution, a traditional measure in demography is the sex ratio (with females in denominator). A French woman would expect to have half grandfathers for each grandmother at 25 years old. + +```{r} +kin_out %>% + group_by(kin, age_focal) %>% + summarise(sex_ratio=sum(living[sex=="m"], na.rm=T)/sum(living[sex=="f"], na.rm=T)) %>% + ggplot(aes(age_focal, sex_ratio))+ + geom_line()+ + theme_bw() + + facet_wrap(~kin, scales = "free") +``` + +How ego experiences relative deaths depends mainly on how wide is the sex-gap in mortality. She starts to lose fathers earlier than mothers. The difference on the level by sex in grandparents is due to initial availability by sex. + +```{r} +# sex ratio +kin_out %>% + group_by(kin, sex, age_focal) %>% + summarise(count=sum(dead)) %>% + ggplot(aes(age_focal, count, col=sex))+ + geom_line()+ + theme_bw() + + facet_wrap(~kin) +``` + +### 2 Approximations + +Caswell (2022) mentions some ways to approximate to 2-sex distribution of living kins. Here we compare the full 2-sex model that introduced before with *androgynous* variant (male fertility and survival are the same as females) and the use of GKP factors. The first comparison can be done by age, having very similar results in this case, except for grandfathers and great-grandfathers who transits higher ages and sex-gap is higher. + +```{r} +kin_out <- kin_time_invariant_2sex(fra_surv_f, fra_surv_m, + fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) +kin_out_androgynous <- kin_time_invariant_2sex(fra_surv_f, fra_surv_f, + fra_fert_f, fra_fert_f, sex_focal = "f", birth_female = .5) +bind_rows( + kin_out %>% mutate(type = "full"), + kin_out_androgynous %>% mutate(type = "androgynous")) %>% + group_by(kin, age_focal, sex, type) %>% + summarise(count = sum(living)) %>% + ggplot(aes(age_focal, count, linetype = type)) + + geom_line() + + theme_bw() + + theme(legend.position = "bottom", axis.text.x = element_blank()) + + facet_grid(row = vars(sex), col = vars(kin), scales = "free") +``` + +Now we can multiply results from 1-sex model by the GKP factors by kin, to obtain a simple but very consistent approximation of totals (both sex) at different ages of Focal. + +```{r} +# with gkp +kin_out_1sex <- kin(fra_surv_f, fra_fert_f, birth_female = .5) +kin_out_GKP <- kin_out_1sex$kin_full %>% + mutate(living = case_when(kin == "m" ~ living * 2, + kin == "gm" ~ living * 4, + kin == "ggm" ~ living * 8, + kin == "d" ~ living * 2, + kin == "gd" ~ living * 4, + kin == "ggd" ~ living * 4, + kin == "oa" ~ living * 4, + kin == "ya" ~ living * 4, + kin == "os" ~ living * 2, + kin == "ys" ~ living * 2, + kin == "coa" ~ living * 8, + kin == "cya" ~ living * 8, + kin == "nos" ~ living * 4, + kin == "nys" ~ living * 4)) + +bind_rows( + kin_out %>% mutate(type = "full"), + kin_out_androgynous %>% mutate(type = "androgynous"), + kin_out_GKP %>% mutate(type = "gkp")) %>% + mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + kin %in% c("coa", "cya") ~ "c", + kin %in% c("nys", "nos") ~ "n", + T ~ kin)) %>% + filter(age_focal %in% c(5, 15, 30, 60, 80)) %>% + group_by(kin, age_focal, type) %>% + summarise(count = sum(living)) %>% + ggplot(aes(type, count)) + + geom_bar(aes(fill=type), stat = "identity") + + theme_bw()+theme(axis.text.x = element_text(angle = 90), legend.position = "bottom")+ + facet_grid(col = vars(kin), row = vars(age_focal), scales = "free") +``` + +### 2 Time variant + +But Focal will see his/her tree developing with current risk, being part of the evolving demographic transition, in any of its stages. Let´s compare what would be living kin for Swedish female if she would experienced time varying rates instead of period ones from 1950. We can use data already loaded in the package. + +```{r} +years <- ncol(swe_px) +ages <- nrow(swe_px) +swe_surv_f_matrix <- swe_px +swe_surv_m_matrix <- swe_px ^ 1.5 # this could be replaced with downloaded data from UN +swe_fert_f_matrix <- swe_asfr +swe_fert_m_matrix <- rbind(matrix(0, 5, years), + swe_asfr[-((ages-4):ages),]) * 1.05 +par(mfrow=c(1,2)) +main("Sweden year 1900") +plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probability") +lines(swe_surv_m_matrix[,"1900"], col=2) +plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") +lines(swe_fert_m_matrix[,"1900"], col=2) +``` +There is a n increase of living relatives because of mortality improvements, very small for grandparents because main advantages in health conditions made a huge effect in infant mortality first. Less children would have this woman in case of varying rates, due to fertility transition in the first decades in Sweden. + +```{r} +kin_out_time_invariant <- kin_time_invariant_2sex( + swe_surv_f_matrix[,"1900"], swe_surv_m_matrix[,"1900"], + swe_fert_f_matrix[,"1900"], swe_fert_m_matrix[,"1900"], + sex_focal = "f", birth_female = .5) +kin_out_time_variant <- kin_time_variant_2sex( + swe_surv_f_matrix, swe_surv_m_matrix, + swe_fert_f_matrix, swe_fert_m_matrix, + sex_focal = "f", + birth_female = .5, + output_cohort = 1900) + +kin_out_time_variant %>% + filter(cohort == 1900) %>% mutate(type = "variant") %>% + bind_rows(kin_out_time_invariant %>% mutate(type = "invariant")) %>% + mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + T ~ kin)) %>% + filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) %>% + group_by(type, kin, age_focal, sex) %>% + summarise(count=sum(living)) %>% + ggplot(aes(age_focal, count, linetype=type))+ + geom_line()+ theme_bw() + + facet_grid(cols = vars(kin), rows=vars(sex), scales = "free") +``` + + +## References + +Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. From 972d5c10b195688a5500064cbd7bee700ee39f77 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 27 Jan 2023 08:52:17 -0300 Subject: [PATCH 06/37] general 2sexkin --- R/kin2sex.R | 124 +++++++++++++++++++++++++++++++++++++++++++ vignettes/TwoSex.Rmd | 73 ++++++++++++------------- 2 files changed, 159 insertions(+), 38 deletions(-) create mode 100644 R/kin2sex.R diff --git a/R/kin2sex.R b/R/kin2sex.R new file mode 100644 index 0000000..dee1254 --- /dev/null +++ b/R/kin2sex.R @@ -0,0 +1,124 @@ +#' Estimate kin counts in a two-sex framework + +#' @description Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. +#' @details See Caswell (2022) for details on formulas. +#' @param U numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param f numeric. Same as U but for fertility rates. +#' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. +#' @param N numeric. Same as U but for population distribution (counts or `%`). Optional. +#' @param pi numeric. Same as U but for childbearing distribution (sum to 1). Optional. +#' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. +#' @param output_period integer. Vector of period years for returning results. Should be within input data years range. +#' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... +#' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param stable logic. Deprecated. Use `time_invariant`. +#' @return A list with: +#' \itemize{ +#' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age.} +#' \item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing `kin_full`, grouping by cohort or period (depending on the given arguments):} +#' {\itemize{ +#' \item{`count_living`}{: count of living kin at actual age of Focal} +#' \item{`mean_age`}{: mean age of each type of living kin.} +#' \item{`sd_age`}{: standard deviation of age of each type of living kin.} +#' \item{`count_death`}{: count of dead kin at specific age of Focal.} +#' \item{`count_cum_death`}{: cumulated count of dead kin until specific age of Focal.} +#' \item{`mean_age_lost`}{: mean age where Focal lost her relative.} +#' } +#' } +#' } + +#' @export +#' +# get kin ---------------------------------------------------------------- +kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, + time_invariant = TRUE, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + output_cohort = NULL, output_period = NULL, output_kin=NULL) + { + + age <- as.integer(rownames(pf)) + years_data <- as.integer(colnames(pf)) + + # kin to return + all_possible_kin <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") + if(is.null(output_kin)){ + output_kin <- all_possible_kin + }else{ + output_kin <- match.arg(tolower(output_kin), all_possible_kin, several.ok = TRUE) + } + + # if time dependent or not + if(time_invariant){ + if(!is.vector(pf)) { + output_period <- min(years_data) + pf <- pf[,as.character(output_period)] + pm <- pm[,as.character(output_period)] + ff <- ff[,as.character(output_period)] + fm <- fm[,as.character(output_period)] + } + kin_full <- kin_time_invariant_2sex(pf, pm, ff, fm, + sex_focal = sex_focal, + birth_female = birth_female, + pif = pif, pim = pim, + output_kin = output_kin) %>% + dplyr::mutate(cohort = NA, year = NA) + }else{ + if(!is.null(output_cohort) & !is.null(output_period)) stop("sorry, you can not select cohort and period. Choose one please") + kin_full <- kin_time_variant_2sex(Pf = pf, Pm = pm, + Ff = ff, Fm = fm, + sex_focal = sex_focal, + birth_female = birth_female, + Pif = pif, Pim = pim, + output_cohort = output_cohort, output_period = output_period, + output_kin = output_kin) + message(paste0("Assuming stable population before ", min(years_data), ".")) + } + + # reorder + kin_full <- kin_full %>% + dplyr::select(year, cohort, age_focal, sex, kin, age_kin, living, dead) %>% + dplyr::mutate(kin_group = dplyr::case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + kin %in% c("coa", "cya") ~ "c", + kin %in% c("nys", "nos") ~ "n", + T ~ kin)) + + # summary + # select period/cohort + if(!is.null(output_cohort)){ + agrupar <- "cohort" + } else if(!is.null(output_period)){ + agrupar <- "year" + } else{ + agrupar <- c("year", "cohort") + } + agrupar_no_age_focal <- c("kin", "sex", agrupar) + agrupar <- c("age_focal", "kin", "sex", agrupar) + + kin_summary <- dplyr::bind_rows( + kin_full %>% + dplyr::rename(total=living) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_living = sum(total), + mean_age = sum(total*age_kin)/sum(total), + sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% + tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", "value"), + kin_full %>% + dplyr::rename(total=dead) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_dead = sum(total)) %>% + dplyr::ungroup() %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar_no_age_focal))) %>% + dplyr::mutate(count_cum_dead = cumsum(count_dead), + mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% + dplyr::ungroup() %>% + tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", "value")) %>% + dplyr::ungroup() %>% + tidyr::pivot_wider(names_from = indicator, values_from = value) + + # return + kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) + return(kin_out) +} diff --git a/vignettes/TwoSex.Rmd b/vignettes/TwoSex.Rmd index 32d2c63..3245293 100644 --- a/vignettes/TwoSex.Rmd +++ b/vignettes/TwoSex.Rmd @@ -1,5 +1,5 @@ --- -title: "Expected kin counts by type of relative: A matrix implementation" +title: "TwoExpected kin counts by type of relative: A matrix implementation" output: html_document: toc: true @@ -47,20 +47,20 @@ data.frame(value = c(fra_fert_f, fra_fert_m, fra_surv_f, fra_surv_m), Compared with one sex functions, here the user needs to specify risk by sex and decide results for which ego´s sex wants. (**this should be wrapped on a kin general formula? (note for Diego)**) ```{r} -kin_out <- kin_time_invariant_2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) +kin_out <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) ``` Let´s group aunts and siblings and see living kin by age (**should reply fig 6 (note for Diego)**). ```{r} -kin_out <- kin_out %>% +kin_out <- kin_out$kin_summary %>% mutate(kin = case_when(kin %in% c("s", "s") ~ "s", kin %in% c("ya", "oa") ~ "a", T ~ kin)) %>% filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) kin_out %>% group_by(kin, age_focal, sex) %>% - summarise(count=sum(living)) %>% + summarise(count=sum(count_living)) %>% ggplot(aes(age_focal, count, fill=sex))+ geom_area()+ theme_bw() + @@ -72,7 +72,7 @@ Kin availability by sex allows to inspect its distribution, a traditional measur ```{r} kin_out %>% group_by(kin, age_focal) %>% - summarise(sex_ratio=sum(living[sex=="m"], na.rm=T)/sum(living[sex=="f"], na.rm=T)) %>% + summarise(sex_ratio=sum(count_living[sex=="m"], na.rm=T)/sum(count_living[sex=="f"], na.rm=T)) %>% ggplot(aes(age_focal, sex_ratio))+ geom_line()+ theme_bw() + @@ -85,7 +85,7 @@ How ego experiences relative deaths depends mainly on how wide is the sex-gap in # sex ratio kin_out %>% group_by(kin, sex, age_focal) %>% - summarise(count=sum(dead)) %>% + summarise(count=sum(count_dead)) %>% ggplot(aes(age_focal, count, col=sex))+ geom_line()+ theme_bw() + @@ -97,15 +97,13 @@ kin_out %>% Caswell (2022) mentions some ways to approximate to 2-sex distribution of living kins. Here we compare the full 2-sex model that introduced before with *androgynous* variant (male fertility and survival are the same as females) and the use of GKP factors. The first comparison can be done by age, having very similar results in this case, except for grandfathers and great-grandfathers who transits higher ages and sex-gap is higher. ```{r} -kin_out <- kin_time_invariant_2sex(fra_surv_f, fra_surv_m, - fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) -kin_out_androgynous <- kin_time_invariant_2sex(fra_surv_f, fra_surv_f, - fra_fert_f, fra_fert_f, sex_focal = "f", birth_female = .5) +kin_out <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) +kin_out_androgynous <- kin2sex(fra_surv_f, fra_surv_f, fra_fert_f, fra_fert_f, sex_focal = "f", birth_female = .5) bind_rows( - kin_out %>% mutate(type = "full"), - kin_out_androgynous %>% mutate(type = "androgynous")) %>% + kin_out$kin_summary %>% mutate(type = "full"), + kin_out_androgynous$kin_summary %>% mutate(type = "androgynous")) %>% group_by(kin, age_focal, sex, type) %>% - summarise(count = sum(living)) %>% + summarise(count = sum(count_living)) %>% ggplot(aes(age_focal, count, linetype = type)) + geom_line() + theme_bw() + @@ -118,25 +116,25 @@ Now we can multiply results from 1-sex model by the GKP factors by kin, to obtai ```{r} # with gkp kin_out_1sex <- kin(fra_surv_f, fra_fert_f, birth_female = .5) -kin_out_GKP <- kin_out_1sex$kin_full %>% - mutate(living = case_when(kin == "m" ~ living * 2, - kin == "gm" ~ living * 4, - kin == "ggm" ~ living * 8, - kin == "d" ~ living * 2, - kin == "gd" ~ living * 4, - kin == "ggd" ~ living * 4, - kin == "oa" ~ living * 4, - kin == "ya" ~ living * 4, - kin == "os" ~ living * 2, - kin == "ys" ~ living * 2, - kin == "coa" ~ living * 8, - kin == "cya" ~ living * 8, - kin == "nos" ~ living * 4, - kin == "nys" ~ living * 4)) +kin_out_GKP <- kin_out_1sex$kin_summary%>% + mutate(count_living = case_when(kin == "m" ~ count_living * 2, + kin == "gm" ~ count_living * 4, + kin == "ggm" ~ count_living * 8, + kin == "d" ~ count_living * 2, + kin == "gd" ~ count_living * 4, + kin == "ggd" ~ count_living * 4, + kin == "oa" ~ count_living * 4, + kin == "ya" ~ count_living * 4, + kin == "os" ~ count_living * 2, + kin == "ys" ~ count_living * 2, + kin == "coa" ~ count_living * 8, + kin == "cya" ~ count_living * 8, + kin == "nos" ~ count_living * 4, + kin == "nys" ~ count_living * 4)) bind_rows( - kin_out %>% mutate(type = "full"), - kin_out_androgynous %>% mutate(type = "androgynous"), + kin_out$kin_summary %>% mutate(type = "full"), + kin_out_androgynous$kin_summary %>% mutate(type = "androgynous"), kin_out_GKP %>% mutate(type = "gkp")) %>% mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", kin %in% c("ya", "oa") ~ "a", @@ -145,7 +143,7 @@ bind_rows( T ~ kin)) %>% filter(age_focal %in% c(5, 15, 30, 60, 80)) %>% group_by(kin, age_focal, type) %>% - summarise(count = sum(living)) %>% + summarise(count = sum(count_living)) %>% ggplot(aes(type, count)) + geom_bar(aes(fill=type), stat = "identity") + theme_bw()+theme(axis.text.x = element_text(angle = 90), legend.position = "bottom")+ @@ -165,7 +163,6 @@ swe_fert_f_matrix <- swe_asfr swe_fert_m_matrix <- rbind(matrix(0, 5, years), swe_asfr[-((ages-4):ages),]) * 1.05 par(mfrow=c(1,2)) -main("Sweden year 1900") plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probability") lines(swe_surv_m_matrix[,"1900"], col=2) plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") @@ -174,26 +171,26 @@ lines(swe_fert_m_matrix[,"1900"], col=2) There is a n increase of living relatives because of mortality improvements, very small for grandparents because main advantages in health conditions made a huge effect in infant mortality first. Less children would have this woman in case of varying rates, due to fertility transition in the first decades in Sweden. ```{r} -kin_out_time_invariant <- kin_time_invariant_2sex( +kin_out_time_invariant <- kin2sex( swe_surv_f_matrix[,"1900"], swe_surv_m_matrix[,"1900"], swe_fert_f_matrix[,"1900"], swe_fert_m_matrix[,"1900"], sex_focal = "f", birth_female = .5) -kin_out_time_variant <- kin_time_variant_2sex( +kin_out_time_variant <- kin2sex( swe_surv_f_matrix, swe_surv_m_matrix, swe_fert_f_matrix, swe_fert_m_matrix, - sex_focal = "f", + sex_focal = "f",time_invariant = FALSE, birth_female = .5, output_cohort = 1900) -kin_out_time_variant %>% +kin_out_time_variant$kin_summary %>% filter(cohort == 1900) %>% mutate(type = "variant") %>% - bind_rows(kin_out_time_invariant %>% mutate(type = "invariant")) %>% + bind_rows(kin_out_time_invariant$kin_summary %>% mutate(type = "invariant")) %>% mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", kin %in% c("ya", "oa") ~ "a", T ~ kin)) %>% filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) %>% group_by(type, kin, age_focal, sex) %>% - summarise(count=sum(living)) %>% + summarise(count=sum(count_living)) %>% ggplot(aes(age_focal, count, linetype=type))+ geom_line()+ theme_bw() + facet_grid(cols = vars(kin), rows=vars(sex), scales = "free") From 47ade3080d1f8e3c253c3d584994460dbbbfbbf9 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Sun, 29 Jan 2023 12:14:52 -0300 Subject: [PATCH 07/37] document 2sex --- DESCRIPTION | 2 +- NAMESPACE | 3 + R/kin.R | 82 ++++++++------ R/kin2sex.R | 40 ++++--- R/kin_time_invariant.R | 31 +++-- R/kin_time_invariant_2sex.R | 12 +- R/kin_time_variant.R | 103 ++++++++--------- R/kin_time_variant_2sex.R | 145 +++++++++++++----------- data/fra_asfr_sex.rda | Bin 870 -> 870 bytes man/fra_asfr_sex.Rd | 19 ++++ man/fra_surv_sex.Rd | 19 ++++ man/kin.Rd | 40 +++++-- man/kin2sex.Rd | 86 ++++++++++++++ man/kin_time_invariant.Rd | 10 +- man/kin_time_invariant_2sex.Rd | 52 +++++++++ man/kin_time_variant.Rd | 17 +-- man/kin_time_variant_2sex.Rd | 65 +++++++++++ man/output_period_cohort_combination.Rd | 11 +- man/timevarying_kin_2sex.Rd | 22 ++++ vignettes/Reference.Rmd | 15 +-- vignettes/TwoSex.Rmd | 31 ++--- 21 files changed, 566 insertions(+), 239 deletions(-) create mode 100644 man/fra_asfr_sex.Rd create mode 100644 man/fra_surv_sex.Rd create mode 100644 man/kin2sex.Rd create mode 100644 man/kin_time_invariant_2sex.Rd create mode 100644 man/kin_time_variant_2sex.Rd create mode 100644 man/timevarying_kin_2sex.Rd diff --git a/DESCRIPTION b/DESCRIPTION index 9b3e9db..2e5402c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -21,7 +21,6 @@ Imports: dplyr, tidyr, purrr, - forcats, HMDHFDplus, progress, matrixcalc, @@ -30,6 +29,7 @@ Imports: stats, igraph, magrittr, + data.table, lifecycle BugReports: https://github.com/IvanWilli/DemoKin/issues Depends: diff --git a/NAMESPACE b/NAMESPACE index f5c7de1..5502931 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -4,9 +4,12 @@ export("%>%") export(demokin_codes) export(get_HMDHFD) export(kin) +export(kin2sex) export(kin_multi_stage) export(kin_time_invariant) +export(kin_time_invariant_2sex) export(kin_time_variant) +export(kin_time_variant_2sex) export(plot_diagram) export(rename_kin) importFrom(magrittr,"%>%") diff --git a/R/kin.R b/R/kin.R index 6dd8dec..866f1c9 100644 --- a/R/kin.R +++ b/R/kin.R @@ -1,21 +1,26 @@ -#' Estimate kin counts +#' Estimate kin counts in a one-sex framework. -#' @description Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. +#' @description Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. This produce a matrilineal (or patrilineal) +#' kin count distribution by kin and age. #' @details See Caswell (2019) and Caswell (2021) for details on formulas. One sex only (female by default). -#' @param U numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). -#' @param f numeric. Same as U but for fertility rates. +#' @param p numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class +#' in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param f numeric. Same as p but for fertility rates. #' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. -#' @param N numeric. Same as U but for population distribution (counts or `%`). Optional. +#' @param n numeric. Same as p but for population distribution (counts or `%`). Optional. #' @param pi numeric. Same as U but for childbearing distribution (sum to 1). Optional. #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... -#' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, +#' this needs to be set as 1. #' @param stable logic. Deprecated. Use `time_invariant`. #' @return A list with: #' \itemize{ -#' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age.} -#' \item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing `kin_full`, grouping by cohort or period (depending on the given arguments):} +#' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, +#' `oa` is older aunts, etc.), including living and dead kin at that age.} +#' \item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing `kin_full`, +#' grouping by cohort or period (depending on the given arguments):} #' {\itemize{ #' \item{`count_living`}{: count of living kin at actual age of Focal} #' \item{`mean_age`}{: mean age of each type of living kin.} @@ -26,25 +31,35 @@ #' } #' } #' } - #' @export -#' -# get kin ---------------------------------------------------------------- -kin <- function(U = NULL, f = NULL, - time_invariant = TRUE, - N = NULL, pi = NULL, - output_cohort = NULL, output_period = NULL, output_kin=NULL, - birth_female = 1/2.04, - stable = lifecycle::deprecated()) - { +#' @examples +#' \dontrun{ +#' # Kin expected matrilineal count for a Swedish female based on 2015 rates. +#' swe_surv_2015 <- swe_px[,"2015"] +#' swe_asfr_2015 <- swe_asfr[,"2015"] +#' # Run kinship models +#' swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015) +#' head(swe_2015) +#'} - age <- as.integer(rownames(U)) - years_data <- as.integer(colnames(U)) +kin <- function(p = NULL, f = NULL, + time_invariant = TRUE, + pi = NULL, n = NULL, + output_cohort = NULL, output_period = NULL, output_kin=NULL, + birth_female = 1/2.04, + stable = lifecycle::deprecated(), + U = lifecycle::deprecated()) + { + # changed arguments if (lifecycle::is_present(stable)) { lifecycle::deprecate_warn("0.0.0.9000", "kin(stable)", details = "Used time_invariant") time_invariant <- stable } + if (lifecycle::is_present(U)) { + lifecycle::deprecate_warn("0.0.0.9000", "kin(stable)", details = "Used time_invariant") + p <- U + } # kin to return all_possible_kin <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") @@ -54,35 +69,27 @@ kin <- function(U = NULL, f = NULL, output_kin <- match.arg(tolower(output_kin), all_possible_kin, several.ok = TRUE) } - # if time dependent or not + # if is time dependent or not + age <- as.integer(rownames(p)) + years_data <- as.integer(colnames(p)) if(time_invariant){ - if(!is.vector(U)) { + if(!is.vector(p)) { output_period <- min(years_data) - U <- U[,as.character(output_period)] + p <- p[,as.character(output_period)] f <- f[,as.character(output_period)] } - kin_full <- kin_time_invariant(U = U, f = f, + kin_full <- kin_time_invariant(p = p, f = f, output_kin = output_kin, birth_female = birth_female) %>% dplyr::mutate(cohort = NA, year = NA) }else{ if(!is.null(output_cohort) & !is.null(output_period)) stop("sorry, you can not select cohort and period. Choose one please") - kin_full <- kin_time_variant(U = U, f = f, N = N, pi = pi, + kin_full <- kin_time_variant(p = p, f = f, pi = pi, n = n, output_cohort = output_cohort, output_period = output_period, output_kin = output_kin, birth_female = birth_female) message(paste0("Assuming stable population before ", min(years_data), ".")) } - # reorder - kin_full <- kin_full %>% - dplyr::select(year, cohort, age_focal, kin, age_kin, living, dead) %>% - dplyr::mutate(kin_group = dplyr::case_when(kin %in% c("ys", "os") ~ "s", - kin %in% c("ya", "oa") ~ "a", - kin %in% c("coa", "cya") ~ "c", - kin %in% c("nys", "nos") ~ "n", - T ~ kin)) - - # summary # select period/cohort if(!is.null(output_cohort)){ agrupar <- "cohort" @@ -94,6 +101,7 @@ kin <- function(U = NULL, f = NULL, agrupar_no_age_focal <- c("kin", agrupar) agrupar <- c("age_focal", "kin", agrupar) + # get summary indicators based on group variables kin_summary <- dplyr::bind_rows( kin_full %>% dplyr::rename(total=living) %>% @@ -115,7 +123,7 @@ kin <- function(U = NULL, f = NULL, dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) - # return - kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) + # return + kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) return(kin_out) } diff --git a/R/kin2sex.R b/R/kin2sex.R index dee1254..aa46eba 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -1,12 +1,19 @@ #' Estimate kin counts in a two-sex framework -#' @description Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. +#' @description Implementation of two-sex matrix kinship model. This produces kin counts grouped by kin, age and sex of +#' each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +#' are grouped in one male count of cousins. #' @details See Caswell (2022) for details on formulas. -#' @param U numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). -#' @param f numeric. Same as U but for fertility rates. +#' @param pf numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param ff numeric. Same as pf but for fertility rates. +#' @param fm numeric. Same as pm but for fertility rates. #' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. -#' @param N numeric. Same as U but for population distribution (counts or `%`). Optional. -#' @param pi numeric. Same as U but for childbearing distribution (sum to 1). Optional. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. +#' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param nf numeric. Same as pf but for population distribution (counts or `%`). Optional. +#' @param nm numeric. Same as pm but for population distribution (counts or `%`). Optional. #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... @@ -15,7 +22,7 @@ #' @return A list with: #' \itemize{ #' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age.} -#' \item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing `kin_full`, grouping by cohort or period (depending on the given arguments):} +#' \item{kin_summary}{ a data frame with Focal´s age, related ages, sex and type of kin, with indicators obtained processing `kin_full`, grouping by cohort or period (depending on the given arguments):} #' {\itemize{ #' \item{`count_living`}{: count of living kin at actual age of Focal} #' \item{`mean_age`}{: mean age of each type of living kin.} @@ -26,8 +33,13 @@ #' } #' } #' } - #' @export +#' @examples +#' \dontrun{ +#' # Kin expected count by relative sex for a French female based on 2012 rates. +#' fra_2012 <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m) +#' head(fra_2012) +#'} #' # get kin ---------------------------------------------------------------- kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, @@ -35,6 +47,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, sex_focal = "f", birth_female = 1/2.04, pif = NULL, pim = NULL, + nf = NULL, nm = NULL, output_cohort = NULL, output_period = NULL, output_kin=NULL) { @@ -66,11 +79,12 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, dplyr::mutate(cohort = NA, year = NA) }else{ if(!is.null(output_cohort) & !is.null(output_period)) stop("sorry, you can not select cohort and period. Choose one please") - kin_full <- kin_time_variant_2sex(Pf = pf, Pm = pm, - Ff = ff, Fm = fm, + kin_full <- kin_time_variant_2sex(pf = pf, pm = pm, + ff = ff, fm = fm, sex_focal = sex_focal, birth_female = birth_female, - Pif = pif, Pim = pim, + pif = pif, pim = pim, + nf = nf, nm = nm, output_cohort = output_cohort, output_period = output_period, output_kin = output_kin) message(paste0("Assuming stable population before ", min(years_data), ".")) @@ -78,7 +92,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, # reorder kin_full <- kin_full %>% - dplyr::select(year, cohort, age_focal, sex, kin, age_kin, living, dead) %>% + dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) %>% dplyr::mutate(kin_group = dplyr::case_when(kin %in% c("ys", "os") ~ "s", kin %in% c("ya", "oa") ~ "a", kin %in% c("coa", "cya") ~ "c", @@ -94,8 +108,8 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, } else{ agrupar <- c("year", "cohort") } - agrupar_no_age_focal <- c("kin", "sex", agrupar) - agrupar <- c("age_focal", "kin", "sex", agrupar) + agrupar_no_age_focal <- c("kin", "sex_kin", agrupar) + agrupar <- c("age_focal", "kin", "sex_kin", agrupar) kin_summary <- dplyr::bind_rows( kin_full %>% diff --git a/R/kin_time_invariant.R b/R/kin_time_invariant.R index d843c4e..2f85412 100644 --- a/R/kin_time_invariant.R +++ b/R/kin_time_invariant.R @@ -1,37 +1,37 @@ -#' Estimate kin counts in a time invariant framework +#' Estimate kin counts in a time invariant framework for one-sex model (matrilineal/patrilineal) -#' @description Implementation of Goodman-Keyfitz-Pullum equations adapted by Caswell (2019). +#' @description Mtrix implementation of Goodman-Keyfitz-Pullum equations adapted by Caswell (2019). -#' @param U numeric. A vector of survival probabilities with same length as ages. +#' @param p numeric. A vector of survival probabilities with same length as ages. #' @param f numeric. A vector of age-specific fertility rates with same length as ages. #' @param birth_female numeric. Female portion at birth. #' @param pi numeric. For using some specific non-stable age distribution of childbearing (same length as ages). Default `NULL`. -#' @param output_kin character. kin to return. For example "m" for mother, "d" for daughter. See the `vignette` for all kin types. +#' @param output_kin character. kin to return. For example "m" for mother, "d" for daughter. See `vignette` for all kin types. #' @param list_output logical. Results as a list with `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` #' #' @return A data frame with focal´s age, related ages and type of kin #' (for example `d` is daughter, `oa` is older aunts, etc.), alive and death. If `list_output = TRUE` then this is a list. #' @export -kin_time_invariant <- function(U = NULL, f = NULL, +kin_time_invariant <- function(p = NULL, f = NULL, birth_female = 1/2.04, pi = NULL, output_kin = NULL, list_output = FALSE){ # make matrix transition from vectors - age = 0:(length(U)-1) + age = 0:(length(p)-1) ages = length(age) - Ut = Mt = zeros = Dcum = matrix(0, nrow=ages, ncol=ages) - Ut[row(Ut)-1 == col(Ut)] <- U[-ages] - Ut[ages, ages] = U[ages] - diag(Mt) = 1 - U + Ut = Mt = zeros = matrix(0, nrow=ages, ncol=ages) + Ut[row(Ut)-1 == col(Ut)] <- p[-ages] + Ut[ages, ages] = p[ages] + diag(Mt) = 1 - p Ut = rbind(cbind(Ut,zeros), - cbind(Mt,Dcum)) + cbind(Mt,zeros)) ft = matrix(0, nrow=ages*2, ncol=ages*2) ft[1,1:ages] = f * birth_female - # stable age distr + # stable age distribution in case no pi is given if(is.null(pi)){ A = Ut[1:ages,1:ages] + ft[1:ages,1:ages] A_decomp = eigen(A) @@ -57,24 +57,20 @@ kin_time_invariant <- function(U = NULL, f = NULL, ys[,i+1] = Ut %*% ys[,i] + ft %*% m[,i] nys[,i+1] = Ut %*% nys[,i] + ft %*% ys[,i] } - gm[1:ages,1] = m[1:ages,] %*% pi for(i in 1:(ages-1)){ gm[,i+1] = Ut %*% gm[,i] } - ggm[1:ages,1] = gm[1:ages,] %*% pi for(i in 1:(ages-1)){ ggm[,i+1] = Ut %*% ggm[,i] } - os[1:ages,1] = d[1:ages,] %*% pi nos[1:ages,1] = gd[1:ages,] %*% pi for(i in 1:(ages-1)){ os[,i+1] = Ut %*% os[,i] nos[,i+1] = Ut %*% nos[,i] + ft %*% os[,i] } - oa[1:ages,1] = os[1:ages,] %*% pi ya[1:ages,1] = ys[1:ages,] %*% pi coa[1:ages,1] = nos[1:ages,] %*% pi @@ -95,7 +91,7 @@ kin_time_invariant <- function(U = NULL, f = NULL, kin_list <- kin_list %>% purrr::keep(names(.) %in% output_kin) } - # as data.frame + # reshape as data.frame kin <- purrr::map2(kin_list, names(kin_list), function(x,y){ out <- as.data.frame(x) @@ -118,6 +114,5 @@ kin_time_invariant <- function(U = NULL, f = NULL, }else{ out <- kin } - return(out) } diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index 1d178b1..f864154 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -1,7 +1,9 @@ -#' Estimate kin counts in a time invariant framework considering two sex - -#' @description Two sex matrix framework for kin count estimates. Implementation of Caswell (2022). +#' Estimate kin counts in a time invariant framework for two-sex model. +#' @description Two-sex matrix framework for kin count estimates.This produces kin counts grouped by kin, age and sex of +#' each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +#' are grouped in one male count of cousins. +#' @details See Caswell (2022) for details on formulas. #' @param pf numeric. A vector of survival probabilities for females with same length as ages. #' @param ff numeric. A vector of age-specific fertility rates for females with same length as ages. #' @param pm numeric. A vector of survival probabilities for males with same length as ages. @@ -141,9 +143,9 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, out %>% dplyr::mutate(kin = y, age_kin = rep(age,4), - sex = rep(c(rep("f",ages), rep("m",ages)),2), + sex_kin = rep(c(rep("f",ages), rep("m",ages)),2), alive = c(rep("living",2*ages), rep("dead",2*ages))) %>% - tidyr::pivot_longer(c(-age_kin, -kin, -sex, -alive), names_to = "age_focal", values_to = "count") %>% + tidyr::pivot_longer(c(-age_kin, -kin, -sex_kin, -alive), names_to = "age_focal", values_to = "count") %>% dplyr::mutate(age_focal = as.integer(age_focal)) %>% tidyr::pivot_wider(names_from = alive, values_from = count) } diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index bc962fc..c73f1ec 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -1,8 +1,8 @@ -#' Estimate kin counts in a time variant framework +#' Estimate kin counts in a time variant framework (dynamic rates) for one-sex model (matrilineal/patrilineal) -#' @description Implementation of time variant Goodman-Keyfitz-Pullum equations based on Caswell (2021). -#' -#' @param U numeric. A matrix of survival ratios with rows as ages and columns as years. Column names must be equal interval. +#' @description Matrix implementation of time variant Goodman-Keyfitz-Pullum equations in a matrix framework. +#' @details See Caswell (2021) for details on formulas. +#' @param p numeric. A matrix of survival ratios with rows as ages and columns as years. Column names must be equal interval. #' @param f numeric. A matrix of age-specific fertility rates with rows as ages and columns as years. Coincident with `U`. #' @param N numeric. A matrix of population with rows as ages and columns as years. Coincident with `U`. #' @param pi numeric. A matrix with distribution of childbearing with rows as ages and columns as years. Coincident with `U`. @@ -16,22 +16,22 @@ #' (for example `d` is daughter, `oa` is older aunts, etc.), living and death kin counts, and age of (living or time deceased) relatives. If `list_output = TRUE` then this is a list. #' @export -kin_time_variant <- function(U = NULL, f = NULL, N = NULL, pi = NULL, +kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, birth_female = 1/2.04, list_output = FALSE){ # check input - if(is.null(U) | is.null(f)) stop("You need values on U and/or f.") + if(is.null(p) | is.null(f)) stop("You need values on p and f.") # diff years - if(!any(as.integer(colnames(U)) == as.integer(colnames(f)))) stop("Data should be from same years.") + if(!any(as.integer(colnames(p)) == as.integer(colnames(f)))) stop("Data should be from same years.") # data should be from same interval years - years_data <- as.integer(colnames(U)) + years_data <- as.integer(colnames(p)) if(var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") # utils - age <- 0:(nrow(U)-1) + age <- 0:(nrow(p)-1) n_years_data <- length(years_data) ages <- length(age) om <- max(age) @@ -39,55 +39,46 @@ kin_time_variant <- function(U = NULL, f = NULL, N = NULL, pi = NULL, # age distribution at childborn if(is.null(pi)){ - if(is.null(N)){ + if(is.null(n)){ # create pi and fill it during the loop message("Stable assumption was made for calculating pi on each year because no input data.") pi <- matrix(0, nrow=ages, ncol=n_years_data) }else{ - pi <- rbind(t(t(N * f)/colSums(N * f)), matrix(0,ages,length(years_data))) + pi <- rbind(t(t(n * f)/colSums(n * f)), matrix(0,ages,length(years_data))) } } - # get lists of matrix - Ul = fl = list() - for(t in 1:n_years_data){ - Ut = Mt = Dcum = matrix(0, nrow=ages, ncol=ages) - Ut[row(Ut)-1 == col(Ut)] <- U[-ages,t] - Ut[ages, ages]=U[ages,t] - diag(Mt) = 1 - U[,t] - Ul[[as.character(years_data[t])]] <- rbind(cbind(Ut,zeros),cbind(Mt,Dcum)) - ft = matrix(0, nrow=ages*2, ncol=ages*2) - ft[1,1:ages] = f[,t] * birth_female - fl[[as.character(years_data[t])]] <- ft - } - U <- Ul - f <- fl - # loop over years (more performance here) kin_all <- list() pb <- progress::progress_bar$new( format = "Running over input years [:bar] :percent", - total = n_years_data, clear = FALSE, width = 60) - for (iyear in 1:n_years_data){ - # print(iyear) - Ut <- as.matrix(U[[iyear]]) - ft <- as.matrix(f[[iyear]]) + total = n_years_data + 1, clear = FALSE, width = 50) + for (t in 1:n_years_data){ + # build matrix + Ut = Mt = matrix(0, nrow=ages, ncol=ages) + Ut[row(Ut)-1 == col(Ut)] <- p[-ages,t] + Ut[ages, ages] = p[ages,t] + diag(Mt) = 1 - p[,t] + Ut = rbind(cbind(Ut,zeros),cbind(Mt,zeros)) + ft = matrix(0, nrow=ages*2, ncol=ages*2) + ft[1,1:ages] = f[,t] * birth_female if(is.null(pi)){ A <- Ut[1:ages,1:ages] + ft[1:ages,1:ages] A_decomp = eigen(A) w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) - pit <- pi[,iyear] <- w*A[1,]/sum(w*A[1,]) + pit <- pi[,t] <- w*A[1,]/sum(w*A[1,]) }else{ - pit <- pi[,iyear] + pit <- pi[,t] } - if (iyear==1){ - U1 <- c(diag(Ut[-1,])[1:om],Ut[om,om]) + # proj + if (t==1){ + p1 <- c(diag(Ut[-1,])[1:om],Ut[om,om]) f1 <- ft[1,][1:ages] pi1 <- pit[1:ages] - kin_all[[1]] <- kin_time_invariant(U = U1, f = f1/birth_female, pi = pi1, birth_female = birth_female, + kin_all[[1]] <- kin_time_invariant(p = p1, f = f1/birth_female, pi = pi1, birth_female = birth_female, list_output = TRUE) } - kin_all[[iyear+1]] <- timevarying_kin(Ut=Ut,ft=ft,pit=pit,ages,pkin=kin_all[[iyear]]) + kin_all[[t+1]] <- timevarying_kin(Ut=Ut,ft=ft,pit=pit,ages,pkin=kin_all[[t]]) pb$tick() } @@ -110,23 +101,26 @@ kin_time_variant <- function(U = NULL, f = NULL, N = NULL, pi = NULL, purrr::map(~ .[selected_kin_position]) # long format - kin <- lapply(names(kin_list), function(Y){ + kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] - X <- purrr::map2(X, names(X), function(x,y) as.data.frame(x) %>% - dplyr::mutate(year = Y, - kin=y, - age_kin = rep(age,2), - alive = c(rep("living",ages), rep("dead",ages)), - .before=everything())) %>% - dplyr::bind_rows() %>% - stats::setNames(c("year","kin","age_kin","alive",as.character(age))) %>% - tidyr::gather(age_focal, count,-age_kin, -kin, -year, -alive) %>% - dplyr::mutate(age_focal = as.integer(age_focal), - year = as.integer(year), - cohort = year - age_focal) %>% - dplyr::filter(age_focal %in% out_selected$age[out_selected$year==as.integer(Y)]) %>% - tidyr::pivot_wider(names_from = alive, values_from = count)}) %>% - dplyr::bind_rows() + X <- purrr::map2(X, names(X), function(x,y){ + x <- as.data.frame(x) + x$year <- Y + x$kin <- y + x$age_kin <- rep(age,2) + x$alive <- c(rep("living",ages), rep("dead",ages)) + return(x) + }) %>% + data.table::rbindlist() %>% + stats::setNames(c(as.character(age), "year","kin","age_kin","alive")) %>% + data.table::melt(id.vars = c("year","kin","age_kin","alive"), variable.name = "age_focal", value.name = "count") + X$age_focal = as.integer(as.character(X$age_focal)) + X$year = as.integer(X$year) + X$cohort = X$year - X$age_focal + X[X$age_focal %in% out_selected$age[out_selected$year==as.integer(Y)],] %>% + data.table::dcast(year + kin + age_kin + age_focal + cohort ~ alive, value.var = "count") + }) %>% data.table::rbindlist() + pb$tick() # results as list? if(list_output) { @@ -172,7 +166,8 @@ timevarying_kin<- function(Ut, ft, pit, ages, pkin){ coa[1:ages,1]= pkin[["nos"]][1:ages,] %*% pit[1:ages] cya[1:ages,1]= pkin[["nys"]][1:ages,] %*% pit[1:ages] - for (ix in 1:om){ + # vers1 + for(ix in 1:om){ d[,ix+1] = Ut %*% pkin[["d"]][,ix] + ft %*% I[,ix] gd[,ix+1] = Ut %*% pkin[["gd"]][,ix] + ft %*% pkin[["d"]][,ix] ggd[,ix+1] = Ut %*% pkin[["ggd"]][,ix] + ft %*% pkin[["gd"]][,ix] diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index 93248ba..0ffe306 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -1,23 +1,45 @@ -#' Estimate kin counts in a time variant framework +#' Estimate kin counts in a time variant framework (dynamic rates) in a two-sex framework (Caswell, 2022) -kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, - Ff = NULL, Fm = NULL, +#' @description Two-sex matrix framework for kin count estimates with varying rates. +#' This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. +#' For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. +#' @details See Caswell (2022) for details on formulas. +#' @param pf numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param ff numeric. Same as pf but for fertility rates. +#' @param fm numeric. Same as pm but for fertility rates. +#' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. +#' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param nf numeric. Same as pf but for population distribution (counts or `%`). Optional. +#' @param nm numeric. Same as pm but for population distribution (counts or `%`). Optional. +#' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. +#' @param output_period integer. Vector of period years for returning results. Should be within input data years range. +#' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... +#' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param stable logic. Deprecated. Use `time_invariant`. +#' @return A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age and sex. +#' @export + +kin_time_variant_2sex <- function(pf = NULL, pm = NULL, + ff = NULL, fm = NULL, sex_focal = "f", birth_female = 1/2.04, - Pif = NULL, Pim = NULL, - Nf = NULL, Nm = NULL, + pif = NULL, pim = NULL, + nf = NULL, nm = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, list_output = FALSE){ # same input length - if(!all(dim(Pf) == dim(Pm), dim(Pf) == dim(Ff), dim(Pf) == dim(Fm))) stop("Dimension of P's and F's should be the same") + if(!all(dim(pf) == dim(pm), dim(pf) == dim(ff), dim(pf) == dim(fm))) stop("Dimension of P's and F's should be the same") # data should be from same interval years - years_data <- as.integer(colnames(Pf)) + years_data <- as.integer(colnames(pf)) if(var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") # utils - age <- 0:(nrow(Pf)-1) + age <- 0:(nrow(pf)-1) n_years_data <- length(years_data) ages <- length(age) agess <- ages*2 @@ -25,17 +47,19 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, zeros <- matrix(0, nrow=ages, ncol=ages) # age distribution at childborn - if(is.null(Pif)){ - if(!is.null(Nf)){ - Pif <- rbind(t(t(Nf * Ff)/colSums(Nf * Ff)), matrix(0,ages,length(years_data))) + Pif <- pif + Pim <- pim + if(is.null(pif)){ + if(!is.null(nf)){ + Pif <- rbind(t(t(nf * ff)/colSums(nf * ff)), matrix(0,ages,length(years_data))) }else{ Pif <- matrix(0, nrow=ages, ncol=n_years_data) no_Pif <- TRUE } } - if(is.null(Pim)){ - if(!is.null(Nm)){ - Pim <- rbind(t(t(Nm * Fm)/colSums(Nm * Fm)), matrix(0,ages,length(years_data))) + if(is.null(pim)){ + if(!is.null(nm)){ + Pim <- rbind(t(t(nm * fm)/colSums(nm * fm)), matrix(0,ages,length(years_data))) }else{ Pim <- matrix(0, nrow=ages, ncol=n_years_data) no_Pim <- TRUE @@ -44,21 +68,25 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, # get lists of matrix Ul = Fl = Fl_star = list() + kin_all <- list() + pb <- progress::progress_bar$new( + format = "Running over input years [:bar] :percent", + total = n_years_data + 1, clear = FALSE, width = 60) for(t in 1:n_years_data){ # t = 1 Uf = Um = Fft = Fmt = Mm = Mf = Gt = zeros = matrix(0, nrow=ages, ncol=ages) - Uf[row(Uf)-1 == col(Uf)] <- Pf[-ages,t] - Uf[ages, ages] = Pf[ages,t] - Um[row(Um)-1 == col(Um)] <- Pm[-ages,t] - Um[ages, ages] = Pm[ages,t] - Mm <- diag(1-Pm[,t]) - Mf <- diag(1-Pf[,t]) + Uf[row(Uf)-1 == col(Uf)] <- pf[-ages,t] + Uf[ages, ages] = pf[ages,t] + Um[row(Um)-1 == col(Um)] <- pm[-ages,t] + Um[ages, ages] = pm[ages,t] + Mm <- diag(1-pm[,t]) + Mf <- diag(1-pf[,t]) Ut <- as.matrix(rbind( cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros, zeros)), cbind(Matrix::bdiag(Mf, Mm), Matrix::bdiag(zeros, zeros)))) Ul[[as.character(years_data[t])]] <- Ut - Fft[1,] = Ff[,t] - Fmt[1,] = Fm[,t] + Fft[1,] = ff[,t] + Fmt[1,] = fm[,t] Ft <- Ft_star <- matrix(0, agess*2, agess*2) Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Fft, birth_female * Fmt), cbind((1-birth_female) * Fft, (1-birth_female) * Fmt)) @@ -77,26 +105,18 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) Pim[,t] <- w*A[1,]/sum(w*A[1,]) } - } - - # loop over years (more performance here) - kin_all <- list() - pb <- progress::progress_bar$new( - format = "Running over input years [:bar] :percent", - total = n_years_data, clear = FALSE, width = 60) - for (iyear in 1:n_years_data){ - # iyear = 1 - Ut <- as.matrix(Ul[[iyear]]) - Ft <- as.matrix(Fl[[iyear]]) - Ft_star <- as.matrix(Fl_star[[iyear]]) - pitf <- Pif[,iyear] - pitm <- Pim[,iyear] + # project + Ut <- as.matrix(Ul[[t]]) + Ft <- as.matrix(Fl[[t]]) + Ft_star <- as.matrix(Fl_star[[t]]) + pitf <- Pif[,t] + pitm <- Pim[,t] pit <- c(pitf, pitm) - if (iyear==1){ - p1f <- Pf[,1] - p1m <- Pm[,1] - f1f <- Ff[,1] - f1m <- Fm[,1] + if (t==1){ + p1f <- pf[,1] + p1m <- pm[,1] + f1f <- ff[,1] + f1m <- fm[,1] pif1 <- Pif[,1] pim1 <- Pim[,1] kin_all[[1]] <- kin_time_invariant_2sex(pf = p1f, pm = p1m, @@ -104,7 +124,7 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, pif = pif1, pim = pim1, birth_female = birth_female, list_output = TRUE) } - kin_all[[iyear+1]] <- timevarying_kin_2sex(Ut=Ut, Ft=Ft, Ft_star=Ft_star, pit=pit, sex_focal, ages, pkin=kin_all[[iyear]]) + kin_all[[t+1]] <- timevarying_kin_2sex(Ut=Ut, Ft=Ft, Ft_star=Ft_star, pit=pit, sex_focal, ages, pkin=kin_all[[t]]) pb$tick() } @@ -125,30 +145,28 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, kin_list <- kin_all %>% purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% purrr::map(~ .[selected_kin_position]) - # long format - kin <- lapply(names(kin_list), function(Y){ + kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ - # browser() - as.data.frame(x) %>% - dplyr::mutate(year = Y, - kin=y, - sex = rep(c(rep("f",ages), rep("m",ages)),2), - age_kin = rep(age,4), - alive = c(rep("living",agess), rep("dead",agess)), - .before=everything()) - }) %>% - dplyr::bind_rows() %>% - stats::setNames(c("year","kin", "sex", "age_kin","alive",as.character(age))) %>% - tidyr::gather(age_focal, count,-age_kin, -kin, -year, -sex, -alive) %>% - dplyr::mutate(age_focal = as.integer(age_focal), - year = as.integer(year), - cohort = year - age_focal) %>% - dplyr::filter(age_focal %in% out_selected$age[out_selected$year==as.integer(Y)]) %>% - tidyr::pivot_wider(names_from = alive, values_from = count) - }) %>% - dplyr::bind_rows() + x <- as.data.frame(x) + x$year <- Y + x$kin <- y + x$sex_kin <- rep(c(rep("f",ages), rep("m",ages)),2) + x$age_kin <- rep(age,2) + x$alive <- c(rep("living",ages), rep("dead",ages)) + return(x) + }) %>% + data.table::rbindlist() %>% + stats::setNames(c(as.character(age), "year","kin","sex_kin","age_kin","alive")) %>% + data.table::melt(id.vars = c("year","kin","sex_kin","age_kin","alive"), variable.name = "age_focal", value.name = "count") + X$age_focal = as.integer(as.character(X$age_focal)) + X$year = as.integer(X$year) + X$cohort = X$year - X$age_focal + X <- X[X$age_focal %in% out_selected$age[out_selected$year==as.integer(Y)],] + X <- data.table::dcast(X, year + kin + sex_kin + age_kin + age_focal + cohort ~ alive, value.var = "count", fun.aggregate = sum) + }) %>% data.table::rbindlist() + pb$tick() # results as list? if(list_output) { @@ -156,7 +174,6 @@ kin_time_variant_2sex <- function(Pf = NULL, Pm = NULL, }else{ out <- kin } - return(out) } diff --git a/data/fra_asfr_sex.rda b/data/fra_asfr_sex.rda index 63188d388eb82c71a020c2674c246758335941c6..557249902db3e2f3da9aaf4ec4037085b3f7653c 100644 GIT binary patch literal 870 zcmV-s1DX6EiwFP!000002JKaiPt0K)|8=KM5p_b%2}365Wu$JBPg0k+lCE;O(t5c@ z*OlFQIkl8(hpW8AL`h1mt5Z&q)7$QbIhBk|Rw*v8vD1;T62D|N|A3dxXZ!B+c|Ol) z`##(AefIdebC;NL%?N^^5~Cg>Vo5_7o|q6q^>_7!sj|qTti- zdZPY8fR!^d0P5>GMctfF(CoA8%X7-DBis9M#y)m@u|3jSPcPT?n%yKUBoPm@8O`f-Bj>lhT=DeZkD z&qI!rN$Ql{gUGyQlRD?(703iW%6IXVNEvNP>GF$(MES5=^!XqJg4H}$vL4*%13XTc z4s5cks`@5eTVAt|Q9H1d`{8s}MJr}cI}#VCXamh7+$tuq?RVYJfBYSQjo)}_K+v&MRt? z?S@^*>&Zx_GLvxXS?u+Jt3x=hYN=iMQi&s(^aX~%r$}?5Y1aieL0VRB`a(Dx$y`HV z$k;R_(2|_I3mvfQxuqbgxD%pQu{C)_Y&SEP?>)~&RIS3B*{~P!Eri34i>j=iuMPFMkd-Vw;d8 wbFzkQ{s{jP8BIoFLWO)WsVDr%4UuK>U5{iak&!=@@W=kpH!SsnVEYCD0IAxuH~;_u literal 870 zcmV-s1DX6EiwFP!000002JKaiPt0K)|8-ZLB6LE{2}365Wu$JBPg0k+lCE;O(t7zd zx~}XloQzWKaLG$dNK$HDopOqt-gY<4>CMPwmE!UmI~@rt@$)j9f56M;vwipZJfG*Y zeV^_5K70H<`3o%hmIOi22~(O0K{ul$VHOy`oy{RAhgz5rri2B>BcjFOVbP>GAxuI_ z34%6~^6H7-1h}s_a5kx{9~-iw^d32m*gXEQdA3al5_9`(b?b_e>h4>h&;}wyrzlQ! zy^pNwW8>AllgN|OeA0aaQB>IeI+V*mX=9{u>EsZUi?)+Z6J)4VuA6&(NQ`Qll4RcY zM%}$28&`G^G}p2VyLlg=-R;nq>yZa-V*|0s+5y_qOX||Rwa_|_wR(H^1vJaY^_pi~ zL2YYc0%r>kRZD8>3>Ge^T-LDBQ-~-A$)*B)x$)QMlKSum{IP!0m^uAK$ zBHP70ZNj!eWL~vPn{nYXIU3fUUHAnJFt-d?o?KJE2d96l$fY&1H&uQCN8P%ciqo_{2hQ@z$jTz@_e|= zySd*Wki+}DlUe_#TKM<4owR3iu-;k!lC^9$HuYAVX36TXL*DHWD2>8i-<(fMHVc_~ zcl7h~Z{o!BC0{2N`JgN2r z%1$BF&r}BG_C=`V$bwh)8BuY@^O9TWai}`A&dhE8IJbsMWF z8V&veVoMznn=P#ryUy_uQ={}{*Y5&(Ct((UVhF;Mcs+j7 z0tnjH+BGx65b$~+J)X(Ms*zI$&PW{LI&)fV{b>UBUg`(Z$cKM=4*p&I^5@W_Hi;;* wqUx(ne&=5z!>CAHxQLWcdd!d95LKhU>F*g@bo5Up`msOs1@@prg8K#l06#9bq5uE@ diff --git a/man/fra_asfr_sex.Rd b/man/fra_asfr_sex.Rd new file mode 100644 index 0000000..dfda668 --- /dev/null +++ b/man/fra_asfr_sex.Rd @@ -0,0 +1,19 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/data.R +\docType{data} +\name{fra_asfr_sex} +\alias{fra_asfr_sex} +\title{Fertility for France (2012) by sex in Caswell (2022).} +\format{ +A data.frame with age specific fertility rates by age and sex. +} +\source{ +Caswell (2022) +} +\usage{ +fra_asfr_sex +} +\description{ +Fertility for France (2012) by sex in Caswell (2022). +} +\keyword{datasets} diff --git a/man/fra_surv_sex.Rd b/man/fra_surv_sex.Rd new file mode 100644 index 0000000..afa550f --- /dev/null +++ b/man/fra_surv_sex.Rd @@ -0,0 +1,19 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/data.R +\docType{data} +\name{fra_surv_sex} +\alias{fra_surv_sex} +\title{Survival probability for France (2012) by sex in Caswell (2022).} +\format{ +A data.frame with survival probabilities by age and sex. +} +\source{ +Caswell (2022) +} +\usage{ +fra_surv_sex +} +\description{ +Survival probability for France (2012) by sex in Caswell (2022). +} +\keyword{datasets} diff --git a/man/kin.Rd b/man/kin.Rd index bccb33e..036bdd9 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -2,47 +2,52 @@ % Please edit documentation in R/kin.R \name{kin} \alias{kin} -\title{Estimate kin counts} +\title{Estimate kin counts in a one-sex framework.} \usage{ kin( - U = NULL, + p = NULL, f = NULL, time_invariant = TRUE, - N = NULL, pi = NULL, + n = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, birth_female = 1/2.04, - stable = lifecycle::deprecated() + stable = lifecycle::deprecated(), + U = lifecycle::deprecated() ) } \arguments{ -\item{U}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} +\item{p}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class +in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} -\item{f}{numeric. Same as U but for fertility rates.} +\item{f}{numeric. Same as p but for fertility rates.} \item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} -\item{N}{numeric. Same as U but for population distribution (counts or \verb{\%}). Optional.} - \item{pi}{numeric. Same as U but for childbearing distribution (sum to 1). Optional.} +\item{n}{numeric. Same as p but for population distribution (counts or \verb{\%}). Optional.} + \item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} \item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} -\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, this needs to be set as 1.} +\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, +this needs to be set as 1.} \item{stable}{logic. Deprecated. Use \code{time_invariant}.} } \value{ A list with: \itemize{ -\item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age.} -\item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing \code{kin_full}, grouping by cohort or period (depending on the given arguments):} +\item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example \code{d} is daughter, +\code{oa} is older aunts, etc.), including living and dead kin at that age.} +\item{kin_summary}{ a data frame with Focal´s age, related ages and type of kin, with indicators obtained processing \code{kin_full}, +grouping by cohort or period (depending on the given arguments):} {\itemize{ \item{\code{count_living}}{: count of living kin at actual age of Focal} \item{\code{mean_age}}{: mean age of each type of living kin.} @@ -55,8 +60,19 @@ A list with: } } \description{ -Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. +Implementation of Goodman-Keyfitz-Pullum equations in a matrix framework. This produce a matrilineal (or patrilineal) +kin count distribution by kin and age. } \details{ See Caswell (2019) and Caswell (2021) for details on formulas. One sex only (female by default). } +\examples{ +\dontrun{ +# Kin expected matrilineal count for a Swedish female based on 2015 rates. +swe_surv_2015 <- swe_px[,"2015"] +swe_asfr_2015 <- swe_asfr[,"2015"] +# Run kinship models +swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015) +head(swe_2015) +} +} diff --git a/man/kin2sex.Rd b/man/kin2sex.Rd new file mode 100644 index 0000000..34bf7c1 --- /dev/null +++ b/man/kin2sex.Rd @@ -0,0 +1,86 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin2sex.R +\name{kin2sex} +\alias{kin2sex} +\title{Estimate kin counts in a two-sex framework} +\usage{ +kin2sex( + pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + time_invariant = TRUE, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, + pim = NULL, + nf = NULL, + nm = NULL, + output_cohort = NULL, + output_period = NULL, + output_kin = NULL +) +} +\arguments{ +\item{pf}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{pm}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{ff}{numeric. Same as pf but for fertility rates.} + +\item{fm}{numeric. Same as pm but for fertility rates.} + +\item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, this needs to be set as 1.} + +\item{pif}{numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default \code{NULL}.} + +\item{pim}{numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} + +\item{nf}{numeric. Same as pf but for population distribution (counts or \verb{\%}). Optional.} + +\item{nm}{numeric. Same as pm but for population distribution (counts or \verb{\%}). Optional.} + +\item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} + +\item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} + +\item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} + +\item{stable}{logic. Deprecated. Use \code{time_invariant}.} +} +\value{ +A list with: +\itemize{ +\item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age.} +\item{kin_summary}{ a data frame with Focal´s age, related ages, sex and type of kin, with indicators obtained processing \code{kin_full}, grouping by cohort or period (depending on the given arguments):} +{\itemize{ +\item{\code{count_living}}{: count of living kin at actual age of Focal} +\item{\code{mean_age}}{: mean age of each type of living kin.} +\item{\code{sd_age}}{: standard deviation of age of each type of living kin.} +\item{\code{count_death}}{: count of dead kin at specific age of Focal.} +\item{\code{count_cum_death}}{: cumulated count of dead kin until specific age of Focal.} +\item{\code{mean_age_lost}}{: mean age where Focal lost her relative.} +} +} +} +} +\description{ +Implementation of two-sex matrix kinship model. This produces kin counts grouped by kin, age and sex of +each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +are grouped in one male count of cousins. +} +\details{ +See Caswell (2022) for details on formulas. +} +\examples{ +\dontrun{ +# Kin expected count by relative sex for a French female based on 2012 rates. +fra_2012 <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m) +head(fra_2012) +} + +} diff --git a/man/kin_time_invariant.Rd b/man/kin_time_invariant.Rd index a470503..d04e243 100644 --- a/man/kin_time_invariant.Rd +++ b/man/kin_time_invariant.Rd @@ -2,10 +2,10 @@ % Please edit documentation in R/kin_time_invariant.R \name{kin_time_invariant} \alias{kin_time_invariant} -\title{Estimate kin counts in a time invariant framework} +\title{Estimate kin counts in a time invariant framework for one-sex model (matrilineal/patrilineal)} \usage{ kin_time_invariant( - U = NULL, + p = NULL, f = NULL, birth_female = 1/2.04, pi = NULL, @@ -14,7 +14,7 @@ kin_time_invariant( ) } \arguments{ -\item{U}{numeric. A vector of survival probabilities with same length as ages.} +\item{p}{numeric. A vector of survival probabilities with same length as ages.} \item{f}{numeric. A vector of age-specific fertility rates with same length as ages.} @@ -22,7 +22,7 @@ kin_time_invariant( \item{pi}{numeric. For using some specific non-stable age distribution of childbearing (same length as ages). Default \code{NULL}.} -\item{output_kin}{character. kin to return. For example "m" for mother, "d" for daughter. See the \code{vignette} for all kin types.} +\item{output_kin}{character. kin to return. For example "m" for mother, "d" for daughter. See \code{vignette} for all kin types.} \item{list_output}{logical. Results as a list with \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} } @@ -31,5 +31,5 @@ A data frame with focal´s age, related ages and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), alive and death. If \code{list_output = TRUE} then this is a list. } \description{ -Implementation of Goodman-Keyfitz-Pullum equations adapted by Caswell (2019). +Mtrix implementation of Goodman-Keyfitz-Pullum equations adapted by Caswell (2019). } diff --git a/man/kin_time_invariant_2sex.Rd b/man/kin_time_invariant_2sex.Rd new file mode 100644 index 0000000..550a331 --- /dev/null +++ b/man/kin_time_invariant_2sex.Rd @@ -0,0 +1,52 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_invariant_2sex.R +\name{kin_time_invariant_2sex} +\alias{kin_time_invariant_2sex} +\title{Estimate kin counts in a time invariant framework for two-sex model.} +\usage{ +kin_time_invariant_2sex( + pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, + pim = NULL, + output_kin = NULL, + list_output = FALSE +) +} +\arguments{ +\item{pf}{numeric. A vector of survival probabilities for females with same length as ages.} + +\item{pm}{numeric. A vector of survival probabilities for males with same length as ages.} + +\item{ff}{numeric. A vector of age-specific fertility rates for females with same length as ages.} + +\item{fm}{numeric. A vector of age-specific fertility rates for males with same length as ages.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{birth_female}{numeric. Female portion at birth.} + +\item{pif}{numeric. For using some specific non-stable age distribution of childbearing for mothers (same length as ages). Default \code{NULL}.} + +\item{pim}{numeric. For using some specific non-stable age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} + +\item{output_kin}{character. kin to return, considering matrilineal names. For example "m" for parents, "d" for children, etc. See the \code{vignette} for all kin types.} + +\item{list_output}{logical. Results as a list with \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} +} +\value{ +A data frame with focal´s age, related ages and type of kin +(for example \code{d} is children, \code{oa} is older aunts/uncles, etc.), sex, alive and death. If \code{list_output = TRUE} then this is a list. +} +\description{ +Two-sex matrix framework for kin count estimates.This produces kin counts grouped by kin, age and sex of +each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +are grouped in one male count of cousins. +} +\details{ +See Caswell (2022) for details on formulas. +} diff --git a/man/kin_time_variant.Rd b/man/kin_time_variant.Rd index da16ad7..17c1f85 100644 --- a/man/kin_time_variant.Rd +++ b/man/kin_time_variant.Rd @@ -2,13 +2,13 @@ % Please edit documentation in R/kin_time_variant.R \name{kin_time_variant} \alias{kin_time_variant} -\title{Estimate kin counts in a time variant framework} +\title{Estimate kin counts in a time variant framework (dynamic rates) for one-sex model (matrilineal/patrilineal)} \usage{ kin_time_variant( - U = NULL, + p = NULL, f = NULL, - N = NULL, pi = NULL, + n = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, @@ -17,12 +17,10 @@ kin_time_variant( ) } \arguments{ -\item{U}{numeric. A matrix of survival ratios with rows as ages and columns as years. Column names must be equal interval.} +\item{p}{numeric. A matrix of survival ratios with rows as ages and columns as years. Column names must be equal interval.} \item{f}{numeric. A matrix of age-specific fertility rates with rows as ages and columns as years. Coincident with \code{U}.} -\item{N}{numeric. A matrix of population with rows as ages and columns as years. Coincident with \code{U}.} - \item{pi}{numeric. A matrix with distribution of childbearing with rows as ages and columns as years. Coincident with \code{U}.} \item{output_cohort}{integer. Year of birth of focal to return as output. Could be a vector. Should be within input data years range.} @@ -34,11 +32,16 @@ kin_time_variant( \item{birth_female}{numeric. Female portion at birth.} \item{list_output}{logical. Results as a list with years elements (as a result of \code{output_cohort} and \code{output_period} combination), with a second list of \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} + +\item{N}{numeric. A matrix of population with rows as ages and columns as years. Coincident with \code{U}.} } \value{ A data frame of population kinship structure, with focal's cohort, focal´s age, period year, type of relatives (for example \code{d} is daughter, \code{oa} is older aunts, etc.), living and death kin counts, and age of (living or time deceased) relatives. If \code{list_output = TRUE} then this is a list. } \description{ -Implementation of time variant Goodman-Keyfitz-Pullum equations based on Caswell (2021). +Matrix implementation of time variant Goodman-Keyfitz-Pullum equations in a matrix framework. +} +\details{ +See Caswell (2021) for details on formulas. } diff --git a/man/kin_time_variant_2sex.Rd b/man/kin_time_variant_2sex.Rd new file mode 100644 index 0000000..bcb3ca9 --- /dev/null +++ b/man/kin_time_variant_2sex.Rd @@ -0,0 +1,65 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_variant_2sex.R +\name{kin_time_variant_2sex} +\alias{kin_time_variant_2sex} +\title{Estimate kin counts in a time variant framework (dynamic rates) in a two-sex framework (Caswell, 2022)} +\usage{ +kin_time_variant_2sex( + pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, + pim = NULL, + nf = NULL, + nm = NULL, + output_cohort = NULL, + output_period = NULL, + output_kin = NULL, + list_output = FALSE +) +} +\arguments{ +\item{pf}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{pm}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{ff}{numeric. Same as pf but for fertility rates.} + +\item{fm}{numeric. Same as pm but for fertility rates.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, this needs to be set as 1.} + +\item{pif}{numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default \code{NULL}.} + +\item{pim}{numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} + +\item{nf}{numeric. Same as pf but for population distribution (counts or \verb{\%}). Optional.} + +\item{nm}{numeric. Same as pm but for population distribution (counts or \verb{\%}). Optional.} + +\item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} + +\item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} + +\item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} + +\item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} + +\item{stable}{logic. Deprecated. Use \code{time_invariant}.} +} +\value{ +A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age and sex. +} +\description{ +Two-sex matrix framework for kin count estimates with varying rates. +This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. +For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. +} +\details{ +See Caswell (2022) for details on formulas. +} diff --git a/man/output_period_cohort_combination.Rd b/man/output_period_cohort_combination.Rd index 5b20baf..e53a40c 100644 --- a/man/output_period_cohort_combination.Rd +++ b/man/output_period_cohort_combination.Rd @@ -1,9 +1,16 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/kin_time_variant.R +% Please edit documentation in R/kin_time_variant.R, R/kin_time_variant_2sex.R \name{output_period_cohort_combination} \alias{output_period_cohort_combination} \title{defince apc combination to return} \usage{ +output_period_cohort_combination( + output_cohort = NULL, + output_period = NULL, + age = NULL, + years_data = NULL +) + output_period_cohort_combination( output_cohort = NULL, output_period = NULL, @@ -12,5 +19,7 @@ output_period_cohort_combination( ) } \description{ +defince apc to return. + defince apc to return. } diff --git a/man/timevarying_kin_2sex.Rd b/man/timevarying_kin_2sex.Rd new file mode 100644 index 0000000..e2ad4ac --- /dev/null +++ b/man/timevarying_kin_2sex.Rd @@ -0,0 +1,22 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_variant_2sex.R +\name{timevarying_kin_2sex} +\alias{timevarying_kin_2sex} +\title{one time projection kin} +\usage{ +timevarying_kin_2sex(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin) +} +\arguments{ +\item{Ut}{numeric. A matrix of survival probabilities (or ratios).} + +\item{pit}{numeric. A matrix with distribution of childbearing.} + +\item{ages}{numeric.} + +\item{pkin}{numeric. A list with kin count distribution in previous year.} + +\item{ft}{numeric. A matrix of age-specific fertility rates.} +} +\description{ +one time projection kin. internal function. +} diff --git a/vignettes/Reference.Rmd b/vignettes/Reference.Rmd index 33560b2..cd1bee3 100644 --- a/vignettes/Reference.Rmd +++ b/vignettes/Reference.Rmd @@ -5,7 +5,7 @@ output: toc: true toc_depth: 1 vignette: > - %\VignetteIndexEntry{Use} + %\VignetteIndexEntry{Reference} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- @@ -21,10 +21,11 @@ Here, we'll show how `DemoKin` can be used to compute the number and age distrib First, we compute kin counts in a **time-invariant** framework. We assume that Focal and all of her relatives experience the 2015 mortality and fertility rates throughout their entire lives (Caswell, 2019). The `DemoKin` package includes data from Sweden as an example: age-by-year matrices of survival probabilities (*swe_px*), survival ratios (*swe_Sx*), fertility rates (*swe_asfr*), and population numbers (*swe_pop*). You can see the data contained in `DemoKin` with `data(package="DemoKin")`. This data comes from the [Human Mortality Database](https://www.mortality.org/) and [Human Fertility Database](https://www.humanfertility.org/) (see `?DemoKin::get_HMDHFD`). -In order to implement the time-invariant models, the function `DemoKin::kin` expects a vector of sruvival ratios and another vector of fertility rates. In this example, we get the data for the year 2015, and run the matrix models: +In order to implement the time-invariant models, the function `DemoKin::kin` expects a vector of survival ratios and another vector of fertility rates. In this example, we get the data for the year 2015, and run the matrix models: ```{r, message=FALSE, warning=FALSE} -library(DemoKin) +library(devtools) +load_all() library(tidyr) library(dplyr) library(ggplot2) @@ -33,7 +34,7 @@ library(knitr) swe_surv_2015 <- swe_px[,"2015"] swe_asfr_2015 <- swe_asfr[,"2015"] # Run kinship models -swe_2015 <- kin(U = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) +swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) ``` ### 1.1. Value @@ -135,9 +136,9 @@ Let's take a look at the resulting kin counts for a Focal born in 1960, limiting ```{r, fig.height=6, fig.width=8} swe_time_varying <- kin( - U = swe_px, + p = swe_px, f = swe_asfr, - N = swe_pop, + n = swe_pop, time_invariant =FALSE, output_cohort = 1960, output_kin = c("d","gd","ggd","m","gm","ggm") @@ -240,7 +241,7 @@ demokin_svk1980_caswell2020 <- ) ``` -As an example, consider the age-parity distribution of aunts, when Focal is 20 and 60 yo (this is equivalent to Figure 4 in Caswell [2021]). +Note that the function ask for risks already in a certain matrix format. As an example, consider the age-parity distribution of aunts, when Focal is 20 and 60 yo (this is equivalent to Figure 4 in Caswell [2021]). ```{r, message=FALSE, warning=FALSE, fig.height=6, fig.width=10} demokin_svk1980_caswell2020 %>% diff --git a/vignettes/TwoSex.Rmd b/vignettes/TwoSex.Rmd index 3245293..01ed3c0 100644 --- a/vignettes/TwoSex.Rmd +++ b/vignettes/TwoSex.Rmd @@ -1,11 +1,11 @@ --- -title: "TwoExpected kin counts by type of relative: A matrix implementation" +title: "Two-Sex expected kin counts by type of relative: A matrix implementation" output: html_document: toc: true toc_depth: 1 vignette: > - %\VignetteIndexEntry{Use} + %\VignetteIndexEntry{TwoSex} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- @@ -17,12 +17,13 @@ knitr::opts_chunk$set(collapse = TRUE, comment = "#>") Age distribution of Focal´s father when she born depends on male fertility pattern. Living siblings depends on sex composition (brothers and sisters) due to differential mortality risk. Intensity in care tasks is not the same between sex in many societies, so the sex of ego and his/her "sandwichness" change, because an average family network expects different roles in supporting. For these reasons, and many others, sex specific kin count estimates are important. Here we implement relations in Caswell (2022), not focusing in applications that can be analogous to the one-sex model, but in the specific advantages. ```{r, message=FALSE, warning=FALSE} -library(DemoKin) +# library(DemoKin) +library(devtools) +load_all() library(tidyr) library(dplyr) library(ggplot2) library(knitr) -devtools::load_all() ``` ### 1.1. Rates by sex @@ -30,8 +31,8 @@ devtools::load_all() Female fertility by age is not a widespread available data source. Caswell (2022) takes Schoumaker (2019) makes available estimates for 160 countries, reporting that male TFR almost always exceeds female TFR. We take the case of France in 2012 for showing how functions works (fertility and mortality data are available with the package, with column-sex values). Let´s see main differences in age distribution (TFR of 1.98 and 1.99 for males and females, practically the same) ```{r} -fra_fert_f <- fra_fert_sex[,"ff"] -fra_fert_m <- fra_fert_sex[,"fm"] +fra_fert_f <- fra_asfr_sex[,"ff"] +fra_fert_m <- fra_asfr_sex[,"fm"] fra_surv_f <- fra_surv_sex[,"pf"] fra_surv_m <- fra_surv_sex[,"pm"] sum(fra_fert_m)-sum(fra_fert_f) @@ -59,9 +60,9 @@ kin_out <- kin_out$kin_summary %>% T ~ kin)) %>% filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) kin_out %>% - group_by(kin, age_focal, sex) %>% + group_by(kin, age_focal, sex_kin) %>% summarise(count=sum(count_living)) %>% - ggplot(aes(age_focal, count, fill=sex))+ + ggplot(aes(age_focal, count, fill=sex_kin))+ geom_area()+ theme_bw() + facet_wrap(~kin) @@ -72,7 +73,7 @@ Kin availability by sex allows to inspect its distribution, a traditional measur ```{r} kin_out %>% group_by(kin, age_focal) %>% - summarise(sex_ratio=sum(count_living[sex=="m"], na.rm=T)/sum(count_living[sex=="f"], na.rm=T)) %>% + summarise(sex_ratio=sum(count_living[sex_kin=="m"], na.rm=T)/sum(count_living[sex_kin=="f"], na.rm=T)) %>% ggplot(aes(age_focal, sex_ratio))+ geom_line()+ theme_bw() + @@ -84,9 +85,9 @@ How ego experiences relative deaths depends mainly on how wide is the sex-gap in ```{r} # sex ratio kin_out %>% - group_by(kin, sex, age_focal) %>% + group_by(kin, sex_kin, age_focal) %>% summarise(count=sum(count_dead)) %>% - ggplot(aes(age_focal, count, col=sex))+ + ggplot(aes(age_focal, count, col=sex_kin))+ geom_line()+ theme_bw() + facet_wrap(~kin) @@ -102,13 +103,13 @@ kin_out_androgynous <- kin2sex(fra_surv_f, fra_surv_f, fra_fert_f, fra_fert_f, s bind_rows( kin_out$kin_summary %>% mutate(type = "full"), kin_out_androgynous$kin_summary %>% mutate(type = "androgynous")) %>% - group_by(kin, age_focal, sex, type) %>% + group_by(kin, age_focal, sex_kin, type) %>% summarise(count = sum(count_living)) %>% ggplot(aes(age_focal, count, linetype = type)) + geom_line() + theme_bw() + theme(legend.position = "bottom", axis.text.x = element_blank()) + - facet_grid(row = vars(sex), col = vars(kin), scales = "free") + facet_grid(row = vars(sex_kin), col = vars(kin), scales = "free") ``` Now we can multiply results from 1-sex model by the GKP factors by kin, to obtain a simple but very consistent approximation of totals (both sex) at different ages of Focal. @@ -189,11 +190,11 @@ kin_out_time_variant$kin_summary %>% kin %in% c("ya", "oa") ~ "a", T ~ kin)) %>% filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) %>% - group_by(type, kin, age_focal, sex) %>% + group_by(type, kin, age_focal, sex_kin) %>% summarise(count=sum(count_living)) %>% ggplot(aes(age_focal, count, linetype=type))+ geom_line()+ theme_bw() + - facet_grid(cols = vars(kin), rows=vars(sex), scales = "free") + facet_grid(cols = vars(kin), rows=vars(sex_kin), scales = "free") ``` From 9deb29bbb7029d465858b9d11397e38cbadce8ce Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Sat, 4 Feb 2023 10:21:51 -0300 Subject: [PATCH 08/37] pre load cran --- DESCRIPTION | 7 +- NAMESPACE | 1 - R/kin.R | 1 + R/kin2sex.R | 11 +- R/kin_time_variant.R | 2 +- R/kin_time_variant_2sex.R | 11 +- README.Rmd | 23 +- README.md | 28 +- dev/PENDS.txt | 7 - vignettes/TwoSex.Rmd => dev/TwoSex_mine.Rmd | 0 dev/calling_kinship_SVK_4867.m | 86 ---- {R => dev}/get_HMDHFD.R | 0 dev/kinship_function_parity_4867.m | 199 -------- dev/matrix_construction_4867.m | 102 ---- dev/readme.txt | 0 dev/tests/repl_caswell.R | 443 ------------------ dev/tests/repl_caswell_first_year.R | 106 ----- dev/tests/timevarying_kin.m | 180 ------- .../figures/DemoKin-Logo.png | Bin man/get_HMDHFD.Rd | 41 -- man/kin.Rd | 2 + man/kin2sex.Rd | 12 +- man/kin_time_variant.Rd | 4 +- man/kin_time_variant_2sex.Rd | 4 +- man/output_period_cohort_combination.Rd | 2 +- man/timevarying_kin_2sex.Rd | 9 +- .../{Reference.Rmd => Reference_OneSex.Rmd} | 10 +- vignettes/Reference_TwoSex.Rmd | 271 +++++++++++ 28 files changed, 334 insertions(+), 1228 deletions(-) delete mode 100644 dev/PENDS.txt rename vignettes/TwoSex.Rmd => dev/TwoSex_mine.Rmd (100%) delete mode 100644 dev/calling_kinship_SVK_4867.m rename {R => dev}/get_HMDHFD.R (100%) delete mode 100644 dev/kinship_function_parity_4867.m delete mode 100644 dev/matrix_construction_4867.m delete mode 100644 dev/readme.txt delete mode 100644 dev/tests/repl_caswell.R delete mode 100644 dev/tests/repl_caswell_first_year.R delete mode 100644 dev/tests/timevarying_kin.m rename DemoKin-Logo.png => man/figures/DemoKin-Logo.png (100%) delete mode 100644 man/get_HMDHFD.Rd rename vignettes/{Reference.Rmd => Reference_OneSex.Rmd} (98%) create mode 100644 vignettes/Reference_TwoSex.Rmd diff --git a/DESCRIPTION b/DESCRIPTION index 2e5402c..4834c36 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,8 @@ Package: DemoKin -Title: Demokin -Description: Estimate population kin counts and its distribution by type and age +Title: Estimate population kin counts. +Description: Estimate population kin counts and its distribution by type, age and sex. + The package implements one-sex and two-sex framework for studying living-death availability, + with time varying rates or not, and multi-stage model. Version: 1.0.0 Authors@R: c( person("Iván", "Williams", email = "act.ivanwilliams@gmail.com", role = "cre"), @@ -31,6 +33,7 @@ Imports: magrittr, data.table, lifecycle +URL: https://github.com/IvanWilli/DemoKin BugReports: https://github.com/IvanWilli/DemoKin/issues Depends: R (>= 2.10) diff --git a/NAMESPACE b/NAMESPACE index 5502931..2d84ee7 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -2,7 +2,6 @@ export("%>%") export(demokin_codes) -export(get_HMDHFD) export(kin) export(kin2sex) export(kin_multi_stage) diff --git a/R/kin.R b/R/kin.R index 866f1c9..cdc27d7 100644 --- a/R/kin.R +++ b/R/kin.R @@ -15,6 +15,7 @@ #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, #' this needs to be set as 1. #' @param stable logic. Deprecated. Use `time_invariant`. +#' @param U logic. Deprecated. Use `p`. #' @return A list with: #' \itemize{ #' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, diff --git a/R/kin2sex.R b/R/kin2sex.R index aa46eba..a9b2aa3 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -2,10 +2,11 @@ #' @description Implementation of two-sex matrix kinship model. This produces kin counts grouped by kin, age and sex of #' each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents -#' are grouped in one male count of cousins. +#' are grouped in one male count of cousins. Note that the output labels relative following female notation: the label `m` +#' refers to either mothers or fathers, and column `sex_kin` determine the sex of the relative. #' @details See Caswell (2022) for details on formulas. -#' @param pf numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). -#' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param pf numeric. A vector (atomic) or matrix with female probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param pm numeric. A vector (atomic) or matrix with male probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). #' @param ff numeric. Same as pf but for fertility rates. #' @param fm numeric. Same as pm but for fertility rates. #' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. @@ -18,10 +19,10 @@ #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. -#' @param stable logic. Deprecated. Use `time_invariant`. #' @return A list with: #' \itemize{ -#' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age.} +#' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` could be daughter or son depending `sex_kin`, +#' `oa` is older aunts or uncles also depending `sex_kin` value, etc.), including living and dead kin at that age.} #' \item{kin_summary}{ a data frame with Focal´s age, related ages, sex and type of kin, with indicators obtained processing `kin_full`, grouping by cohort or period (depending on the given arguments):} #' {\itemize{ #' \item{`count_living`}{: count of living kin at actual age of Focal} diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index c73f1ec..f9e9383 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -4,7 +4,7 @@ #' @details See Caswell (2021) for details on formulas. #' @param p numeric. A matrix of survival ratios with rows as ages and columns as years. Column names must be equal interval. #' @param f numeric. A matrix of age-specific fertility rates with rows as ages and columns as years. Coincident with `U`. -#' @param N numeric. A matrix of population with rows as ages and columns as years. Coincident with `U`. +#' @param n numeric. A matrix of population with rows as ages and columns as years. Coincident with `U`. #' @param pi numeric. A matrix with distribution of childbearing with rows as ages and columns as years. Coincident with `U`. #' @param output_cohort integer. Year of birth of focal to return as output. Could be a vector. Should be within input data years range. #' @param output_period integer. Year for which to return kinship structure. Could be a vector. Should be within input data years range. diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index 0ffe306..89efe85 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -8,7 +8,6 @@ #' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). #' @param ff numeric. Same as pf but for fertility rates. #' @param fm numeric. Same as pm but for fertility rates. -#' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. #' @param sex_focal character. "f" for female or "m" for male. #' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. #' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. @@ -18,7 +17,7 @@ #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. -#' @param stable logic. Deprecated. Use `time_invariant`. +#' @param list_output logical. Results as a list with years elements (as a result of `output_cohort` and `output_period` combination), with a second list of `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` #' @return A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age and sex. #' @export @@ -182,8 +181,10 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, #' @description one time projection kin. internal function. #' #' @param Ut numeric. A matrix of survival probabilities (or ratios). -#' @param ft numeric. A matrix of age-specific fertility rates. +#' @param Ft numeric. A matrix of age-specific fertility rates. +#' @param Ft_star numeric. Ft but for female fertility. #' @param pit numeric. A matrix with distribution of childbearing. +#' sex_focal #' @param ages numeric. #' @param pkin numeric. A list with kin count distribution in previous year. # @@ -243,9 +244,9 @@ timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ return(kin_list) } -#' defince apc combination to return +#' APC combination to return -#' @description defince apc to return. +#' @description define apc combination to return in `kin` and `kin2sex`. #' output_period_cohort_combination <- function(output_cohort = NULL, output_period = NULL, age = NULL, years_data = NULL){ diff --git a/README.Rmd b/README.Rmd index 5eb0592..d2426f1 100644 --- a/README.Rmd +++ b/README.Rmd @@ -2,8 +2,6 @@ output: github_document --- - - ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, @@ -23,12 +21,12 @@ library(knitr) ::: {.column width="60%"} -`DemoKin` uses matrix demographic methods to compute expected (average) kin counts from demographic rates under a range of scenarios and assumptions. The package is an R-language implementation of Caswell (2019), Caswell (2020), and Caswell and Song (2021). It draws on previous theoretical development by Goodman, Keyfitz and Pullum (1974). +`DemoKin` uses matrix demographic methods to compute expected (average) kin counts from demographic rates under a range of scenarios and assumptions. The package is an R-language implementation of Caswell (2019, 2020, 2022), and Caswell and Song (2021). It draws on previous theoretical development by Goodman, Keyfitz and Pullum (1974). ::: ::: {.column width="40%"} - + ::: :::::::::::::: @@ -52,14 +50,14 @@ We then ask: Let's explore this using the Swedish data already included with `DemoKin`. -```{r, fig.height=6, fig.width=8} +```{r, fig.height=6, fig.width=8, message=FALSE, warning=FALSE} library(DemoKin) swe_surv_2015 <- swe_px[,"2015"] swe_asfr_2015 <- swe_asfr[,"2015"] -swe_2015 <- kin(U = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) +swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) ``` -*px* is the survival probability by age from a life table and *f* are the age specific fertility raties by age (see `?kin` for details). +*p* is the survival probability by age from a life table and *f* are the age specific fertility raties by age (see `?kin` for details). Now, we can visualize the implied kin counts (i.e., the average number of living kin) of Focal at age 35 using a network or 'Keyfitz' kinship diagram with the function `plot_diagram`: @@ -80,7 +78,7 @@ kable(DemoKin::demokin_codes()[-2]) ## Vignette -For more details, including an extension to time varying-populations rates, deceased kin, and multi-state models, see `vignette("Reference", package = "DemoKin")`. +For more details, including an extension to time varying-populations rates, deceased kin, and multi-state models in a one-sex framework, see `vignette("Reference_OneSex", package = "DemoKin")`. For the case of two-sex see `vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. ## Citation @@ -105,11 +103,6 @@ Caswell, H. 2020. The formal demography of kinship II: Multistate models, parity Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic Research 45: 517–46. doi:10.4054/DemRes.2021.45.16. -Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. doi:10.1016/0040-5809(74)90049-5. - - - - - - +Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. +Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. doi:10.1016/0040-5809(74)90049-5. diff --git a/README.md b/README.md index 0142d8b..a8badbf 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ - - # DemoKin
@@ -10,14 +8,14 @@ `DemoKin` uses matrix demographic methods to compute expected (average) kin counts from demographic rates under a range of scenarios and assumptions. The package is an R-language implementation of Caswell -(2019), Caswell (2020), and Caswell and Song (2021). It draws on -previous theoretical development by Goodman, Keyfitz and Pullum (1974). +(2019, 2020, 2022), and Caswell and Song (2021). It draws on previous +theoretical development by Goodman, Keyfitz and Pullum (1974).
- +
@@ -50,11 +48,11 @@ Let’s explore this using the Swedish data already included with library(DemoKin) swe_surv_2015 <- swe_px[,"2015"] swe_asfr_2015 <- swe_asfr[,"2015"] -swe_2015 <- kin(U = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) +swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) ``` -*px* is the survival probability by age from a life table and *f* are -the age specific fertility raties by age (see `?kin` for details). +*p* is the survival probability by age from a life table and *f* are the +age specific fertility raties by age (see `?kin` for details). Now, we can visualize the implied kin counts (i.e., the average number of living kin) of Focal at age 35 using a network or ‘Keyfitz’ kinship @@ -93,9 +91,10 @@ Relatives are identified by a unique code: ## Vignette For more details, including an extension to time varying-populations -rates, deceased kin, and multi-state models, see -`vignette("Reference", package = "DemoKin")`. If the vignette does not -load, you may need to install the package as +rates, deceased kin, and multi-state models in a one-sex framework, see +`vignette("Reference_OneSex", package = "DemoKin")`. For the case of +two-sex see `vignette("Reference_TwoSex", package = "DemoKin")`. If the +vignette does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. ## Citation @@ -134,10 +133,9 @@ Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic Research 45: 517–46. . +Caswell, H. (2022). The formal demography of kinship IV: Two-sex models +and their approximations. Demographic Research, 47, 359–396. + Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. . - - - - diff --git a/dev/PENDS.txt b/dev/PENDS.txt deleted file mode 100644 index ecbf143..0000000 --- a/dev/PENDS.txt +++ /dev/null @@ -1,7 +0,0 @@ -1) Set no specific argument for Pb: in the case the user wants to use it, that can be included by her/himself in the F matrix, implicitly. - ok -1.1) caswell´s assumption stable: ft[1,1:ages] = f * U * birth_female -2) Include a paragraph in the "using" vignette to show this option. -3) Non-stable without pi or N as argument: give user an output anyways and a message "A stable assumption was used for the age distribution of the mother in each input year". -4) Replicate Hal´s output for dinamycs. -5) Correct the appendix: survival/probabilities. -6) Finish Multi-stage. \ No newline at end of file diff --git a/vignettes/TwoSex.Rmd b/dev/TwoSex_mine.Rmd similarity index 100% rename from vignettes/TwoSex.Rmd rename to dev/TwoSex_mine.Rmd diff --git a/dev/calling_kinship_SVK_4867.m b/dev/calling_kinship_SVK_4867.m deleted file mode 100644 index f51c641..0000000 --- a/dev/calling_kinship_SVK_4867.m +++ /dev/null @@ -1,86 +0,0 @@ -%script to calculate kinship results -%this script calls the function kinship_function_parity_4867 -%requires the function vecperm.m to create vec-permutation matrix -% -% Supplement to: -% Caswell, H. 2020. The formal demography of kinship II. Multistate models, -% parity, and sibship. Demographic Research 42:1097-1144 -% -% Has been successfully used under Matlab R2018b - -%specify range of years to analyze -years=1960:2014; - -%years=2002; - -numyears=length(years); %specific to SVK data -%add path to location of matrices -addpath('SVK_kinmats/') - -for iy=1:numyears - year=years(iy) - - %specify name of matrix file - fname=char(['SVKmats' num2str(1950+iy-1) '.mat']); - %load matrix file - load(fname) - - %create the block diagonal matrices - - %identity matrices that are useful - Iom=eye(om); - Is=eye(s); - - bbU=zeros(s*om); - bbF=zeros(s*om); - for i=1:om - bbU = bbU + kron(Iom(:,i)*Iom(i,:),U{i}); - bbF = bbF + kron(Iom(:,i)*Iom(i,:),F{i}); - end - bbD=zeros(s*om); - bbH=zeros(s*om); - for i=1:s - bbD = bbD+kron(Is(:,i)*Is(i,:),D{i}); - bbH = bbH+kron(Is(:,i)*Is(i,:),H{i}); - end - - %create the age-stage matrices using the vec permuation formula - K=vecperm(s,om); - Ut= K'*bbD*K*bbU; - Ft= K'*bbH*K*bbF; - - %conditional transition matrix, conditional on survival - Gt=Ut*pinv(diag(sum(Ut))); - - %calculate distributions of mothers - %projection matrix Atilde - At=Ut+Ft; - %eigenvalues and right eigenvectors - [wt,d]=eig(At); - d=diag(d); - %find maximum eigenvalue - pick=find(d==max(d)); - wt=wt(:,pick); - %stable age-parity distribution normalized to sum to 1 - wt=wt/sum(wt); - lambda=d(pick) - - %age-stage distribution of mothers - pit=Ft(1,:)'.*wt; - pit=pit/sum(pit); - %marginal age distribution of mothers - piage=kron(Iom,ones(s,1)')*pit; - - clear At - - %add path to call the kinship program - path('../',path) - - %call the kinship function - kinout=kinship_function_parity(Ut,Ft,Gt,wt,pit,piage); - - %save the kin output - %include path to output folder - myname=char(['SVK_kinout/SVKkinout' num2str(years(iy)) '.mat']) - save(myname,'kinout') -end diff --git a/R/get_HMDHFD.R b/dev/get_HMDHFD.R similarity index 100% rename from R/get_HMDHFD.R rename to dev/get_HMDHFD.R diff --git a/dev/kinship_function_parity_4867.m b/dev/kinship_function_parity_4867.m deleted file mode 100644 index 897bcdb..0000000 --- a/dev/kinship_function_parity_4867.m +++ /dev/null @@ -1,199 +0,0 @@ -function out=kinship_function_parity(Ut,Ft,Gt,wt,pit,piage) -% -%function to compute kinship network for multistate age x parity model -% Supplement to: -% Caswell, H. 2020. The formal demography of kinship II. Multistate models, -% parity, and sibship. Demographic Research 42:1097-1144 -% -% Has been successfully used under Matlab R2018b -% -% -%inputs -% Ut=age-stage transition matrix -% Ft = age-stage fertility matrix -% Gt=age-stage transition matrix conditional on survival -% wt=stable age-stage distribution, normalized to sum to 1 -% pit=age-stage distribution of mothers -% piage = marginal age distribution of mothers - - -%number of age classes -om=length(piage); -%number of stages -s=length(pit)/om; - -%identity matrices useful in calculations -Iom=eye(om); -Is=eye(s); -Isom=eye(s*om); - -%frequently used zero vector for initial condition -zvec=zeros(s*om,1); - -%frequently used om-1 limit for iterations -omz=om-1; - -% the following code calculates age-stage distributions, -% for each type of kin, for each age x of Focal, -% and stores these as columns of an array -% e.g., a(x) = daughters at age x; A(:,x) contains a(x) - -% dynamics of Focal -% initial condition -phiz=zeros(s*om,1); -phiz(1)=1; -%age-stage vector of Focal, conditional on survival -Phi(:,1)=phiz; -for ix=1:omz - Phi(:,ix+1)=Gt*Phi(:,ix); -end - -% a: daughters of focal - -az=zvec; -A(:,1)=az; -for ix=1:omz - A(:,ix+1)=Ut*A(:,ix) + Ft*Phi(:,ix); -end % for ix - - -% b = granddaughters of Focal -b=zvec; -B(:,1)=b; -for ix=1:omz - B(:,ix+1)=Ut*B(:,ix) + Ft*A(:,ix); -end - - -% c = greatgranddaughters of Focal -c=zvec; -C(:,1)=c; -for ix=1:omz - C(:,ix+1)=Ut*C(:,ix) +Ft*B(:,ix); -end - - -% d = mothers of Focal -% conditional on mother having parity >0 - -%momarray is an array with pit in each column -momarray=pit*ones(1,om); - -Z=eye(s); -Z(1,1)=0; -for imom=1:om %go through all columns of momarray - E=Iom(:,imom)*Iom(imom,:); - momarray(:,imom)=kron(E,Z)*momarray(:,imom); - %selects age imom, and eliminates the zero parity row of momarray - -end -%rescale columns of momarray to sum to 1 -momarray=momarray*pinv(diag(sum(momarray))); - -%set dzero to the average of the momarray over the ages of moms at birth of -%children -dzero=momarray*piage; - -D(:,1)=dzero; -for ix=1:omz - D(:,ix+1)=Ut*D(:,ix); -end - - -% g = maternal grandmothers of Focal -gzero=D*piage; - -G(:,1)=gzero; -for ix=1:omz - G(:,ix+1)=Ut*G(:,ix); -end - - -% h = great-grandmothers of Focal -hzero=G*piage; -H(:,1)=hzero; -for ix=1:omz - H(:,ix+1)=Ut*H(:,ix) + 0; -end - -% m = older sisters of Focal -mzero=A*piage; -M(:,1)=mzero; -for ix=1:omz - M(:,ix+1)=Ut*M(:,ix) + 0; -end - -% n = younger sisters of Focal -nzero=zvec; -N(:,1)=nzero; -for ix=1:omz - N(:,ix+1)=Ut*N(:,ix) + Ft*D(:,ix); -end - - -% p = nieces through older sisters of Focal -pzero=B*piage; -P(:,1)=pzero; -for ix=1:omz - P(:,ix+1)=Ut*P(:,ix) + Ft*M(:,ix); -end - -% q = nieces through younger sisters of Focal -qzero=zvec; -Q(:,1)=qzero; -for ix=1:omz - Q(:,ix+1)=Ut*Q(:,ix) + Ft*N(:,ix); -end - -% r = aunts older than mother of Focal -rzero=M*piage; -R(:,1)=rzero; -for ix=1:omz - R(:,ix+1)=Ut*R(:,ix) + 0; -end - -% s = aunts younger than mother of Focal -szero=N*piage; -S(:,1)=szero; -for ix=1:omz - S(:,ix+1)=Ut*S(:,ix) + Ft*G(:,ix); -end - -% t = cousins from aunts older than mother of Focal -tzero=P*piage; -T(:,1)=tzero; -for ix=1:omz - T(:,ix+1)=Ut*T(:,ix) + Ft*R(:,ix); -end - - -% v = cousins from aunts younger than mother of Focal -vzero=Q*piage; -V(:,1)=vzero; -for ix=1:omz - V(:,ix+1)=Ut*V(:,ix) + Ft*S(:,ix); -end %for i - - -%overall kinship matrices, concatenating all kin -allkin=cat(3,A,B,C,D,G,H,M,N,P,Q,R,S,T,V); - -%combining older and younger categories -% for sisters, neices, aunts, and cousins -allkin2=cat(3,A,B,C,D,G,H,M+N,P+Q,R+S,T+V); - -%output structure -out.allkin=allkin; -out.allkin2=allkin2; -out.Phi=Phi; -out.pit=pit; -out.piage=piage; -out.om=om; -out.s=s; - out.Ut=Ut; -out.Ft=Ft; -out.Gt=Gt; - - - - diff --git a/dev/matrix_construction_4867.m b/dev/matrix_construction_4867.m deleted file mode 100644 index 1f6c75e..0000000 --- a/dev/matrix_construction_4867.m +++ /dev/null @@ -1,102 +0,0 @@ - -% script to prepare matrices for multistate age x parity model -% Supplement to: -% Caswell, H. 2020. The formal demography of kinship II. Multistate models, -% parity, and sibship. Demographic Research 42:1097-1144 -% -%requires Matlab Table files obtained from HMD (fltper) and HFD (mi) -% Has been successfully used under Matlab R2018b - -%add folder contraining the table files to path -addpath('SVK_tables/') - -% load the female lifetable file -load('SVKfltperTable.mat') -%columns in this Table: Year,Age,mx,qx,ax,lx,dx,Lx,Tx,ex -lt=ltable; - -%load the parity state transition file -load('SVKmiTable.mat') -%columns: Year,Age,mi1,mi2,mi3,mi4,mi5p - -%find year ranges -minfertyear=min(fert.Year); -maxfertyear=max(fert.Year); - -minltyear=min(lt.Year); -maxltyear=max(lt.Year); - -%pick a starting year and ending year -startyear=max([minfertyear minltyear]); -endyear=min([maxfertyear maxltyear]); - -%array of years and number of years -years=startyear:endyear; -numyears=endyear-startyear+1; - -for iy=1:numyears - years(iy); - - %find life table and qx array for year iy - pick=find(lt.Year==years(iy)); - qx=table2array(lt(pick,4)); - - %find fertility and create fertility array - pick=find(fert.Year==years(iy)); - fertarray=table2array(fert(pick,[2:7])); - - %number of age classes - %om=length(qx)-1; - om=length(qx)-1; - %number of parity classes - s=6; - - %extend the fertility array - startfert=fertarray(1,1); - endfert=fertarray(end,1); - %put zeros before age of first reproduction - fertarray=[zeros(startfert-1,6); fertarray]; - fertarray(1:startfert-1,1)=(1:startfert-1)'; - %put zeros after age of last reproduction - fertarray=[fertarray; zeros(om-endfert,6)]; - fertarray(endfert+1:om,1)=(endfert+1:om)'; - - %remove age column from fertarray - fertarray=fertarray(:,2:6); - - %construct the stage transition matrices using probabilities - for i=1:om - U{i} = diag(fertarray(i,:),-1); - %transform subdiagonals to probabilities - U{i}=U{i}./(1+0.5*U{i}); - %fill in diagonal entries - U{i}=U{i}+diag([1-diag(U{i},-1) ; 1]); - end - - %construct the age transition and survival matrices - for i=1:s - D{i}=diag(1-qx(1:om-1),-1); - end - - %construct fertility matrices - for i=1:om - F{i}=zeros(s,s); - F{i}(1,1:s-1)=diag(U{i},-1); - F{i}(1,s)=U{i}(s,s-1); - %divide fertility by 2 - F{i}=F{i}/2; - end - - %stage assignment matrices - for i=1:s - H{i}=zeros(om,om); - H{i}(1,:)=1; - end - - %include path to folder where matrix files are to be stored - myname=char(['SVK_kinmats/SVKmats' num2str(years(iy)) '.mat']) - %save the matrices into a .mat file - save(myname,'U','D','F','H','om','s') - -end - diff --git a/dev/readme.txt b/dev/readme.txt deleted file mode 100644 index e69de29..0000000 diff --git a/dev/tests/repl_caswell.R b/dev/tests/repl_caswell.R deleted file mode 100644 index b81c5ee..0000000 --- a/dev/tests/repl_caswell.R +++ /dev/null @@ -1,443 +0,0 @@ -# replicating Caswell´s figures: choose some kin - -library(devtools) -load_all() -library(DemoKin) -library(tidyverse) -library(progress) -library(R.matlab) -load("tests/test.RData") - -# basic -debugonce(kin_time_variant) -swe_kin_period_pack <- kin(U = swe_surv, - f = swe_asfr, - N = swe_pop, - time_invariant = F, - birth_female = 1, - output_period = c(1900, 1950, 2010), - output_kin = c("d","gd","m","gm","oa", "os")) - -swe_kin_period_pack$kin_full %>% - filter(alive == "yes") %>% - group_by(age_focal, kin, year) %>% - summarise(count = sum(count, na.rm=T)) %>% - ggplot(aes(age_focal, count, color=factor(year))) + - geom_line() + - facet_wrap(~kin, scales="free_y") - -# time variant ------------------------------------------------------------ - -# inputs -input_time_variant <- readMat("tests/SWEhist_matrices.mat") -input_time_variant_proj <- readMat("tests/SWEproj_matrices.mat") -# class(input_time_variant) -# names(input_time_variant) -# length(input_time_variant[["matrices"]]) # number of years -# input_time_variant[["matrices"]][[128]][[1]][[1]] # U -# input_time_variant[["matrices"]][[1]][[1]][[2]] # F -# input_time_variant[["matrices"]][[1]][[1]][[3]] # popsize -# input_time_variant[["matrices"]][[1]][[1]][[4]] # pi -# length(input_time_variant_proj[["matrices"]]) # number of years - -U_hal <- f_hal <-N_hal <- pi_hal <-matrix(rep(0,111)) -for(y in 1:128){ - # y = 1 - U <- input_time_variant[["matrices"]][[y]][[1]][[1]] %>% as.matrix() - f <- input_time_variant[["matrices"]][[y]][[1]][[2]] %>% as.matrix() - N <- input_time_variant[["matrices"]][[y]][[1]][[3]] %>% as.matrix() - pi <- input_time_variant[["matrices"]][[y]][[1]][[4]] %>% as.matrix() - U_hal <- cbind(U_hal, c(U[col(U)==row(U)-1], U[ncol(U),nrow(U)])) - f_hal <- cbind(f_hal ,f[1,]) - N_hal <- cbind(N_hal ,N) - pi_hal <-cbind(pi_hal, pi) -} -U_hal_end <- U_hal[,-1] -f_hal_end <- f_hal[,-1] -N_hal_end <- N_hal[,-1] -pi_hal_end <-pi_hal[,-1] -colnames(U_hal_end) <- colnames(f_hal_end) <- colnames(N_hal_end) <- colnames(pi_hal_end) <-1891:2018 -dim(U_hal_end);class(U_hal_end %>% as.matrix) - -# period -swe_kin_period <- kin(U = U_hal_end %>% as.matrix(), - f = f_hal_end %>% as.matrix(), - pi = pi_hal_end %>% as.matrix(), - time_invariant = F, - birth_female = 1, - output_period = c(1891,1921,1951,2010), - output_kin = c("d","gd","m","gm","oa", "os")) - -# check first-row plots from figures 5-A and 5-B from https://www.demographic-research.org/volumes/vol45/16/45-16.pdf -swe_kin_period$kin_full %>% - filter(alive == "yes") %>% - group_by(age_focal, kin, year) %>% - summarise(count = sum(count, na.rm=T)) %>% - ggplot(aes(age_focal, count, color=factor(year))) + - geom_line() + - facet_wrap(~kin, scales="free_y") - -# read from https://www.dropbox.com/t/3YiILmn7SpczN3oM -output_time_variant <- readMat("tests/time-varying_sweden.mat") - -# inspect the way the package reads -# class(output_time_variant) -# names(output_time_variant) -# length(output_time_variant[["allkin"]]) # number of years -# length(output_time_variant[["allkin"]][[1]]) -# length(output_time_variant[["allkin"]][[1]]) -# class(output_time_variant[["allkin"]][[1]][[1]]) # 1 array with kin matrix -# dim(output_time_variant[["allkin"]][[1]][[1]][,,14]) # the matrix of the nth kin, 111 ages - -# use own codes to interpret -codes <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") -caswell_codes <- c("t", "v", "a", "b", "c", "h", "g", "d", "p", "q", "r", "s", "m", "n") - -# re arrange all data to a dataframe -output_time_variant_df <- map_df(1:128, function(i){ - array_branch(output_time_variant[["allkin"]][[i]][[1]], margin = 3) %>% - map_df(., as.data.frame)}) %>% - setNames(as.character(0:110)) %>% - bind_cols(crossing(year = 1891+(0:127), - kin_index = 1:14, - age_kin = 0:110)) %>% - inner_join(tibble(kin = codes, caswell_codes) %>% - arrange(caswell_codes) %>% mutate(kin_index = 1:14)) - -# check dimension: 128 years, 14 types of kin, 111 ages -nrow(output_time_variant_df); 128*14*111 - -# check first-row plots from figures 5-A and 5-B from https://www.demographic-research.org/volumes/vol45/16/45-16.pdf -output_time_variant_df %>% - filter(year %in% c(1891,1921,1951,2010), kin %in% c("d","gd", "m", "gm", "oa", "os")) %>% - pivot_longer(`0`:`110`, names_to = "age", values_to = "count") %>% - mutate(age = as.integer(age)) %>% - group_by(age, kin, year) %>% - summarise(count = sum(count)) %>% - ggplot(aes(age, count, color=factor(year))) + - geom_line() + - facet_wrap(~kin, scales="free_y") - -# differences - look d, gd, in 1891 and 1951 -swe_period_together <- swe_kin_period$kin_full %>% - filter(alive == "yes") %>% - filter(year %in% c(1891,1921,1951,2010), kin %in% c("d","gd","m","gm","oa", "os")) %>% - group_by(age_focal, kin, year) %>% summarise(count_demokin = sum(count, na.rm=T)) %>% - inner_join( - output_time_variant_df %>% - filter(year %in% c(1891,1921,1951,2010), kin %in% c("d","gd", "m", "gm","oa", "os")) %>% - pivot_longer(`0`:`110`, names_to = "age", values_to = "count") %>% - mutate(age = as.integer(age)) %>% - group_by(age_focal=age, kin, year) %>% - summarise(count_paper = sum(count))) - -swe_period_together %>% - filter(year == 1891) %>% - ggplot() + - geom_line(aes(age_focal, count_demokin, color=factor(year)), linetype=1) + - geom_line(aes(age_focal, count_paper, color=factor(year)), linetype=2) + - facet_wrap(~kin, scales="free_y") - -swe_period_rel_dif <- swe_period_together %>% - mutate(rel_dif = round(100*(count_paper/count_demokin-1),3)) %>% - arrange(year, kin) %>% - as.data.frame() %>% - group_by(year, kin) %>% summarise(sum(rel_dif, na.rm=T)) - - - - - - - - - - - - - - -# to bind projected -# U_hal <- U_hal[1:106,] -# f_hal <- f_hal[1:106,] -# N_hal <- N_hal[1:106,] -# pi_hal <-pi_hal[1:106,] -# for(y in 1:102){ -# # y = 1 -# U <- input_time_variant_proj[["matrices"]][[y]][[1]][[1]] -# f <- input_time_variant_proj[["matrices"]][[y]][[1]][[2]] -# N <- input_time_variant_proj[["matrices"]][[y]][[1]][[3]] -# pi <- input_time_variant_proj[["matrices"]][[y]][[1]][[4]] -# U_hal <- U_hal %>% bind_cols(c(U[col(U)==row(U)-1], U[ncol(U),nrow(U)])) -# f_hal <- f_hal %>% bind_cols(f[1,]) -# N_hal <- N_hal %>% bind_cols(N) -# pi_hal <-pi_hal%>% bind_cols(as.numeric(pi)) -# } -# dim(U_hal[,-1]) -# U_hal_end <- U_hal[,-1] %>% setNames(as.character(1891:2120)) -# f_hal_end <- f_hal[,-1] %>% setNames(as.character(1891:2120)) -# N_hal_end <- N_hal[,-1] %>% setNames(as.character(1891:2120)) -# pi_hal_end <-pi_hal[,-1] %>% setNames(as.character(1891:2120)) -# dim(U_hal_end);names(U_hal_end) - -# time invariant ---------------------------------------------------------- - -### data: survival probability and fertility by age for Japan -# available at https://www.demographic-research.org/volumes/vol41/24/default.htm - -p_1947 <- 1 - read.csv("tests/qx_years.csv", header = F, sep = " ")[[4]] -f_1947 <- read.csv("tests/fx_years.csv", header = F, sep = " ")[[4]] -p_2014 <- 1 - read.csv("tests/qx_years.csv", header = F, sep = " ")[[205]] -f_2014 <- read.csv("tests/fx_years.csv", header = F, sep = " ")[[205]] - -# Caswell assumption on first age -f_1947 <- f_1947 * p_1947 -f_2014 <- f_2014 * p_2014 - -kins_japan_1947 <- kin(p_1947, f_1947, living = F)$kin_full -kins_japan_1947 %>% - filter(alive=="yes", kin=="ggm") %>% - group_by(age_focal) %>% summarise(sum(count)) - - -### results -kins_japan <- rbind(tibble(Year = 1947, kin(p_1947, f_1947, living = F)$kin_full), - tibble(Year = 2014, kin(p_2014, f_2014, living = F)$kin_full)) - -# kins alive by age when ego is aged 30 or 70 -kins_japan %>% - filter(age_focal %in% c(30,70), alive=="yes") %>% - ggplot() + - geom_line(aes(x=age_kin, y=count, - color=factor(age_focal), linetype=factor(Year))) + - facet_wrap(~kin,scales = "free_y") + - theme_classic() + - facet_wrap(~kin,scales = "free_y") - -kins_japan %>% - filter(age_focal %in% 30, alive=="yes", kin == "m", Year==2014) - -### get paper results: done with https://plotdigitizer.com/app - -m_30_2014 <- c(48.124993716677295, 0.0068724848600042006, - 52.13541022398433, 0.022765097394085585, - 56.14582673129136, 0.056697985757917374, - 60.04166165822103, 0.07398657677157613, - 64.16665974590543, 0.054765100671140945, - 68.17707625321246, 0.02330201014576342, - 71.95832959976478, 0.0035436192454907658) %>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "m", year = 2014, age = 30) -m_30_1947 <- c(47.89583055592257, 0.010630874121749168, - 51.791665482852245, 0.045100671140939595, - 56.37499863406029, 0.05111409232120386, - 59.92708007784368, 0.03908724586435613, - 63.82291500477335, 0.02577181208053692, - 68.17707625321246, 0.012671136024014266, - 71.84374801938742, 0.0025771828465813683) %>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "m", year = 1947, age = 30) -s_30_1947 <- c(117.30467373388943, 0.028030307190039253, - 3.8671896129379024, 0.0011363654972982584, - 8.05663990468026, 0.005681817853417949, - 12.031249743886312, 0.01792929767285178, - 16.220700035628674, 0.036111111913867226, - 19.873045098211307, 0.05782828333912762, - 23.84765903523633, 0.07626262618964844, - 28.037105229159724, 0.08244949644554042, - 32.119139392452894, 0.06717171906914071, - 36.09374513383999, 0.044696973856705915, - 39.853510422690775, 0.024621210698144477, - 43.93554458598395, 0.010858592937435215, - 47.80273010110288, 0.00303030478177092) %>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "s", year = 1947, age = 30) -s_70_1947 <- c(43.93554458598395, 0.0011363654972982584, - 47.80273010110288, 0.00441919166376952, - 52.20702494320051, 0.013383845316732092, - 56.074218653957374, 0.026388889290266948, - 59.94140416907631, 0.03952020358922534, - 64.02343013673156, 0.048358586916764375, - 68.10546430002474, 0.045959600046354354, - 71.97264981514367, 0.03143939886539736, - 76.05468397843684, 0.015404045293554923, - 80.02928971982392, 0.005429296468717607, - 84.00390365684893, 0.0011363654972982584) %>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "s", year = 1947, age = 70) -s_30_2014 <- c(7.949219678412107, 0.0005050524024740438, - 12.031249743886312, 0.0032828357995446046, - 16.005859583092366, 0.009217175037662914, - 19.873045098211307, 0.020328289359798468, - 23.6328103870621, 0.03194444645133473, - 27.822264776623417, 0.03888889049440111, - 32.01171916618474, 0.0337121250434572, - 35.77148445503553, 0.0215909155494469, - 39.96093884459685, 0.010732322612011683, - 44.04296481225208, 0.0032828357995446046)%>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "s", year = 2014, age = 30) -s_70_2014 <- c(51.88476426439605, 0.002904044089420749, - 56.18163888022552, 0.009343435730013084, - 59.83398394280815, 0.01944444524720057, - 64.13085855863763, 0.03068182026168629, - 68.21288452629288, 0.035479798819043, - 71.75780936260736, 0.03068182026168629, - 76.16210420470499, 0.019318184554850383, - 79.92186949355577, 0.008459601250488509, - 84.00390365684893, 0.00265152270472039) %>% matrix(ncol=2, byrow = T) %>% - as.data.frame() %>% setNames(c("age_kin","count")) %>% - mutate(kin = "s", year = 2014, age = 70) - -output_time_invariant <- m_30_2014 %>% - bind_rows(m_30_1947, s_30_1947, s_70_1947, s_30_2014, s_70_2014) %>% - mutate(age_kin = trunc(age_kin), count=round(count,7)) - -compare_time_invariant <- kins_japan %>% - filter(kin %in% c("os", "ys"), alive == "yes") %>% - group_by(Year, age_focal, age_kin, alive) %>% - summarise(count = sum(count)) %>% - mutate(kin = "s") %>% - bind_rows(kins_japan %>% filter(alive == "yes")) %>% - select(-year, -cohort, -alive) %>% - rename(count_demokin = count, year = Year) %>% - mutate(count_demokin = round(count_demokin,7)) %>% - right_join(output_time_invariant %>% - rename(age_focal=age, count_paper = count)) - -compare_time_invariant %>% - ggplot() + - geom_line(aes(age_kin, count_demokin, linetype=factor(year)), col=1)+ - geom_line(aes(age_kin, count_paper, linetype=factor(year)), col=2) + - facet_grid(~kin+age_focal)+ - theme_bw() - - -### compare values - - - - - - - - - - -# period -swe_kin_period <- kin(U = U_caswell_2021, f = f_caswell_2021, pi = pi_caswell_2021, stable = F, birth_female = 1, - focal_year = c(1891,1921,1951,2010,2050,2080,2120), - selected_kin = c("d","gd","ggd","m","gm","ggm","os","ys","oa","ya")) - -swe_kin_period$kin_summary %>% - ggplot(aes(age_focal,count,color=factor(year))) + - geom_line(size=1)+ - scale_y_continuous(name = "",labels = seq(0,3,.2),breaks = seq(0,3,.2))+ - facet_wrap(~kin, scales = "free")+ - theme_bw() - -# ADDITIONAL PLOTS cohrot and period -ggplot(swe_kin_cohorts$kin_summary %>% filter(cohort == 1911), - aes(year,mean_age)) + - geom_point(aes(size=count,color=kin)) + - geom_line(aes(color=kin)) + - scale_y_continuous(name = "Edad", breaks = seq(0,110,10), labels = seq(0,110,10), limits = c(0,110))+ - geom_segment(x = 1911, y = 0, xend = 2025, yend = 110, color = 1)+ - geom_vline(xintercept = 1911, linetype=2)+ - theme_light()+ coord_fixed()+ - labs(title = "Kin cohort 1911") - -swe_kin_period$kin_summary %>% - filter(age_focal==50) %>% - ggplot(aes(year, mean_age, color=kin)) + - geom_point(aes(size=count)) + - geom_line() + - geom_hline(yintercept = 50, color=1, linetype=1)+ - theme_light()+ - coord_fixed()+ - labs(title = "Kin period") - -### plots -# kins alive by age when ego is aged 30 or 70 -kins_japan %>% - filter(age_focal %in% c(30,70), alive=="yes") %>% - ggplot() + - geom_line(aes(x=age_kin, y=count, - color=factor(age_focal), linetype=factor(Year))) + - facet_wrap(~kin,scales = "free_y") + - theme_classic() + - facet_wrap(~kin,scales = "free_y") -# kins alive during ego´s life -kins_japan %>% - filter(alive=="yes") %>% - group_by(Year, kin, age_focal) %>% summarise(count = sum(count)) %>% - ggplot() + - geom_line(aes(age_focal, count, linetype=factor(Year))) + - theme_classic() + - facet_wrap(~kin, scales = "free_y") -# experienced deaths -kins_japan %>% - filter(alive=="no") %>% - group_by(Year, kin, age_focal) %>% summarise(count = sum(count)) %>% - ggplot() + - geom_line(aes(age_focal, count, linetype=factor(Year))) + - theme_classic() + - facet_wrap(~kin, scales = "free_y") -# variation coefficient of age by kin -kins_japan %>% - filter(alive=="yes") %>% - group_by(Year, kin, age_focal) %>% - summarise(mean_age = sum(count*age_kin)/sum(count), - var_age = sum(count*age_kin^2)/sum(count) - mean_age^2, - cv_age = round(sqrt(var_age)/mean_age*100,1)) %>% - ggplot() + - geom_line(aes(age_focal, cv_age, linetype=factor(Year))) + - theme_classic() + - facet_wrap(~kin, scales = "free_y") -# dependency ages -kins_japan %>% - filter(alive=="yes") %>% - mutate(age_kin_dep = ifelse(age_kin<15,"0-14", - ifelse(age_kin<65,"15-64","65+"))) %>% - group_by(Year, kin, age_focal, age_kin_dep) %>% - summarise(count = sum(count)) %>% - ggplot() + - geom_line(aes(age_focal, count, - color = age_kin_dep, linetype=factor(Year))) + - theme_classic() + - facet_wrap(~kin, scales = "free_y") - - - - - - - - - - - - - - - - - -swe_surv_2010 <- swe_surv %>% pull(`2011`) -swe_asfr_2010 <- swe_asfr %>% pull(`2011`) -debugonce(kin) -swe50_2015_stable <- kin(U = swe_surv_2010, f = swe_asfr_2010, output_cohort = c(1911,1930), - output_kin = c("d","m")) - -swe_kin_cohorts <- kin(U = U_caswell_2021, f = f_caswell_2021, time_invariant = F, - birth_female = 1, - output_cohort = c(1911), - output_kin = c("d")) - -U = U_caswell_2021; f = f_caswell_2021; pi = pi_caswell_2021; birth_female = 1; -output_cohort = c(1911);output_period = NULL; output_kin = c("d") - -# FIGURE 5 - - - diff --git a/dev/tests/repl_caswell_first_year.R b/dev/tests/repl_caswell_first_year.R deleted file mode 100644 index c88c121..0000000 --- a/dev/tests/repl_caswell_first_year.R +++ /dev/null @@ -1,106 +0,0 @@ -# replicating Caswell´s figures: choose some kin -library(DemoKin) -library(tidyverse) -library(R.matlab) -source("R/kin_time_invariant.R") - -# paper input from https://www.demographic-research.org/volumes/vol45/16/45-16.pdf -input_time_variant <- readMat("tests/SWEhist_matrices.mat") - -# check structure from reading mat -class(input_time_variant) -names(input_time_variant) -length(input_time_variant[["matrices"]]) # number of years -input_time_variant[["matrices"]][[128]][[1]][[1]] # U -input_time_variant[["matrices"]][[1]][[1]][[2]] # F -input_time_variant[["matrices"]][[1]][[1]][[3]] # popsize -input_time_variant[["matrices"]][[1]][[1]][[4]] # pi -length(input_time_variant_proj[["matrices"]]) # number of years - -# reshape -U_hal <- f_hal <-N_hal <- pi_hal <-matrix(rep(0,111)) -for(y in 1:128){ - U <- input_time_variant[["matrices"]][[y]][[1]][[1]] %>% as.matrix() - f <- input_time_variant[["matrices"]][[y]][[1]][[2]] %>% as.matrix() - N <- input_time_variant[["matrices"]][[y]][[1]][[3]] %>% as.matrix() - pi <- input_time_variant[["matrices"]][[y]][[1]][[4]] %>% as.matrix() - U_hal <- cbind(U_hal, c(U[col(U)==row(U)-1], U[ncol(U),nrow(U)])) - f_hal <- cbind(f_hal ,f[1,]) - N_hal <- cbind(N_hal ,N) - pi_hal <-cbind(pi_hal, pi) -} -U_hal <- U_hal[,-1] -f_hal <- f_hal[,-1] -N_hal <- N_hal[,-1] -pi_hal <-pi_hal[,-1] -colnames(U_hal) <- colnames(f_hal) <- colnames(N_hal) <- colnames(pi_hal) <-1891:2018 -dim(U_hal);class(U_hal %>% as.matrix) - -# output from Hal (dropbox link https://www.dropbox.com/t/3YiILmn7SpczN3oM) -output_time_variant <- readMat("tests/time-varying_sweden.mat") - -# inspect the way the package reads mat -class(output_time_variant) -names(output_time_variant) -length(output_time_variant[["allkin"]]) # number of years -length(output_time_variant[["allkin"]][[1]]) -length(output_time_variant[["allkin"]][[1]]) -class(output_time_variant[["allkin"]][[1]][[1]]) # 1 array with kin matrix -dim(output_time_variant[["allkin"]][[1]][[1]][,,14]) # the matrix of the nth kin, 111 ages - -# use own codes to interpret -codes <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") -caswell_codes <- c("t", "v", "a", "b", "c", "h", "g", "d", "p", "q", "r", "s", "m", "n") - -# re shape data to tidy -output_time_variant_df <- map_df(1:128, function(i){ - array_branch(output_time_variant[["allkin"]][[i]][[1]], margin = 3) %>% - map_df(., as.data.frame)}) %>% - setNames(as.character(0:110)) %>% - bind_cols(crossing(year = 1891+(0:127), # years - kin_index = 1:14, # number of possible kin - age_kin = 0:110) # ages - ) %>% - inner_join(tibble(kin = codes, caswell_codes) %>% - arrange(caswell_codes) %>% mutate(kin_index = 1:14)) - -# check dimension: 128 years, 14 types of kin, 111 ages -nrow(output_time_variant_df); 128*14*111 - -# own calculation for first year -out_first_year <- kin_time_invariant( - U = U_hal[,"1891"], - f = f_hal[,"1891"], - pi = pi_hal[,"1891"], - birth_female = 1) - -# check first visually demokin -out_first_year %>% - filter(alive == "yes") %>% - group_by(age_focal, kin) %>% - summarise(count = sum(count, na.rm=T)) %>% - ggplot(aes(age_focal, count)) + - geom_line() + - facet_wrap(~kin, scales="free_y") - -# compare with paper results -comparison <- out_first_year %>% - filter(alive == "yes") %>% - group_by(age_focal, kin) %>% - summarise(count = sum(count, na.rm=T)) %>% - mutate(source = "demokin") %>% - bind_rows( - output_time_variant_df %>% - filter(year %in% 1891) %>% - pivot_longer(`0`:`110`, names_to = "age", values_to = "count") %>% - mutate(age = as.integer(age)) %>% - group_by(age_focal=age, kin) %>% - summarise(count = sum(count)) %>% - mutate(source = "paper")) - -# comparison visually -comparison %>% - ggplot() + - geom_line(aes(age_focal, count, color=source, linetype=source)) + - facet_wrap(~kin, scales="free_y") + - theme_bw() diff --git a/dev/tests/timevarying_kin.m b/dev/tests/timevarying_kin.m deleted file mode 100644 index c1176c8..0000000 --- a/dev/tests/timevarying_kin.m +++ /dev/null @@ -1,180 +0,0 @@ -function kout=timevarying_kin(U,F,pi,om,pkin); -% function to return kinship network -% calculated from the rates and the kinship at the previous time -% U=survival matrix -% F=fertility matrix -% pi = distribution of ages of mothers -% om=number of age classes -% pkin = the array of all kin from the previous time step -% model structure -% k(x+1,t+1)=U(t)*k(x,t) + F(t)*kstar(x,t) for some other kin kstar - -%set to full in case they arrive as sparse matrices -U=full(U); -F=full(F); -pi=full(pi); - -%frequently used zero vector for initial condition -zvec=zeros(om,1); -I=eye(om); -omz=om-1; - -% a: daughters of focal - -A(:,1)=zvec; -for ix=1:omz - ap=U*pkin.A(:,ix) + F*I(:,ix); - A(:,ix+1)=ap; - -end % for ix - -% b = granddaughters of Focal - -B(:,1)=zvec; -for ix=1:omz - bp=U*pkin.B(:,ix) + F*pkin.A(:,ix); - B(:,ix+1)=bp; - -end - - -% c = greatgranddaughters of Focal -C(:,1)=zvec; -for ix=1:omz - cp=U*pkin.C(:,ix) +F*pkin.B(:,ix); - C(:,ix+1)=cp; - -end - - -% d = mothers of Focal -D(:,1)=pi; -for ix=1:omz - dp=U*pkin.D(:,ix) + 0; - D(:,ix+1)=dp; - -end - - -% g = grandmothers of Focal -%only maternal grandmothers right now -G(:,1)=pkin.D*pi;; -for ix=1:omz - gp=U*pkin.G(:,ix) + 0; - G(:,ix+1)=gp; - -end - - -% h = greattrandmothers of Focal - -H(:,1)=pkin.G*pi; -for ix=1:omz - hp=U*pkin.H(:,ix) + 0; - H(:,ix+1)=hp; - -end - -% m = older sisters of Focal - -M(:,1)=pkin.A*pi; -for ix=1:omz - mp=U*pkin.M(:,ix) + 0; - M(:,ix+1)=mp; - -end - -% n = younger sisters - -N(:,1)=zvec; -for ix=1:omz - np=U*pkin.N(:,ix) + F*pkin.D(:,ix); - N(:,ix+1)=np; - -end - - -% p = nieces through older sisters - -P(:,1)=pkin.B*pi; -for ix=1:omz - pp=U*pkin.P(:,ix) + F*pkin.M(:,ix); - P(:,ix+1)=pp; -end - -% q = nieces through younger sisters - -Q(:,1)=zvec; -for ix=1:omz - qp=U*pkin.Q(:,ix) + F*pkin.N(:,ix); - Q(:,ix+1)=qp; - -end - -% r = aunts older than mother - -R(:,1)=pkin.M*pi; -for ix=1:omz - rp=U*pkin.R(:,ix) + 0; - R(:,ix+1)=rp; - -end - -% s = aunts younger than mother - -S(:,1)=pkin.N*pi; -for ix=1:omz - sp=U*pkin.S(:,ix) + F*pkin.G(:,ix); - S(:,ix+1)=sp; - -end - -% t = cousins from older aunts - -T(:,1)=pkin.P*pi; -for ix=1:omz - tp=U*pkin.T(:,ix) + F*pkin.R(:,ix); - T(:,ix+1)=tp; - -end - - -% v = cousins from aunts younger than mother - -V(:,1)=pkin.Q*pi; -for ix=1:omz - vp=U*pkin.V(:,ix) + F*pkin.S(:,ix); - V(:,ix+1)=vp; - -end - -%concatenate kin matrices -allkin=cat(3,A,B,C,D,G,H,M,N,P,Q,R,S,T,V); - -%concatenate, combining older and younger sisters, etc. -allkin2=cat(3,A,B,C,D,G,H,M+N,P+Q,R+S,T+V); - -%create output structures -kout.A=A; -kout.B=B; -kout.C=C; -kout.D=D; -kout.G=G; -kout.H=H; -kout.M=M; -kout.N=N; -kout.P=P; -kout.Q=Q; -kout.R=R; -kout.S=S; -kout.T=T; -kout.V=V; - -kout.allkin=allkin; -kout.allkin2=allkin2; - -kout.U=U; -kout.F=F; -kout.pi=pi; - - \ No newline at end of file diff --git a/DemoKin-Logo.png b/man/figures/DemoKin-Logo.png similarity index 100% rename from DemoKin-Logo.png rename to man/figures/DemoKin-Logo.png diff --git a/man/get_HMDHFD.Rd b/man/get_HMDHFD.Rd deleted file mode 100644 index 9bbf264..0000000 --- a/man/get_HMDHFD.Rd +++ /dev/null @@ -1,41 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/get_HMDHFD.R -\name{get_HMDHFD} -\alias{get_HMDHFD} -\title{Get time serie matrix data from HMD/HFD} -\usage{ -get_HMDHFD( - country = "SWE", - min_year = 1900, - max_year = 2018, - user_HMD = NULL, - pass_HMD = NULL, - user_HFD = NULL, - pass_HFD = NULL, - OAG = 100 -) -} -\arguments{ -\item{country}{numeric. Country code from rom HMD/HFD.} - -\item{min_year}{integer. Older year to get data.} - -\item{max_year}{numeric. Latest year to get data.} - -\item{user_HMD}{character. From HMD.} - -\item{pass_HMD}{character. From HMD.} - -\item{user_HFD}{character. From HFD.} - -\item{pass_HFD}{character. From HFD.} - -\item{OAG}{numeric. Open age group to standarize output.} -} -\value{ -A list wiith female survival probability, survival function, fertility and poopulation age specific matrixes, with calendar year as colnames. -} -\description{ -Wrapper function to get data of female survival, fertlity and population -of selected country on selected period. -} diff --git a/man/kin.Rd b/man/kin.Rd index 036bdd9..62ec76b 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -40,6 +40,8 @@ in a more general perspective) with rows as ages (and columns as years in case o this needs to be set as 1.} \item{stable}{logic. Deprecated. Use \code{time_invariant}.} + +\item{U}{logic. Deprecated. Use \code{p}.} } \value{ A list with: diff --git a/man/kin2sex.Rd b/man/kin2sex.Rd index 34bf7c1..d91b032 100644 --- a/man/kin2sex.Rd +++ b/man/kin2sex.Rd @@ -22,9 +22,9 @@ kin2sex( ) } \arguments{ -\item{pf}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} +\item{pf}{numeric. A vector (atomic) or matrix with female probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} -\item{pm}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} +\item{pm}{numeric. A vector (atomic) or matrix with male probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} \item{ff}{numeric. Same as pf but for fertility rates.} @@ -49,13 +49,12 @@ kin2sex( \item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} - -\item{stable}{logic. Deprecated. Use \code{time_invariant}.} } \value{ A list with: \itemize{ -\item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age.} +\item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example \code{d} could be daughter or son depending \code{sex_kin}, +\code{oa} is older aunts or uncles also depending \code{sex_kin} value, etc.), including living and dead kin at that age.} \item{kin_summary}{ a data frame with Focal´s age, related ages, sex and type of kin, with indicators obtained processing \code{kin_full}, grouping by cohort or period (depending on the given arguments):} {\itemize{ \item{\code{count_living}}{: count of living kin at actual age of Focal} @@ -71,7 +70,8 @@ A list with: \description{ Implementation of two-sex matrix kinship model. This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents -are grouped in one male count of cousins. +are grouped in one male count of cousins. Note that the output labels relative following female notation: the label \code{m} +refers to either mothers or fathers, and column \code{sex_kin} determine the sex of the relative. } \details{ See Caswell (2022) for details on formulas. diff --git a/man/kin_time_variant.Rd b/man/kin_time_variant.Rd index 17c1f85..0646778 100644 --- a/man/kin_time_variant.Rd +++ b/man/kin_time_variant.Rd @@ -23,6 +23,8 @@ kin_time_variant( \item{pi}{numeric. A matrix with distribution of childbearing with rows as ages and columns as years. Coincident with \code{U}.} +\item{n}{numeric. A matrix of population with rows as ages and columns as years. Coincident with \code{U}.} + \item{output_cohort}{integer. Year of birth of focal to return as output. Could be a vector. Should be within input data years range.} \item{output_period}{integer. Year for which to return kinship structure. Could be a vector. Should be within input data years range.} @@ -32,8 +34,6 @@ kin_time_variant( \item{birth_female}{numeric. Female portion at birth.} \item{list_output}{logical. Results as a list with years elements (as a result of \code{output_cohort} and \code{output_period} combination), with a second list of \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} - -\item{N}{numeric. A matrix of population with rows as ages and columns as years. Coincident with \code{U}.} } \value{ A data frame of population kinship structure, with focal's cohort, focal´s age, period year, type of relatives diff --git a/man/kin_time_variant_2sex.Rd b/man/kin_time_variant_2sex.Rd index bcb3ca9..a30624f 100644 --- a/man/kin_time_variant_2sex.Rd +++ b/man/kin_time_variant_2sex.Rd @@ -48,9 +48,7 @@ kin_time_variant_2sex( \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} -\item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} - -\item{stable}{logic. Deprecated. Use \code{time_invariant}.} +\item{list_output}{logical. Results as a list with years elements (as a result of \code{output_cohort} and \code{output_period} combination), with a second list of \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} } \value{ A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age and sex. diff --git a/man/output_period_cohort_combination.Rd b/man/output_period_cohort_combination.Rd index e53a40c..c96a235 100644 --- a/man/output_period_cohort_combination.Rd +++ b/man/output_period_cohort_combination.Rd @@ -21,5 +21,5 @@ output_period_cohort_combination( \description{ defince apc to return. -defince apc to return. +define apc combination to return in \code{kin} and \code{kin2sex}. } diff --git a/man/timevarying_kin_2sex.Rd b/man/timevarying_kin_2sex.Rd index e2ad4ac..d6dccf2 100644 --- a/man/timevarying_kin_2sex.Rd +++ b/man/timevarying_kin_2sex.Rd @@ -9,13 +9,16 @@ timevarying_kin_2sex(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin) \arguments{ \item{Ut}{numeric. A matrix of survival probabilities (or ratios).} -\item{pit}{numeric. A matrix with distribution of childbearing.} +\item{Ft}{numeric. A matrix of age-specific fertility rates.} + +\item{Ft_star}{numeric. Ft but for female fertility.} + +\item{pit}{numeric. A matrix with distribution of childbearing. +sex_focal} \item{ages}{numeric.} \item{pkin}{numeric. A list with kin count distribution in previous year.} - -\item{ft}{numeric. A matrix of age-specific fertility rates.} } \description{ one time projection kin. internal function. diff --git a/vignettes/Reference.Rmd b/vignettes/Reference_OneSex.Rmd similarity index 98% rename from vignettes/Reference.Rmd rename to vignettes/Reference_OneSex.Rmd index cd1bee3..1259f8b 100644 --- a/vignettes/Reference.Rmd +++ b/vignettes/Reference_OneSex.Rmd @@ -1,17 +1,18 @@ --- -title: "Expected kin counts by type of relative: A matrix implementation" +title: "Expected kin counts by type of relative in a one-sex framework" output: html_document: toc: true toc_depth: 1 vignette: > - %\VignetteIndexEntry{Reference} + %\VignetteIndexEntry{Reference_OneSex} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include=FALSE} knitr::opts_chunk$set(collapse = TRUE, comment = "#>") +library(devtools); load_all() ``` In this vignette, we'll demonstrate how `DemoKin` can be used to compute kinship networks for an average member of a given (female) population. Let us call her Focal: an average Swedish woman who has always lived in Sweden and whose family has never left the country. @@ -24,8 +25,7 @@ First, we compute kin counts in a **time-invariant** framework. We assume that F In order to implement the time-invariant models, the function `DemoKin::kin` expects a vector of survival ratios and another vector of fertility rates. In this example, we get the data for the year 2015, and run the matrix models: ```{r, message=FALSE, warning=FALSE} -library(devtools) -load_all() +library(DemoKin) library(tidyr) library(dplyr) library(ggplot2) @@ -56,7 +56,7 @@ head(swe_2015$kin_summary) To produce it, we sum over all ages of kin to produce a data frame of expected kin counts by year or cohort and age of Focal (but not by age of kin). Consider this simplified example for living kin counts: -```{r} +```{r, message=FALSE, warning=FALSE} kin_summary_example <- swe_2015$kin_full %>% select(year, cohort, kin, age_focal, age_kin, living, dead) %>% diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd new file mode 100644 index 0000000..cc8e2c7 --- /dev/null +++ b/vignettes/Reference_TwoSex.Rmd @@ -0,0 +1,271 @@ +--- +title: "Two-sex kinship model" +output: + html_document: + toc: true + toc_depth: 1 +vignette: > + %\VignetteIndexEntry{Reference_TwoSex} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r, include=FALSE} +knitr::opts_chunk$set(collapse = TRUE, comment = "#>") +library(devtools); load_all() +``` + +Human males generally live longer and reproduce later than females. +These sex-specific processes affect kinship dynamics in a number of ways. +For example, the degree to which an average member of the population, call her Focal, has a living grandparent is affected by differential mortality affecting the parental generation at older ages. +We may also be interested in considering how kinship structures vary by Focal's sex: a male Focal may have a different number of grandchildren than a female Focal given differences in fertility by sex. +Documenting these differences matters since women often face greater expectations to provide support and informal care to relatives. +As they live longer, they may find themselves at greater risk of being having no living kin. +The function `kin2sex` implements two-sex kinship models as introduced by Caswell (2022). +This vignette show how to run two-sex models and highlights some of the advantages of this model over one-sex models in populations with time-invariant and time-variant rates. + +```{r, message=FALSE, warning=FALSE} +library(DemoKin) +library(tidyr) +library(dplyr) +library(ggplot2) +library(knitr) +``` + +### 1. Demographic rates by sex + +Data on female fertility by age is less common than female fertility. Schoumaker (2019) shows that male TFR is almost always higher than female Total Fertility Rates (TFR) using a sample of 160 countries. +For this example, we use data from 2012 France to exemplify the use of the two-sex function. +Data on female and male fertility and mortality are included in `DemoKin`. In this population, male and female TFR is almost identical (1.98 and 1.99) but the distributions of fertility by sex varies over age: + +```{r} +fra_fert_f <- fra_asfr_sex[,"ff"] +fra_fert_m <- fra_asfr_sex[,"fm"] +fra_surv_f <- fra_surv_sex[,"pf"] +fra_surv_m <- fra_surv_sex[,"pm"] + +sum(fra_fert_m)-sum(fra_fert_f) + +data.frame(value = c(fra_fert_f, fra_fert_m, fra_surv_f, fra_surv_m), + age = rep(0:100, 4), + sex = rep(c(rep("f", 101), rep("m", 101)), 2), + risk = c(rep("fertility rate", 101 * 2), rep("survival probability", 101 * 2))) %>% + ggplot(aes(age, value, col=sex)) + + geom_line() + + facet_wrap(~ risk, scales = "free_y") + + theme_bw() +``` + +### 2. Time-invariant two-sex kinship models + +We now introduce the functions `kin2sex`, which is similar to the one-sex function `kin` (see `?kin`) with two exceptions. +First, the user needs to specify mortality and fertility by sex. +Second, the user must indicate the sex of Focal (which was assumed to be female in the one-sex model). +Let us first consider the application for time-invariant populations: + +```{r} +kin_result <- kin2sex( + pf = fra_surv_f, + pm = fra_surv_m, + ff = fra_fert_f, + fm = fra_fert_m, + time_invariant = TRUE, + sex_focal = "f", + birth_female = .5 + ) +``` + +The output of `kin2sex` is equivalent to that of `kin`, except that it includes a column `sex_kin` to specify the sex of the given relatives. + +Let's group aunts and siblings to visualize the number of living kin by Focal's age. + +```{r, message=FALSE, warning=FALSE} +kin_out <- kin_result$kin_summary %>% + mutate(kin = case_when(kin %in% c("s", "s") ~ "s", + kin %in% c("ya", "oa") ~ "a", + T ~ kin)) %>% + filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) + +kin_out %>% + group_by(kin, age_focal, sex_kin) %>% + summarise(count=sum(count_living)) %>% + ggplot(aes(age_focal, count, fill=sex_kin))+ + geom_area()+ + theme_bw() + + facet_wrap(~kin) +``` + +**A note on terminology** + +The function `kin2sex` uses the same codes as `kin` to identify relatives (see `demokin_codes()`). +Note that when running a two-sex model, the code 'm' refers to either mothers or fathers! +Use the column `sex_kin` to determine the sex of a given relatives. +For example, in order to consider only sons and ignore daughters, use: + +```{r} +kin_result$kin_summary %>% + filter(kin == "d", sex_kin == "m") %>% + head() +``` + +Information on kin availability by sex allows us to consider sex ratios, a traditional measure in demography, with females often in denominator. The following figure, for example, shows that a 25yo French woman in our hypothetical population can expect to have 0.5 grandfathers for every grandmother: + +```{r, message=FALSE, warning=FALSE} +kin_out %>% + group_by(kin, age_focal) %>% + summarise(sex_ratio=sum(count_living[sex_kin=="m"], na.rm=T)/sum(count_living[sex_kin=="f"], na.rm=T)) %>% + ggplot(aes(age_focal, sex_ratio))+ + geom_line()+ + theme_bw() + + facet_wrap(~kin, scales = "free") +``` + +The experience of kin loss for Focal depends on differences in mortality between sexes. +A female Focal starts losing fathers earlier than mothers. +We see a slightly different pattern for grandparents since Focal's experience of grandparental loss is dependent on the initial availability of grandparents (i.e. if Focal's grandparent died before her birth, she will never experience his death). + +```{r, message=FALSE, warning=FALSE} +# sex ratio +kin_out %>% + group_by(kin, sex_kin, age_focal) %>% + summarise(count=sum(count_dead)) %>% + ggplot(aes(age_focal, count, col=sex_kin))+ + geom_line()+ + theme_bw() + + facet_wrap(~kin) +``` + + +### 3. Time-variant two-sex kinship models + +We look at populations where demographic rates are not static but change on a yearly basis. +For this, we consider the case of Sweden using data pre-loaded in `DemoKin`. +For this example, we will create 'pretend' male fertility rates by slightly perturbing the existing female rates. +This is a toy example, since a real two-sex model should use actual female and male rates as inputs. + +```{r} +years <- ncol(swe_px) +ages <- nrow(swe_px) +swe_surv_f_matrix <- swe_px +swe_surv_m_matrix <- swe_px ^ 1.5 # artificial perturbation for this example +swe_fert_f_matrix <- swe_asfr +swe_fert_m_matrix <- rbind(matrix(0, 5, years), + swe_asfr[-((ages-4):ages),]) * 1.05 # artificial perturbation for this example + +par(mfrow=c(1,2)) +plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probability") +lines(swe_surv_m_matrix[,"1900"], col=2) +plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") +lines(swe_fert_m_matrix[,"1900"], col=2) +``` + +We now run the time-variant two-sex models (note the `time_invariant = FALSE` argument): + +```{r} +kin_out_time_variant <- kin2sex( + pf = swe_surv_f_matrix, + pm = swe_surv_m_matrix, + ff = swe_fert_f_matrix, + fm = swe_fert_m_matrix, + sex_focal = "f", + time_invariant = FALSE, + birth_female = .5, + output_cohort = 1900 + ) +``` + +We can plot data on kin availability alongside values coming from a time-invariant model to show how demographic change matters: the time-variant models take into account changes derived from the demographic transition, whereas the time-invariant models assume never-changing rates. + +```{r, message=FALSE, warning=FALSE} +kin_out_time_invariant <- kin2sex( + swe_surv_f_matrix[,"1900"], swe_surv_m_matrix[,"1900"], + swe_fert_f_matrix[,"1900"], swe_fert_m_matrix[,"1900"], + sex_focal = "f", birth_female = .5) + + +kin_out_time_variant$kin_summary %>% + filter(cohort == 1900) %>% mutate(type = "variant") %>% + bind_rows(kin_out_time_invariant$kin_summary %>% mutate(type = "invariant")) %>% + mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + T ~ kin)) %>% + filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) %>% + group_by(type, kin, age_focal, sex_kin) %>% + summarise(count=sum(count_living)) %>% + ggplot(aes(age_focal, count, linetype=type))+ + geom_line()+ theme_bw() + + facet_grid(cols = vars(kin), rows=vars(sex_kin), scales = "free") +``` + +### 4. Approximations + +Caswell (2022) introduced two approaches for approximating two-sex kinship structures for cases when male demographic rates are not available. +The first is the *androgynous* approximation, which assumes equal fertility and survival for males and females. +The second is the use of *GKP factors* apply to each type of relative (e.g., multiplying mothers by two to obtain the number of mothers and fathers). + +Here, we present a visual evaluation of the accuracy of these approximations by comparing to 'true' two-sex models using the French data included with `DemoKin` for time-invariant models (Caswell, 2022). +We start by considering the androgynous approximation. +We compare expected kin counts by age and find high levels of consistency for all kin types, except for grandfathers and great-grandfathers: + +```{r, message=FALSE, warning=FALSE} +kin_out <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) + +kin_out_androgynous <- kin2sex(fra_surv_f, fra_surv_f, fra_fert_f, fra_fert_f, sex_focal = "f", birth_female = .5) + +bind_rows( + kin_out$kin_summary %>% mutate(type = "full"), + kin_out_androgynous$kin_summary %>% mutate(type = "androgynous")) %>% + group_by(kin, age_focal, sex_kin, type) %>% + summarise(count = sum(count_living)) %>% + ggplot(aes(age_focal, count, linetype = type)) + + geom_line() + + theme_bw() + + theme(legend.position = "bottom", axis.text.x = element_blank()) + + facet_grid(row = vars(sex_kin), col = vars(kin), scales = "free") +``` + +Next, we consider the use of GKP factors and find that it also approximates relatively accurately kin counts at different ages of Focal. +These are presented as examples only. +Users are invited to perform more rigorous comparisons of these approximations. + +```{r, message=FALSE, warning=FALSE} +# with gkp +kin_out_1sex <- kin(fra_surv_f, fra_fert_f, birth_female = .5) + +kin_out_GKP <- kin_out_1sex$kin_summary%>% + mutate(count_living = case_when(kin == "m" ~ count_living * 2, + kin == "gm" ~ count_living * 4, + kin == "ggm" ~ count_living * 8, + kin == "d" ~ count_living * 2, + kin == "gd" ~ count_living * 4, + kin == "ggd" ~ count_living * 4, + kin == "oa" ~ count_living * 4, + kin == "ya" ~ count_living * 4, + kin == "os" ~ count_living * 2, + kin == "ys" ~ count_living * 2, + kin == "coa" ~ count_living * 8, + kin == "cya" ~ count_living * 8, + kin == "nos" ~ count_living * 4, + kin == "nys" ~ count_living * 4)) + +bind_rows( + kin_out$kin_summary %>% mutate(type = "full"), + kin_out_androgynous$kin_summary %>% mutate(type = "androgynous"), + kin_out_GKP %>% mutate(type = "gkp")) %>% + mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", + kin %in% c("ya", "oa") ~ "a", + kin %in% c("coa", "cya") ~ "c", + kin %in% c("nys", "nos") ~ "n", + T ~ kin)) %>% + filter(age_focal %in% c(5, 15, 30, 60, 80)) %>% + group_by(kin, age_focal, type) %>% + summarise(count = sum(count_living)) %>% + ggplot(aes(type, count)) + + geom_bar(aes(fill=type), stat = "identity") + + theme_bw()+theme(axis.text.x = element_text(angle = 90), legend.position = "bottom")+ + facet_grid(col = vars(kin), row = vars(age_focal), scales = "free") +``` + +## References + +Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. From 1a14b1c6f9c9d36dfddd36814b8d8d6992d60e06 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 8 Feb 2023 14:55:40 -0300 Subject: [PATCH 09/37] when pi added in 2sex variant --- R/kin_time_variant_2sex.R | 4 ++-- man/figures/README-unnamed-chunk-4-1.png | Bin 199981 -> 538108 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index 89efe85..e9448da 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -46,8 +46,8 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, zeros <- matrix(0, nrow=ages, ncol=ages) # age distribution at childborn - Pif <- pif - Pim <- pim + Pif <- pif; no_Pif <- FALSE + Pim <- pim; no_Pim <- FALSE if(is.null(pif)){ if(!is.null(nf)){ Pif <- rbind(t(t(nf * ff)/colSums(nf * ff)), matrix(0,ages,length(years_data))) diff --git a/man/figures/README-unnamed-chunk-4-1.png b/man/figures/README-unnamed-chunk-4-1.png index 118cd3c262e7dd264e55b45ceadc9e213bae6fa7..681db7c72a85d0413808359a3f75b29e5a27bd32 100644 GIT binary patch literal 538108 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
$t|Y46yZ(B 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 From b48917043b04e4b0276541e5337063fb658f67c5 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 10 Feb 2023 11:39:11 -0300 Subject: [PATCH 10/37] fix vector sex_kin --- R/kin2sex.R | 8 +------- R/kin_time_variant_2sex.R | 7 +++---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/R/kin2sex.R b/R/kin2sex.R index a9b2aa3..1401008 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -92,13 +92,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, } # reorder - kin_full <- kin_full %>% - dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) %>% - dplyr::mutate(kin_group = dplyr::case_when(kin %in% c("ys", "os") ~ "s", - kin %in% c("ya", "oa") ~ "a", - kin %in% c("coa", "cya") ~ "c", - kin %in% c("nys", "nos") ~ "n", - T ~ kin)) + kin_full <- kin_full %>%dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) # summary # select period/cohort diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index e9448da..a0bc808 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -148,12 +148,12 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ - x <- as.data.frame(x) + x <- data.table::as.data.table(x) x$year <- Y x$kin <- y x$sex_kin <- rep(c(rep("f",ages), rep("m",ages)),2) - x$age_kin <- rep(age,2) - x$alive <- c(rep("living",ages), rep("dead",ages)) + x$age_kin <- rep(agess, 2) + x$alive <- c(rep("living",agess), rep("dead",agess)) return(x) }) %>% data.table::rbindlist() %>% @@ -220,7 +220,6 @@ timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ cya[1:agess,1] = pkin[["nys"]][1:agess,] %*% (pif + pim) for (ix in 1:om){ - # ix = 1 phi[,ix+1] = Gt %*% phi[, ix] d[,ix+1] = Ut %*% pkin[["d"]][,ix] + Ft %*% phi[,ix] gd[,ix+1] = Ut %*% pkin[["gd"]][,ix] + Ft %*% pkin[["d"]][,ix] From 2dcf8998d3f0879ef6f6715fbe0b7b6bfba0392c Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 10 Feb 2023 12:01:14 -0300 Subject: [PATCH 11/37] dtplyr conflict --- R/kin2sex.R | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/R/kin2sex.R b/R/kin2sex.R index 1401008..4767d93 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -92,7 +92,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, } # reorder - kin_full <- kin_full %>%dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) + kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) # summary # select period/cohort @@ -107,14 +107,14 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, agrupar <- c("age_focal", "kin", "sex_kin", agrupar) kin_summary <- dplyr::bind_rows( - kin_full %>% + as.data.frame(kin_full) %>% dplyr::rename(total=living) %>% dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% dplyr::summarise(count_living = sum(total), mean_age = sum(total*age_kin)/sum(total), sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", "value"), - kin_full %>% + as.data.frame(kin_full) %>% dplyr::rename(total=dead) %>% dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% dplyr::summarise(count_dead = sum(total)) %>% From 323128be3ac7cb3947b5c38168706893e1a16ccf Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 15 Feb 2023 13:25:54 -0300 Subject: [PATCH 12/37] age_kin correction --- R/kin_time_variant_2sex.R | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index a0bc808..ea0ab6a 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -50,7 +50,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, Pim <- pim; no_Pim <- FALSE if(is.null(pif)){ if(!is.null(nf)){ - Pif <- rbind(t(t(nf * ff)/colSums(nf * ff)), matrix(0,ages,length(years_data))) + Pif <- t(t(nf * ff)/colSums(nf * ff)) }else{ Pif <- matrix(0, nrow=ages, ncol=n_years_data) no_Pif <- TRUE @@ -58,7 +58,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, } if(is.null(pim)){ if(!is.null(nm)){ - Pim <- rbind(t(t(nm * fm)/colSums(nm * fm)), matrix(0,ages,length(years_data))) + Pim <- t(t(nm * fm)/colSums(nm * fm)) }else{ Pim <- matrix(0, nrow=ages, ncol=n_years_data) no_Pim <- TRUE @@ -152,7 +152,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, x$year <- Y x$kin <- y x$sex_kin <- rep(c(rep("f",ages), rep("m",ages)),2) - x$age_kin <- rep(agess, 2) + x$age_kin <- rep(age, 4) x$alive <- c(rep("living",agess), rep("dead",agess)) return(x) }) %>% From 135129aed04bb0f72430895334ea322defbf4cc1 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 10 Mar 2023 12:56:00 -0300 Subject: [PATCH 13/37] pivot_longer specify values_to --- R/kin.R | 4 ++-- R/kin2sex.R | 4 ++-- man/plot_diagram.Rd | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/R/kin.R b/R/kin.R index cdc27d7..73f74be 100644 --- a/R/kin.R +++ b/R/kin.R @@ -110,7 +110,7 @@ kin <- function(p = NULL, f = NULL, dplyr::summarise(count_living = sum(total), mean_age = sum(total*age_kin)/sum(total), sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% - tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", "value"), + tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), kin_full %>% dplyr::rename(total=dead) %>% dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% @@ -120,7 +120,7 @@ kin <- function(p = NULL, f = NULL, dplyr::mutate(count_cum_dead = cumsum(count_dead), mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% dplyr::ungroup() %>% - tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", "value")) %>% + tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) diff --git a/R/kin2sex.R b/R/kin2sex.R index 4767d93..08da0c6 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -113,7 +113,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, dplyr::summarise(count_living = sum(total), mean_age = sum(total*age_kin)/sum(total), sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% - tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", "value"), + tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), as.data.frame(kin_full) %>% dplyr::rename(total=dead) %>% dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% @@ -123,7 +123,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, dplyr::mutate(count_cum_dead = cumsum(count_dead), mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% dplyr::ungroup() %>% - tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", "value")) %>% + tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) diff --git a/man/plot_diagram.Rd b/man/plot_diagram.Rd index 8d2448c..fdce2a5 100644 --- a/man/plot_diagram.Rd +++ b/man/plot_diagram.Rd @@ -7,13 +7,13 @@ plot_diagram(kin_total, rounding = 3) } \arguments{ -\item{kin_total}{data.frame. With columns \code{kin} with type and \code{count} with some measeure.} +\item{kin_total}{data.frame. values in column \code{kin} define the relative type - see \code{demokin_codes()}. Values in column \code{count} are the expected number of relatives.} -\item{rounding}{numeric. Estimation could have a lot of decimals. Rounding will make looks more clear the diagramm.} +\item{rounding}{numeric. Number of decimals to show in diagram.} } \value{ -A plot +A Keyfitz-style kinship plot. } \description{ -Given estimation of kin counts from \code{kins} function, draw a network diagramm. +Draws a Keyfitz-style kinship diagram given a kinship object created by the \code{kin} function. Displays expected kin counts for a Focal aged 'a'. } From 1fe0dfdfc9bdc699e429b1daa49ae5728eb758d4 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Thu, 16 Mar 2023 08:39:02 -0300 Subject: [PATCH 14/37] pi for 2 sex fix --- R/kin_time_invariant_2sex.R | 33 +++++++++++++-------------------- R/kin_time_variant_2sex.R | 22 +++++++++++----------- 2 files changed, 24 insertions(+), 31 deletions(-) diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index f864154..7e8fe16 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -54,21 +54,15 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, Ft_star[1:agess,1:ages] <- rbind(birth_female * Ff, (1-birth_female) * Ff) # parents age distribution under stable assumption in case no input - if(is.null(pif)){ - A = Uf + Ff - A_decomp = eigen(A) - lambda = as.double(A_decomp$values[1]) - w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) - pif = w*A[1,]/sum(w*A[1,]) - if(all(is.na(pif))) pif <- rep(1/ages, ages) - } - if(is.null(pim)){ - A = Um + Fm - A_decomp = eigen(A) - lambda = as.double(A_decomp$values[1]) - w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) - pim = w*A[1,]/sum(w*A[1,]) - if(all(is.na(pim))) pim <- rep(1/ages, ages) + if(is.null(pim) | is.null(pif)){ + A = Matrix::bdiag(Uf, Um) + Ft_star[1:agess,1:agess] + A_decomp = eigen(A) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + wf = w[1:ages] + wm = w[(ages+1):(2*ages)] + pif = wf * ff / sum(wf * ff) + pim = wm * fm / sum(wm * fm) } # initial count matrix (kin ages in rows and focal age in column) @@ -89,12 +83,12 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, m[1:(agess),1] = c(pif, pim) for(i in 1:(ages-1)){ # i = 1 - phi[,i+1] = Gt %*% phi[, i] - d[,i+1] = Ut %*% d[,i] + Ft %*% phi[,i] - gd[,i+1] = Ut %*% gd[,i] + Ft %*% d[,i] + phi[,i+1] = Gt %*% phi[,i] + d[,i+1] = Ut %*% d[,i] + Ft %*% phi[,i] + gd[,i+1] = Ut %*% gd[,i] + Ft %*% d[,i] ggd[,i+1] = Ut %*% ggd[,i] + Ft %*% gd[,i] m[,i+1] = Ut %*% m[,i] - ys[,i+1] = Ut %*% ys[,i] + Ft_star %*% m[,i] + ys[,i+1] = Ut %*% ys[,i] + Ft_star %*% m[,i] nys[,i+1] = Ut %*% nys[,i] + Ft %*% ys[,i] } @@ -152,7 +146,6 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, ) %>% purrr::reduce(rbind) - # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index ea0ab6a..f0b1479 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -45,7 +45,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, om <- max(age) zeros <- matrix(0, nrow=ages, ncol=ages) - # age distribution at childborn + # age distribution at child born Pif <- pif; no_Pif <- FALSE Pim <- pim; no_Pim <- FALSE if(is.null(pif)){ @@ -92,18 +92,18 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, Ft_star[1:agess,1:ages] <- rbind(birth_female * Fft, (1-birth_female) * Fft) Fl[[as.character(years_data[t])]] <- Ft Fl_star[[as.character(years_data[t])]] <- Ft_star - if(no_Pif){ - A <- Uf + Fft + # parents age distribution under stable assumption in case no input + if(no_Pim | no_Pif){ + A = Matrix::bdiag(Uf, Um) + Ft_star[1:agess,1:agess] A_decomp = eigen(A) - w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) - Pif[,t] <- w*A[1,]/sum(w*A[1,]) - } - if(no_Pim){ - A <- Um + Fmt - A_decomp = eigen(A) - w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) - Pim[,t] <- w*A[1,]/sum(w*A[1,]) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + wf = w[1:ages] + wm = w[(ages+1):(2*ages)] + Pif[,t] = wf * ff[,t] / sum(wf * ff[,t]) + Pim[,t] = wm * fm[,t] / sum(wm * fm[,t]) } + # project Ut <- as.matrix(Ul[[t]]) Ft <- as.matrix(Fl[[t]]) From c80c9d5a7d74dad6f325d978dce34ed0fa9630e4 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 26 Apr 2023 21:40:04 -0300 Subject: [PATCH 15/37] variant no pi fix --- DESCRIPTION | 2 +- R/kin_time_variant.R | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 4834c36..6abffee 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -12,7 +12,7 @@ License: MIT + file LICENSE Encoding: UTF-8 LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.2.1 +RoxygenNote: 7.2.3 Suggests: knitr, rmarkdown, diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index 7440641..8e31031 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -45,6 +45,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, pi_N_null_flag <- TRUE pi <- matrix(0, nrow=ages, ncol=n_years_data) }else{ + pi_N_null_flag <- FALSE pi <- rbind(t(t(n * f)/colSums(n * f)), matrix(0,ages,length(years_data))) } } @@ -63,7 +64,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, Ut = rbind(cbind(Ut,zeros),cbind(Mt,zeros)) ft = matrix(0, nrow=ages*2, ncol=ages*2) ft[1,1:ages] = f[,t] * birth_female - if(is.null(pi)){ + if(pi_N_null_flag){ A <- Ut[1:ages,1:ages] + ft[1:ages,1:ages] A_decomp = eigen(A) w <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) From 6eb6449b70811259acd432ebb2b239c54f6b75b0 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 28 Apr 2023 11:42:02 -0300 Subject: [PATCH 16/37] pi_N_null_flag --- R/kin_time_variant.R | 1 + 1 file changed, 1 insertion(+) diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index 8e31031..1d83108 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -38,6 +38,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, zeros <- matrix(0, nrow=ages, ncol=ages) # age distribution at childborn + pi_N_null_flag <- FALSE if(is.null(pi)){ if(is.null(n)){ # create pi and fill it during the loop From f45a1c0e0ecb392385b8c80f601dfafb44abcd1c Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 19 May 2023 12:58:38 -0300 Subject: [PATCH 17/37] preparing cran --- DESCRIPTION | 6 +- NAMESPACE | 2 +- R/aux_funs.R | 58 ++----- R/data.R | 9 ++ R/kin.R | 20 +++ R/kin2sex.R | 23 +++ R/kin_multi_stage.R | 191 ++++++++++++++---------- R/kin_time_invariant_2sex.R | 3 + R/kin_time_variant.R | 25 +++- R/kin_time_variant_2sex.R | 34 +---- README.Rmd | 4 +- README.md | 38 ++--- data/demokin_codes.rda | Bin 0 -> 607 bytes dev/demokin_codes.R | 28 ++++ man/demokin_codes.Rd | 13 +- man/kin2sex.Rd | 4 + man/kin_multi_stage.Rd | 11 +- man/output_period_cohort_combination.Rd | 29 ++-- man/rename_kin.Rd | 12 +- man/timevarying_kin_2sex.Rd | 5 +- tests/testthat/test-kin_multi_stage.R | 3 +- vignettes/Reference_OneSex.Rmd | 19 +-- 22 files changed, 318 insertions(+), 219 deletions(-) create mode 100644 data/demokin_codes.rda create mode 100644 dev/demokin_codes.R diff --git a/DESCRIPTION b/DESCRIPTION index 6abffee..fbb511d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,5 @@ Package: DemoKin -Title: Estimate population kin counts. +Title: Estimate population kin counts Description: Estimate population kin counts and its distribution by type, age and sex. The package implements one-sex and two-sex framework for studying living-death availability, with time varying rates or not, and multi-stage model. @@ -7,7 +7,8 @@ Version: 1.0.0 Authors@R: c( person("Iván", "Williams", email = "act.ivanwilliams@gmail.com", role = "cre"), person("Diego", "Alburez-Gutierrez", email = "alburezgutierrez@demogr.mpg.de", role = "aut"), - person("Xi", "Song", email = "xisong@sas.upenn.edu", role = "ctb")) + person("Xi", "Song", email = "xisong@sas.upenn.edu", role = "ctb"), + person("Caswell", "Hal", email = "caswell@demogr.mpg.de", role = "ctb")) License: MIT + file LICENSE Encoding: UTF-8 LazyData: true @@ -23,7 +24,6 @@ Imports: dplyr, tidyr, purrr, - HMDHFDplus, progress, matrixcalc, Matrix, diff --git a/NAMESPACE b/NAMESPACE index 2d84ee7..72c7b74 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,7 +1,6 @@ # Generated by roxygen2: do not edit by hand export("%>%") -export(demokin_codes) export(kin) export(kin2sex) export(kin_multi_stage) @@ -9,6 +8,7 @@ export(kin_time_invariant) export(kin_time_invariant_2sex) export(kin_time_variant) export(kin_time_variant_2sex) +export(output_period_cohort_combination) export(plot_diagram) export(rename_kin) importFrom(magrittr,"%>%") diff --git a/R/aux_funs.R b/R/aux_funs.R index e8c745b..bead1b1 100644 --- a/R/aux_funs.R +++ b/R/aux_funs.R @@ -1,49 +1,15 @@ - -#' print kin codes -#' @description Print kin codes and labels -#' @export -demokin_codes <- function(){ - codes <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") - caswell_codes <- c("t", "v", "a", "b", "c", "h", "g", "d", "p", "q", "r", "s", "m", "n") - labels <- c("Cousins from older aunt", "Cousins from younger aunt", "Daughter", "Grand-daughter", "Great-grand-daughter", "Great-grandmother", "Grandmother", "Mother", "Nieces from older sister", "Nieces from younger sister", "Aunt older than mother", "Aunt younger than mother", "Older sister", "Younger sister") - data.frame(DemoKin = codes, Caswell = caswell_codes, Label = labels, row.names = NULL) -} - #' rename kin -#' @description Rename kin labels depending consolidate some types -#' @export -rename_kin <- function(df, consolidate_column = "no"){ - - stopifnot("Argument 'consolidate_column' should be 'no' or a valid column name" = consolidate_column %in% c("no", colnames(df))) - - if(consolidate_column == "no"){ - - relatives <- c("Cousins from older aunt", "Cousins from younger aunt", "Daughter", "Grand-daughter", "Great-grand-daughter", "Great-grandmother", "Grandmother", "Mother", "Nieces from older sister", "Nieces from younger sister", "Aunt older than mother", "Aunt younger than mother", "Older sister", "Younger sister") - names(relatives) <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") - } else { - - # Combine kin types irrespective of whether they come from older - # or younger sibling lines - consolidate_vec <- c("c", "c", "d", "gd", "ggd", "ggm", "gm", "m", "n", "n", "a", "a", "s", "s") - names(consolidate_vec) <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") - - # Rename kin types from codes to actual words - relatives <- c("Cousins", "Daughter", "Grand-daughter", "Great-grand-daughter", "Great-grandmother", "Grandmother", "Mother", "Nieces", "Aunt", "Sister") - names(relatives) <- unique(consolidate_vec) - - df <- as.data.frame(df) - df$count <- df[ , consolidate_column] - - df <- - df %>% - dplyr::mutate(kin = consolidate_vec[kin]) %>% - dplyr::group_by(age_focal, kin) %>% - dplyr::summarise(count = sum(count)) %>% - dplyr::ungroup() - - - } - df$kin <- relatives[df$kin] - df +#' @description Add kin labels depending the sex +#' @details See table `demokin_codes` to know label options. +#' @param df data.frame. A data frame with variable `kin` with `DemoKin` codes to be labelled. +#' @param sex character. "f" for female, "m" for male or "2sex" for both sex naming. +#' @export +rename_kin <- function(df, sex = "f"){ + if(sex == "f") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_female")] + if(sex == "m") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_male")] + if(sex == "2sex") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_2sex")] + colnames(demokin_codes_sex) <- c("kin", "kin_label") + df %>% + dplyr::left_join(demokin_codes_sex) } diff --git a/R/data.R b/R/data.R index b11636a..43be162 100644 --- a/R/data.R +++ b/R/data.R @@ -149,3 +149,12 @@ #' @source #' Caswell (2022) "fra_surv_sex" + +#' DemoKin codes, Caswell (2020) codes, and useful labels. +#' +#' DemoKin codes, Caswell (2020) codes, and useful labels. +#' @docType data +#' @format +#' A data.frame with codes and labels for distinction between kin types. + +"demokin_codes" diff --git a/R/kin.R b/R/kin.R index 73f74be..b5a898b 100644 --- a/R/kin.R +++ b/R/kin.R @@ -52,6 +52,9 @@ kin <- function(p = NULL, f = NULL, U = lifecycle::deprecated()) { + # global vars + living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + # changed arguments if (lifecycle::is_present(stable)) { lifecycle::deprecate_warn("0.0.0.9000", "kin(stable)", details = "Used time_invariant") @@ -64,9 +67,15 @@ kin <- function(p = NULL, f = NULL, # kin to return all_possible_kin <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") + output_kin_asked <- output_kin if(is.null(output_kin)){ output_kin <- all_possible_kin }else{ + if("s" %in% output_kin) output_kin <- c(output_kin, "os", "ys") + if("c" %in% output_kin) output_kin <- c(output_kin, "coa", "cya") + if("a" %in% output_kin) output_kin <- c(output_kin, "oa", "ya") + if("n" %in% output_kin) output_kin <- c(output_kin, "nos", "nys") + output_kin <- output_kin[!output_kin %in% c("s", "c", "a", "n")] output_kin <- match.arg(tolower(output_kin), all_possible_kin, several.ok = TRUE) } @@ -91,6 +100,17 @@ kin <- function(p = NULL, f = NULL, message(paste0("Assuming stable population before ", min(years_data), ".")) } + # re-group if grouped type is asked + if(length(output_kin_asked)!=length(output_kin)){ + if("s" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("os", "ys")] <- "s" + if("c" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("coa", "cya")] <- "c" + if("a" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("oa", "ya")] <- "a" + if("n" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("nos", "nys")] <- "n" + kin_full <- kin_full %>% + dplyr::summarise(living = sum(living), dead = sum(dead), + .by = c(kin, age_kin, age_focal, cohort, year)) + } + # select period/cohort if(!is.null(output_cohort)){ agrupar <- "cohort" diff --git a/R/kin2sex.R b/R/kin2sex.R index 08da0c6..cd044cb 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -38,6 +38,10 @@ #' @examples #' \dontrun{ #' # Kin expected count by relative sex for a French female based on 2012 rates. +#' fra_fert_f <- fra_asfr_sex[,"ff"] +#' fra_fert_m <- fra_asfr_sex[,"fm"] +#' fra_surv_f <- fra_surv_sex[,"pf"] +#' fra_surv_m <- fra_surv_sex[,"pm"] #' fra_2012 <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m) #' head(fra_2012) #'} @@ -52,14 +56,22 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, output_cohort = NULL, output_period = NULL, output_kin=NULL) { + # global vars + living<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-sex_kin<-age_kin<-dead<-NULL age <- as.integer(rownames(pf)) years_data <- as.integer(colnames(pf)) # kin to return all_possible_kin <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") + output_kin_asked <- output_kin if(is.null(output_kin)){ output_kin <- all_possible_kin }else{ + if("s" %in% output_kin) output_kin <- c(output_kin, "os", "ys") + if("c" %in% output_kin) output_kin <- c(output_kin, "coa", "cya") + if("a" %in% output_kin) output_kin <- c(output_kin, "oa", "ya") + if("n" %in% output_kin) output_kin <- c(output_kin, "nos", "nys") + output_kin <- output_kin[!output_kin %in% c("s", "c", "a", "n")] output_kin <- match.arg(tolower(output_kin), all_possible_kin, several.ok = TRUE) } @@ -94,6 +106,17 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, # reorder kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) + # re-group if grouped type is asked + if(length(output_kin_asked)!=length(output_kin)){ + if("s" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("os", "ys")] <- "s" + if("c" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("coa", "cya")] <- "c" + if("a" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("oa", "ya")] <- "a" + if("n" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("nos", "nys")] <- "n" + kin_full <- kin_full %>% + dplyr::summarise(living = sum(living), dead = sum(dead), + .by = c(kin, age_kin, age_focal, sex_kin, cohort, year)) + } + # summary # select period/cohort if(!is.null(output_cohort)){ diff --git a/R/kin_multi_stage.R b/R/kin_multi_stage.R index 7129134..bea168f 100644 --- a/R/kin_multi_stage.R +++ b/R/kin_multi_stage.R @@ -2,12 +2,13 @@ #' @description Implementation of age-stage kin estimates (multi-state) by Caswell (2020). Stages are implied in length of input lists. -#' @param U list. age elemnts with column-stochastic transition matrix with dimension for the state space, conditional on survival. -#' @param f matrix. state-specific fertility (age in rows and states in columns). -#' @param D matrix. survival probabilities by state (age in rows and states in columns) -#' @param H matrix. assigns the offspring of individuals in some stage to the appropriate age class with 1 (age in rows and states in columns). +#' @param U list. age elements with column-stochastic transition matrix with dimension for the state space, conditional on survival. +#' @param f matrix. state-specific fertility (age in rows and states in columns). Is accepted also a list with for each age-class. +#' @param D matrix. survival probabilities by state (age in rows and states in columns). Is accepted also a list for each state with survival matrices. +#' @param H matrix. assigns the offspring of individuals in some stage to the appropriate age class (age in rows and states in columns). Is accepted also a list with a matrix for each state. #' @param output_kin character. kin to return. For example "m" for mother, "d" for daughter. See the `vignette` for all kin types. #' @param birth_female numeric. Female portion at birth. +#' @param parity logical. parity states imply age distribution of mothers re-scaled to not have parity 0 when Focal born. Default `TRUE`. #' @param list_output logical. Results as a list. Default `FALSE`. #' @return A data frame with focal´s age, related ages and type of kin @@ -16,96 +17,109 @@ #' kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, - birth_female = 1/2.04, - output_kin = NULL, - list_output = FALSE){ + birth_female = 1/2.04, + output_kin = NULL, + parity = FALSE, + list_output = FALSE){ + # mandatory U as a list if(!is.list(U)) stop("U must be a list with age length of elements, and stage transitiotn matrix for each one.") - # stages and ages + # stages and age-classes s <- ncol(U[[1]]) ages <- length(U) age <- (1:ages)-1 - # build matrix structure from data.frame input - H <- purrr::map(colnames(D), function(Y){ - Ht = matrix(0, nrow=ages, ncol=ages) - Ht[1,] <- 1 - Ht - }) - D <- purrr::map(colnames(D), function(Y){ + # build H if it is not already a list + if(!is.list(H)){ + H <- purrr::map(1:s, function(Y){ + Ht = matrix(0, nrow=ages, ncol=ages) + Ht[1,] <- 1 + Ht + }) + } + + # build D if it is not already a list + if(!is.list(D)){ + D <- purrr::map(1:s, function(Y){ X <- D[,Y] Dt = matrix(0, nrow=ages, ncol=ages) Dt[row(Dt)-1 == col(Dt)] <- X[-ages] Dt[ages, ages] = X[ages] Dt }) - f <- purrr::map(1:ages, function(Y){ - X <- f[Y,] - ft = matrix(0, nrow=s, ncol=s) - ft[1,] <- X - ft - }) - - # build block matrix + } + + # build f if it is not already a list + if(!is.list(f)){ + f <- purrr::map(1:ages, function(Y){ + X <- f[Y,] + ft = matrix(0, nrow=s, ncol=s) + ft[1,] <- X + ft + }) + } + + # build block matrices bbU <- Matrix::bdiag(U) bbF <- Matrix::bdiag(f) * birth_female bbD <- Matrix::bdiag(D) bbH <- Matrix::bdiag(H) - # rearrange with conmutation matrix + # order transitions: first state within age, then age given state K <- matrixcalc::commutation.matrix(s, ages) Ut <- t(K) %*% bbD %*% K %*% bbU ft <- t(K) %*% bbH %*% K %*% bbF + + # focal transition but conditioned to survive Gt <- Ut%*% MASS::ginv(diag(colSums(as.matrix(Ut)))) - # stable distribution mothers: age x stage + # stable distribution of mothers At <- Ut + ft A_decomp <- eigen(At) lambda <- as.double(A_decomp$values[1]) wt <- as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) pi <- wt*At[1,]/sum(wt*At[1,]) - # marginal mothers age - Iom <- diag(1,ages, ages); - ones <- t(rep(1,s)) + # useful vectors and matrices + ones <- t(rep(1,s)) onesom <- t(rep(1,s*ages)) - piage <- kronecker(Iom,ones) %*% pi - - # momarray is an array with pit in each column - momarray <- pi %*% matrix(1,1,ages) - Iom = diag(1, ages) - Is = diag(1, s) - Isom = diag(1, s*ages) - zsom = matrix(0, s*ages, s*ages) - Z=Is; - Z[1,1]=0; - for(i in 1:ages){ - # imom = 1 - E <- Iom[,i] %*% t(Iom[i,]); # al cuadrado? - momarray[,i] <- kronecker(E,Z) %*% momarray[,i] - } - # re-scale - momarray <- momarray %*% MASS::ginv(diag(colSums(momarray))) - - # considering deaths - phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0,ages*s*2,ages) - phi[1,1] = 1 + onesa <- t(rep(1,ages)) + Iom <- diag(1, ages) + Is <- diag(1, s) + Isom <- diag(1, s*ages) + zsom <- matrix(0, s*ages, s*ages) + + # momarray is an array with pi in each column + piage <- kronecker(Iom,ones) %*% pi + momarray <- pi %*% onesa + + # considering deaths (no cumulated): reacreate block struct matrices + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0,ages * s * 2, ages) Mtt <- diag(as.numeric(onesom - onesom %*% Ut)) Utt <- rbind(cbind(Ut,zsom), cbind(Mtt,Isom)) %>% as.matrix() ftt <- rbind(cbind(ft,zsom), cbind(zsom,zsom)) %>% as.matrix() Gtt <- rbind(cbind(Gt,zsom), cbind(zsom,zsom)) %>% as.matrix() sages <- 1:(ages*s) - # no considering deaths - # phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0,ages*s,ages) - # phi[1,1] = 1 - # Utt = Ut %>% as.matrix() - # ftt = ft %>% as.matrix() - # Gtt = Gt %>% as.matrix() + # if parity: restriction to no initial mothers with 0 parity + if(parity){ + Z=Is + Z[1,1]=0 + for(i in 1:ages){ + E <- Iom[,i] %*% t(Iom[i,]) + momarray[,i] <- kronecker(E,Z) %*% momarray[,i] + } + # re-scale + momarray <- momarray %*% MASS::ginv(diag(colSums(momarray))) + # no 0 parity mothers: (momarray %*% piage)[seq(1,600,6)] + m[sages,1] = momarray %*% piage + }else{ + m[sages,1] = pi + } # focal´s trip - m[sages,1] = momarray %*% piage; + phi[1,1] = 1 for(i in 1:(ages-1)){ phi[,i+1] = Gtt %*% phi[,i] d[,i+1] = Utt %*% d[,i] + ftt %*% phi[,i] @@ -145,7 +159,8 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, } # get results - kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + kin_list <- list(focal = phi, + d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) # only selected kin @@ -153,34 +168,56 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, kin_list <- kin_list %>% purrr::keep(names(.) %in% output_kin) } - # as data.frame - kin <- purrr::map2(kin_list, names(kin_list), - function(x,y){ - out <- as.data.frame(x) - colnames(out) <- age - out %>% - dplyr::mutate(kin = y, - age_kin = rep(sort(rep(age,s)),2), - stage_kin = rep(rep(1:s,ages),2), - alive = c(rep("living",s*ages),rep("dead",s*ages)) - # age_kin = sort(rep(age,s)), - # stage_kin = rep(1:s,ages), - # alive = c(rep("yes",s*ages)) - ) %>% - tidyr::pivot_longer(c(-age_kin, -stage_kin, -kin, -alive), names_to = "age_focal", values_to = "count") %>% - dplyr::mutate(age_focal = as.integer(age_focal)) %>% - tidyr::pivot_wider(names_from = alive, values_from = count) - }) %>% + # kin_full as data.frame + kin_full <- purrr::map2(kin_list, names(kin_list), + function(x,y){ + out <- as.data.frame(x) + colnames(out) <- age + out %>% + dplyr::mutate(kin = y, + age_kin = rep(sort(rep(age,s)),2), + stage_kin = rep(rep(1:s,ages),2), + alive = c(rep("living",s*ages),rep("dead",s*ages))) %>% + tidyr::pivot_longer(c(-age_kin, -stage_kin, -kin, -alive), names_to = "age_focal", values_to = "count") %>% + dplyr::mutate(age_focal = as.integer(age_focal)) %>% + tidyr::pivot_wider(names_from = alive, values_from = count) + }) %>% purrr::reduce(rbind) # results as list? if(list_output) { out <- kin_list }else{ - out <- kin + out <- kin_full } + # end return(out) } - +# function to create lists for the parity case given a set of coniditonal rates and survival probabilities with stages in columns and ages in rows +make_mulstistate_parity_matrices <- function(f_parity, p_parity, birth_female=.5){ + ages <- nrow(f_parity) + stages <- ncol(f_parity) + 1 + F_list <- U_list <- D_list <- H_list <- list() + for(x in 1:ages){ + cond_probs <- as.numeric(f_parity[x,]/(1+f_parity[x,]/2)) + U_age <- matrix(0,stages,stages) + diag(U_age) <- c(1 - cond_probs, 1) + U_age[row(U_age)-1==col(U_age)] <- cond_probs + U_list[[x]] <- U_age + F_age <- matrix(0,stages,stages) + F_age[1,] <- c(cond_probs,cond_probs[stages-1])*birth_female + F_list[[x]] <- F_age + } + p_parity$px_last <- p_parity[,stages-1] + for(s in 1:stages){ + H_age <- D_age <- matrix(0,ages,ages) + H_age[1,] <- 1 + D_age[row(D_age)-1==col(D_age)] <- p_parity[-ages,s] + D_age[stages, stages] <- p_parity[ages,s] + H_list[[s]] <- H_age + D_list[[s]] <- D_age + } + return(list(U = U_list, F. = F_list, H = H_list, D = D_list)) +} diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index 7e8fe16..e8e4c4b 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -27,6 +27,9 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, output_kin = NULL, list_output = FALSE){ + # global vars + living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + # same input length if(!all(length(pf)==length(pm), length(pf)==length(ff), length(pf)==length(fm))) stop("Lengths of p's and f's should be the same") diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index 1d83108..55adffe 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -20,15 +20,18 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, birth_female = 1/2.04, list_output = FALSE){ + # global vars + living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + # check input if(is.null(p) | is.null(f)) stop("You need values on p and f.") # diff years - if(!any(as.integer(colnames(p)) == as.integer(colnames(f)))) stop("Data should be from same years.") + if(!any(as.integer(colnames(p)) == as.integer(colnames(f)))) stop("Make sure that p and f are matrices and have the same column names.") # data should be from same interval years years_data <- as.integer(colnames(p)) - if(var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") + if(var(diff(years_data))!=0) stop("The years given as column names in the p and f matrices must be equally spaced.") # utils age <- 0:(nrow(p)-1) @@ -104,6 +107,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, purrr::map(~ .[selected_kin_position]) # long format + cat("Preparing output...") kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ @@ -123,7 +127,6 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, X[X$age_focal %in% out_selected$age[out_selected$year==as.integer(Y)],] %>% data.table::dcast(year + kin + age_kin + age_focal + cohort ~ alive, value.var = "count") }) %>% data.table::rbindlist() - pb$tick() # results as list? if(list_output) { @@ -193,10 +196,17 @@ timevarying_kin<- function(Ut, ft, pit, ages, pkin){ return(kin_list) } -#' defince apc combination to return +#' APC combination to return -#' @description defince apc to return. -#' +#' @description define APC combination to return in `kin` and `kin2sex`. +#' @details Because returning all period and cohort data from a huge time-series would be hard memory consuming, +#' this function is an auxiliary one to deal with selection from inputs `output_cohort` and `output_period`. +#' @param output_cohort integer. A vector with selected calendar years. +#' @param output_period integer. A vector with selected cohort years. +#' @param age integer. A vector with ages from the kinship network to be filtered. +#' @param years_data integer. A vector with years from the time-varying kinship network to be filtered. +#' @return data.frame with years and ages to filter in `kin` and `kin_2sex` functions. +#' @export output_period_cohort_combination <- function(output_cohort = NULL, output_period = NULL, age = NULL, years_data = NULL){ # no specific @@ -212,10 +222,11 @@ output_period_cohort_combination <- function(output_cohort = NULL, output_period unlist(use.names = F)) }else{selected_cohorts_year_age <- c()} - # period year combination + # period combination if(!is.null(output_period)){selected_years_age <- expand.grid(age, output_period) %>% dplyr::rename(age=1,year=2) }else{selected_years_age <- c()} # end return(dplyr::bind_rows(selected_years_age,selected_cohorts_year_age) %>% dplyr::distinct()) } + diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index f0b1479..cd9d560 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -30,6 +30,9 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, output_cohort = NULL, output_period = NULL, output_kin = NULL, list_output = FALSE){ + # global vars + living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + # same input length if(!all(dim(pf) == dim(pm), dim(pf) == dim(ff), dim(pf) == dim(fm))) stop("Dimension of P's and F's should be the same") @@ -145,6 +148,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% purrr::map(~ .[selected_kin_position]) # long format + cat("Preparing output...") kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ @@ -165,7 +169,6 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, X <- X[X$age_focal %in% out_selected$age[out_selected$year==as.integer(Y)],] X <- data.table::dcast(X, year + kin + sex_kin + age_kin + age_focal + cohort ~ alive, value.var = "count", fun.aggregate = sum) }) %>% data.table::rbindlist() - pb$tick() # results as list? if(list_output) { @@ -184,7 +187,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, #' @param Ft numeric. A matrix of age-specific fertility rates. #' @param Ft_star numeric. Ft but for female fertility. #' @param pit numeric. A matrix with distribution of childbearing. -#' sex_focal +#' @param sex_focal character. "f" for female or "m" for male. #' @param ages numeric. #' @param pkin numeric. A list with kin count distribution in previous year. # @@ -242,30 +245,3 @@ timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ return(kin_list) } - -#' APC combination to return - -#' @description define apc combination to return in `kin` and `kin2sex`. -#' -output_period_cohort_combination <- function(output_cohort = NULL, output_period = NULL, age = NULL, years_data = NULL){ - - # no specific - if(is.null(output_period) & is.null(output_cohort)){ - message("No specific output was set. Return all period data.") - output_period <- years_data - } - - # cohort combination - if(!is.null(output_cohort)){ - selected_cohorts_year_age <- data.frame(age = rep(age,length(output_cohort)), - year = purrr::map(output_cohort,.f = ~.x+age) %>% - unlist(use.names = F)) - }else{selected_cohorts_year_age <- c()} - - # period year combination - if(!is.null(output_period)){selected_years_age <- expand.grid(age, output_period) %>% dplyr::rename(age=1,year=2) - }else{selected_years_age <- c()} - - # end - return(dplyr::bind_rows(selected_years_age,selected_cohorts_year_age) %>% dplyr::distinct()) -} diff --git a/README.Rmd b/README.Rmd index d2426f1..721e1ed 100644 --- a/README.Rmd +++ b/README.Rmd @@ -42,7 +42,7 @@ devtools::install_github("IvanWilli/DemoKin") ## Usage -Consider an average Swedish woman called 'Focal'. For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their life (the 'time-invariant' assumption in Caswell [2019]). +Consider an average Swedish woman called 'Focal'. For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their life (the 'time-invariant' assumption in Caswell (2019)). We then ask: @@ -73,7 +73,7 @@ plot_diagram(kin_total, rounding = 2) Relatives are identified by a unique code: ```{r, fig.height=6, fig.width=8, echo=FALSE} -kable(DemoKin::demokin_codes()[-2]) +kable(DemoKin::demokin_codes[,c(1,3)]) ``` ## Vignette diff --git a/README.md b/README.md index a8badbf..e5d467d 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ devtools::install_github("IvanWilli/DemoKin") Consider an average Swedish woman called ‘Focal’. For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their -life (the ‘time-invariant’ assumption in Caswell \[2019\]). +life (the ‘time-invariant’ assumption in Caswell (2019)). We then ask: @@ -71,22 +71,26 @@ plot_diagram(kin_total, rounding = 2) Relatives are identified by a unique code: -| DemoKin | Label | -|:--------|:---------------------------| -| coa | Cousins from older aunt | -| cya | Cousins from younger aunt | -| d | Daughter | -| gd | Grand-daughter | -| ggd | Great-grand-daughter | -| ggm | Great-grandmother | -| gm | Grandmother | -| m | Mother | -| nos | Nieces from older sister | -| nys | Nieces from younger sister | -| oa | Aunt older than mother | -| ya | Aunt younger than mother | -| os | Older sister | -| ys | Younger sister | +| DemoKin | Labels_female | +|:--------|:----------------------------| +| coa | Cousins from older aunts | +| cya | Cousins from younger aunts | +| c | Cousins | +| d | Daughters | +| gd | Grand-daughters | +| ggd | Great-grand-daughters | +| ggm | Great-grandmothers | +| gm | Grandmothers | +| m | Mother | +| nos | Nieces from older sisters | +| nys | Nieces from younger sisters | +| n | Nieces | +| oa | Aunts older than mother | +| ya | Aunts younger than mother | +| a | Aunts | +| os | Older sisters | +| ys | Younger sisters | +| s | Sisters | ## Vignette diff --git a/data/demokin_codes.rda b/data/demokin_codes.rda new file mode 100644 index 0000000000000000000000000000000000000000..3859ab313ac97b245ae997bc2c4d20df6deaf116 GIT binary patch literal 607 zcmV-l0-*gLiwFP!0000027OgsbJ9Q*O-KU;#WL+U+M<^J0LqNM^tH;A2bDTjX3A4% zNtPsIvWwYJ2;8tnxbKg|77 zode1wMO~1=EMI=$OA#^Ao2NYK@z|$nk1SaRWu2k?nlD*kAQ}px+~$xhgD|5h1dc{2 zVSe8?!p}!3C0ReHOde~=glA!qc{(b`>Yul+@=nJQ^(ZPxL_*uVs{^1S45{xR%6oCW zDOc^4g@pAIbl@%xJCyut<`b2Nmv)d|aooO|jqL)~<^L?W>K+0U~pSZz)CA^Dfal`^+?z}LH{gkrGxiga| zx|jF`o+rL+TpE=s+y8!K5?Y z!!YkQzSdku5(>(@(5Ioi>pn&-7mkP(jbr#n_(Wzj77ufpkeI6A6BVooy%qGQd8!u^ t0jEN+<&%tD&QnRqfHzaVx&)%_%{BH*zU1ZbTYmm*o`1DPph(FF002*=Cr% +demokin_codes %>% kable ``` @@ -92,7 +92,6 @@ We can also visualize the age distribution of relatives when Focal is 35 years o ```{r, fig.height=6, fig.width=8} swe_2015[["kin_full"]] %>% - DemoKin::rename_kin() %>% filter(age_focal == 35) %>% ggplot() + geom_line(aes(age_kin, living)) + @@ -110,7 +109,6 @@ The `kin` function also includes a summary output with the count of living kin, ```{r, fig.height=6, fig.width=8} swe_2015[["kin_summary"]] %>% - DemoKin::rename_kin() %>% filter(age_focal == 35) %>% select(kin, count_living, mean_age, sd_age) %>% mutate_if(is.numeric, round, 2) %>% @@ -145,7 +143,6 @@ swe_time_varying <- ) swe_time_varying$kin_summary %>% - DemoKin::rename_kin() %>% ggplot(aes(age_focal,count_living,color=factor(cohort))) + scale_y_continuous(name = "",labels = seq(0,3,.2),breaks = seq(0,3,.2))+ geom_line(color = 1)+ @@ -165,7 +162,6 @@ The function `kin` also includes information on the number of relatives lost by ```{r, fig.height=6, fig.width=8, message=FALSE, warning=FALSE} swe_time_varying$kin_summary %>% - DemoKin::rename_kin() %>% ggplot() + geom_line(aes(age_focal, count_cum_dead)) + labs(y = "Expected number of deceased relatives") + @@ -177,7 +173,6 @@ Given these population-level measures, we can compute Focal's the mean age at th ```{r} swe_time_varying$kin_summary %>% - rename_kin() %>% filter(age_focal == 50) %>% select(kin,count_cum_dead,mean_age_lost) %>% mutate_if(is.numeric, round, 2) %>% @@ -202,7 +197,6 @@ swe_2015_prevalence <- swe_2015$kin_full %>% left_join(swe_2015_prevalence) %>% group_by(kin, age_focal) %>% - rename_kin() %>% summarise( prevalent = sum(living * prev), no_prevalent = sum(living * (1-prev)) @@ -237,8 +231,8 @@ demokin_svk1980_caswell2020 <- f = svk_fxs, D = svk_pxs, H = svk_Hxs, - birth_female=1 - ) + birth_female=1, + parity = TRUE) ``` Note that the function ask for risks already in a certain matrix format. As an example, consider the age-parity distribution of aunts, when Focal is 20 and 60 yo (this is equivalent to Figure 4 in Caswell [2021]). @@ -247,8 +241,8 @@ Note that the function ask for risks already in a certain matrix format. As an e demokin_svk1980_caswell2020 %>% filter(kin %in% c("oa","ya"), age_focal %in% c(20,60)) %>% mutate(parity = as.integer(stage_kin)-1, - parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity)), - parity = forcats::fct_rev(parity)) %>% + parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity)) + ) %>% group_by(age_focal, age_kin, parity) %>% summarise(count= sum(living)) %>% ggplot() + @@ -265,8 +259,7 @@ We can also see the portion of living daughters and mothers at different parity demokin_svk1980_caswell2020 %>% filter(kin %in% c("d","m")) %>% mutate(parity = as.integer(stage_kin)-1, - parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity)), - parity = forcats::fct_rev(parity)) %>% + parity = case_when(parity == 5 ~ "5+", T ~ as.character(parity))) %>% group_by(age_focal, kin, parity) %>% summarise(count= sum(living)) %>% DemoKin::rename_kin() %>% From 89ace424c13602e231a13d544bc2934b3f6bee59 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 24 May 2023 04:30:57 -0300 Subject: [PATCH 18/37] reassign deaths --- NAMESPACE | 1 + R/kin.R | 18 +++++++++++++++++- R/kin2sex.R | 2 +- R/kin_multi_stage.R | 30 +++--------------------------- R/kin_time_invariant.R | 2 ++ R/kin_time_invariant_2sex.R | 3 +++ R/kin_time_variant.R | 3 +++ R/kin_time_variant_2sex.R | 3 +++ R/plot_diagramm.R | 2 ++ man/dead_age_reasign.Rd | 17 +++++++++++++++++ 10 files changed, 52 insertions(+), 29 deletions(-) create mode 100644 man/dead_age_reasign.Rd diff --git a/NAMESPACE b/NAMESPACE index 72c7b74..7a702a6 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,6 +1,7 @@ # Generated by roxygen2: do not edit by hand export("%>%") +export(dead_age_reasign) export(kin) export(kin2sex) export(kin_multi_stage) diff --git a/R/kin.R b/R/kin.R index b5a898b..df677e9 100644 --- a/R/kin.R +++ b/R/kin.R @@ -101,7 +101,7 @@ kin <- function(p = NULL, f = NULL, } # re-group if grouped type is asked - if(length(output_kin_asked)!=length(output_kin)){ + if(!is.null(output_kin_asked) & length(output_kin_asked)!=length(output_kin)){ if("s" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("os", "ys")] <- "s" if("c" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("coa", "cya")] <- "c" if("a" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("oa", "ya")] <- "a" @@ -148,3 +148,19 @@ kin <- function(p = NULL, f = NULL, kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) return(kin_out) } + + +#' Reassign kin dead to proper Focal age +#' @description Reassign death to proper Focal risk age +#' @details Matrix methods set dead experience in the next age where risk happened. This function return dead experienced in x from x+1. +#' @param kin table. A kin output in table format from function `kin_time_invariant`, `kin_time_variant`, `kin_time_invariant_2sex`, `kin_time_invariant_2sex`, `kin_multi_stage`. +#' @export +dead_age_reasign <- function(kin){ + kin <- data.table::as.data.table(kin) + kin_dt <- kin[, -which(names(kin) == "living"), with = FALSE] + kin_dt$age_focal <- kin_dt$age_focal - 1 + kin_dt <- kin_dt[kin_dt$age_focal >= 0, ] + kin <- merge(kin_dt, kin[, -which(names(kin) == "dead"), with = FALSE], all.y = TRUE) + kin$dead[is.na(kin$dead)] <- 0 + return(kin) +} diff --git a/R/kin2sex.R b/R/kin2sex.R index cd044cb..ac99530 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -107,7 +107,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) # re-group if grouped type is asked - if(length(output_kin_asked)!=length(output_kin)){ + if(!is.null(output_kin_asked) & length(output_kin_asked)!=length(output_kin)){ if("s" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("os", "ys")] <- "s" if("c" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("coa", "cya")] <- "c" if("a" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("oa", "ya")] <- "a" diff --git a/R/kin_multi_stage.R b/R/kin_multi_stage.R index bea168f..267e359 100644 --- a/R/kin_multi_stage.R +++ b/R/kin_multi_stage.R @@ -184,6 +184,9 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, }) %>% purrr::reduce(rbind) + # reassign dead to proper focal age + kin_full <- dead_age_reasign(kin_full) + # results as list? if(list_output) { out <- kin_list @@ -194,30 +197,3 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, # end return(out) } - -# function to create lists for the parity case given a set of coniditonal rates and survival probabilities with stages in columns and ages in rows -make_mulstistate_parity_matrices <- function(f_parity, p_parity, birth_female=.5){ - ages <- nrow(f_parity) - stages <- ncol(f_parity) + 1 - F_list <- U_list <- D_list <- H_list <- list() - for(x in 1:ages){ - cond_probs <- as.numeric(f_parity[x,]/(1+f_parity[x,]/2)) - U_age <- matrix(0,stages,stages) - diag(U_age) <- c(1 - cond_probs, 1) - U_age[row(U_age)-1==col(U_age)] <- cond_probs - U_list[[x]] <- U_age - F_age <- matrix(0,stages,stages) - F_age[1,] <- c(cond_probs,cond_probs[stages-1])*birth_female - F_list[[x]] <- F_age - } - p_parity$px_last <- p_parity[,stages-1] - for(s in 1:stages){ - H_age <- D_age <- matrix(0,ages,ages) - H_age[1,] <- 1 - D_age[row(D_age)-1==col(D_age)] <- p_parity[-ages,s] - D_age[stages, stages] <- p_parity[ages,s] - H_list[[s]] <- H_age - D_list[[s]] <- D_age - } - return(list(U = U_list, F. = F_list, H = H_list, D = D_list)) -} diff --git a/R/kin_time_invariant.R b/R/kin_time_invariant.R index 2f85412..c8e246c 100644 --- a/R/kin_time_invariant.R +++ b/R/kin_time_invariant.R @@ -107,6 +107,8 @@ kin_time_invariant <- function(p = NULL, f = NULL, ) %>% purrr::reduce(rbind) + # reassign dead to proper focal age + kin <- dead_age_reasign(kin) # results as list? if(list_output) { diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index e8e4c4b..fe9b0d0 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -149,6 +149,9 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, ) %>% purrr::reduce(rbind) + # reassign dead to proper focal age + kin <- dead_age_reasign(kin) + # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index 55adffe..ff74e76 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -128,6 +128,9 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, data.table::dcast(year + kin + age_kin + age_focal + cohort ~ alive, value.var = "count") }) %>% data.table::rbindlist() + # reassign dead to proper focal age + kin <- dead_age_reasign(kin) + # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index cd9d560..2f34bd0 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -170,6 +170,9 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, X <- data.table::dcast(X, year + kin + sex_kin + age_kin + age_focal + cohort ~ alive, value.var = "count", fun.aggregate = sum) }) %>% data.table::rbindlist() + # reassign dead to proper focal age + kin <- dead_age_reasign(kin) + # results as list? if(list_output) { out <- kin_list diff --git a/R/plot_diagramm.R b/R/plot_diagramm.R index 87d55b1..f1750f1 100644 --- a/R/plot_diagramm.R +++ b/R/plot_diagramm.R @@ -9,6 +9,8 @@ plot_diagram <- function (kin_total, rounding = 3) { rels <- c("ggd", "gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", "os", "nos", "ya", "cya", "ys", "nys") + # check all types are in + if(!any(unique(kin_total$kin) %in% rels)) stop("You need all specific types. If some are missed or grouped, for example old and younger sisters in 's', this will fail.") vertices <- data.frame( nodes = rels , x = c(1, 1, 1, 1, 1, 1, 1, 0, -1, 0, -1, 2, 3, 2, 3) diff --git a/man/dead_age_reasign.Rd b/man/dead_age_reasign.Rd new file mode 100644 index 0000000..5599a61 --- /dev/null +++ b/man/dead_age_reasign.Rd @@ -0,0 +1,17 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin.R +\name{dead_age_reasign} +\alias{dead_age_reasign} +\title{Reassign kin dead to proper Focal age} +\usage{ +dead_age_reasign(kin) +} +\arguments{ +\item{kin}{table. A kin output in table format from function \code{kin_time_invariant}, \code{kin_time_variant}, \code{kin_time_invariant_2sex}, \code{kin_time_invariant_2sex}, \code{kin_multi_stage}.} +} +\description{ +Reassign death to proper Focal risk age +} +\details{ +Matrix methods set dead experience in the next age where risk happened. This function return dead experienced in x from x+1. +} From 8fc1ec82bb9727da364884f4084878179755acfd Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 24 May 2023 05:26:25 -0300 Subject: [PATCH 19/37] fix reassign d --- NAMESPACE | 1 - R/kin.R | 16 ---------------- R/kin_multi_stage.R | 6 +++--- R/kin_time_invariant.R | 6 +++--- R/kin_time_invariant_2sex.R | 6 +++--- R/kin_time_variant.R | 8 ++++---- R/kin_time_variant_2sex.R | 8 ++++---- man/dead_age_reasign.Rd | 17 ----------------- vignettes/Reference_OneSex.Rmd | 2 ++ 9 files changed, 19 insertions(+), 51 deletions(-) delete mode 100644 man/dead_age_reasign.Rd diff --git a/NAMESPACE b/NAMESPACE index 7a702a6..72c7b74 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,7 +1,6 @@ # Generated by roxygen2: do not edit by hand export("%>%") -export(dead_age_reasign) export(kin) export(kin2sex) export(kin_multi_stage) diff --git a/R/kin.R b/R/kin.R index df677e9..1cd6be2 100644 --- a/R/kin.R +++ b/R/kin.R @@ -148,19 +148,3 @@ kin <- function(p = NULL, f = NULL, kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) return(kin_out) } - - -#' Reassign kin dead to proper Focal age -#' @description Reassign death to proper Focal risk age -#' @details Matrix methods set dead experience in the next age where risk happened. This function return dead experienced in x from x+1. -#' @param kin table. A kin output in table format from function `kin_time_invariant`, `kin_time_variant`, `kin_time_invariant_2sex`, `kin_time_invariant_2sex`, `kin_multi_stage`. -#' @export -dead_age_reasign <- function(kin){ - kin <- data.table::as.data.table(kin) - kin_dt <- kin[, -which(names(kin) == "living"), with = FALSE] - kin_dt$age_focal <- kin_dt$age_focal - 1 - kin_dt <- kin_dt[kin_dt$age_focal >= 0, ] - kin <- merge(kin_dt, kin[, -which(names(kin) == "dead"), with = FALSE], all.y = TRUE) - kin$dead[is.na(kin$dead)] <- 0 - return(kin) -} diff --git a/R/kin_multi_stage.R b/R/kin_multi_stage.R index 267e359..7ea156e 100644 --- a/R/kin_multi_stage.R +++ b/R/kin_multi_stage.R @@ -171,6 +171,9 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, # kin_full as data.frame kin_full <- purrr::map2(kin_list, names(kin_list), function(x,y){ + # reassign deaths to Focal experienced age + x[(ages*s+1):(ages*s*2),1:(ages-1)] <- x[(ages*s+1):(ages*s*2),2:ages] + x[(ages*s+1):(ages*s*2),ages] <- 0 out <- as.data.frame(x) colnames(out) <- age out %>% @@ -184,9 +187,6 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, }) %>% purrr::reduce(rbind) - # reassign dead to proper focal age - kin_full <- dead_age_reasign(kin_full) - # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_invariant.R b/R/kin_time_invariant.R index c8e246c..bbf1ba7 100644 --- a/R/kin_time_invariant.R +++ b/R/kin_time_invariant.R @@ -94,6 +94,9 @@ kin_time_invariant <- function(p = NULL, f = NULL, # reshape as data.frame kin <- purrr::map2(kin_list, names(kin_list), function(x,y){ + # reassign deaths to Focal experienced age + x[(ages+1):(ages*2),1:(ages-1)] <- x[(ages+1):(ages*2),2:ages] + x[(ages+1):(ages*2),ages] <- 0 out <- as.data.frame(x) colnames(out) <- age out %>% @@ -107,9 +110,6 @@ kin_time_invariant <- function(p = NULL, f = NULL, ) %>% purrr::reduce(rbind) - # reassign dead to proper focal age - kin <- dead_age_reasign(kin) - # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index fe9b0d0..1386ef7 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -135,6 +135,9 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, # as data.frame kin <- purrr::map2(kin_list, names(kin_list), function(x,y){ + # reassign deaths to Focal experienced age + x[(agess+1):(agess*2),1:(ages-1)] <- x[(agess+1):(agess*2),2:ages] + x[(agess+1):(agess*2),ages] <- 0 out <- as.data.frame(x) colnames(out) <- age out %>% @@ -149,9 +152,6 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, ) %>% purrr::reduce(rbind) - # reassign dead to proper focal age - kin <- dead_age_reasign(kin) - # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index ff74e76..3c59c7e 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -107,10 +107,13 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, purrr::map(~ .[selected_kin_position]) # long format - cat("Preparing output...") + message("Preparing output...") kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ + # reassign deaths to Focal experienced age + x[(ages+1):(ages*2),1:(ages-1)] <- x[(ages+1):(ages*2),2:ages] + x[(ages+1):(ages*2),ages] <- 0 x <- as.data.frame(x) x$year <- Y x$kin <- y @@ -128,9 +131,6 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, data.table::dcast(year + kin + age_kin + age_focal + cohort ~ alive, value.var = "count") }) %>% data.table::rbindlist() - # reassign dead to proper focal age - kin <- dead_age_reasign(kin) - # results as list? if(list_output) { out <- kin_list diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index 2f34bd0..bcc86fc 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -148,10 +148,13 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% purrr::map(~ .[selected_kin_position]) # long format - cat("Preparing output...") + message("Preparing output...") kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ + # reassign deaths to Focal experienced age + x[(agess+1):(agess*2),1:(ages-1)] <- x[(agess+1):(agess*2),2:ages] + x[(agess+1):(agess*2),ages] <- 0 x <- data.table::as.data.table(x) x$year <- Y x$kin <- y @@ -170,9 +173,6 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, X <- data.table::dcast(X, year + kin + sex_kin + age_kin + age_focal + cohort ~ alive, value.var = "count", fun.aggregate = sum) }) %>% data.table::rbindlist() - # reassign dead to proper focal age - kin <- dead_age_reasign(kin) - # results as list? if(list_output) { out <- kin_list diff --git a/man/dead_age_reasign.Rd b/man/dead_age_reasign.Rd deleted file mode 100644 index 5599a61..0000000 --- a/man/dead_age_reasign.Rd +++ /dev/null @@ -1,17 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/kin.R -\name{dead_age_reasign} -\alias{dead_age_reasign} -\title{Reassign kin dead to proper Focal age} -\usage{ -dead_age_reasign(kin) -} -\arguments{ -\item{kin}{table. A kin output in table format from function \code{kin_time_invariant}, \code{kin_time_variant}, \code{kin_time_invariant_2sex}, \code{kin_time_invariant_2sex}, \code{kin_multi_stage}.} -} -\description{ -Reassign death to proper Focal risk age -} -\details{ -Matrix methods set dead experience in the next age where risk happened. This function return dead experienced in x from x+1. -} diff --git a/vignettes/Reference_OneSex.Rmd b/vignettes/Reference_OneSex.Rmd index eb93a02..d2ff4b7 100644 --- a/vignettes/Reference_OneSex.Rmd +++ b/vignettes/Reference_OneSex.Rmd @@ -270,6 +270,8 @@ demokin_svk1980_caswell2020 %>% facet_wrap(~kin, nrow = 2) ``` +This function `kin_multi_stage` can be generalized to any kind of state (be sure to set parameter `parity = FALSE`, de default). + ## References Caswell, H. (2019). The formal demography of kinhip: A matrix formulation. Demographic Research 41:679–712. doi:10.4054/DemRes.2019.41.24. From 222e0214be558f39cff8b1c43da8d3040c0427d3 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 24 May 2023 09:02:54 -0300 Subject: [PATCH 20/37] preparing for cran --- .Rbuildignore | 1 + DESCRIPTION | 2 +- NEWS.md | 4 ++++ R/kin.R | 4 +--- R/kin2sex.R | 4 +--- README.Rmd | 16 +++++++++++----- README.md | 16 ++++++++++------ cran-comments.md | 5 +++++ man/figures/README-unnamed-chunk-5-1.png | Bin 199981 -> 538108 bytes man/kin.Rd | 4 +--- man/kin2sex.Rd | 4 +--- vignettes/Reference_OneSex.Rmd | 2 +- vignettes/Reference_TwoSex.Rmd | 4 ++-- 13 files changed, 39 insertions(+), 27 deletions(-) create mode 100644 cran-comments.md diff --git a/.Rbuildignore b/.Rbuildignore index cf44746..2af4302 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -2,3 +2,4 @@ ^\.Rproj\.user$ ^README\.Rmd$ ^LICENSE\.md$ +^cran-comments\.md$ diff --git a/DESCRIPTION b/DESCRIPTION index fbb511d..f8a3d43 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,5 @@ Package: DemoKin -Title: Estimate population kin counts +Title: Estimate Population Kin Distribution Description: Estimate population kin counts and its distribution by type, age and sex. The package implements one-sex and two-sex framework for studying living-death availability, with time varying rates or not, and multi-stage model. diff --git a/NEWS.md b/NEWS.md index 1db9e6f..e8232f8 100644 --- a/NEWS.md +++ b/NEWS.md @@ -4,3 +4,7 @@ * Change stable/non-stable references to time varying/non-varying rates. * Add multi-state process. +# DemoKin 1.0.1 +* Submitted to CRAN +* Death counts are placed in the age where Focal experience the death. +* Aggregated kin types are allowed (`s` for older and younger sisters, for example). diff --git a/R/kin.R b/R/kin.R index 1cd6be2..2a3443f 100644 --- a/R/kin.R +++ b/R/kin.R @@ -34,14 +34,12 @@ #' } #' @export #' @examples -#' \dontrun{ #' # Kin expected matrilineal count for a Swedish female based on 2015 rates. #' swe_surv_2015 <- swe_px[,"2015"] #' swe_asfr_2015 <- swe_asfr[,"2015"] #' # Run kinship models #' swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015) -#' head(swe_2015) -#'} +#' head(swe_2015$kin_summary) kin <- function(p = NULL, f = NULL, time_invariant = TRUE, diff --git a/R/kin2sex.R b/R/kin2sex.R index ac99530..3633087 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -36,15 +36,13 @@ #' } #' @export #' @examples -#' \dontrun{ #' # Kin expected count by relative sex for a French female based on 2012 rates. #' fra_fert_f <- fra_asfr_sex[,"ff"] #' fra_fert_m <- fra_asfr_sex[,"fm"] #' fra_surv_f <- fra_surv_sex[,"pf"] #' fra_surv_m <- fra_surv_sex[,"pm"] #' fra_2012 <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m) -#' head(fra_2012) -#'} +#' head(fra_2012$kin_summary) #' # get kin ---------------------------------------------------------------- kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, diff --git a/README.Rmd b/README.Rmd index 721e1ed..21e3d46 100644 --- a/README.Rmd +++ b/README.Rmd @@ -33,7 +33,13 @@ library(knitr) ## Installation -You can install the development version from GitHub with: +You can install the CRAN version: + +``` {r, eval=FALSE} +install.packages("DemoKin") +``` + +Or the development version from GitHub with: ``` {r, eval=FALSE} # install.packages("devtools") @@ -97,12 +103,12 @@ We look forward to hearing from you! ## References -Caswell, H. 2019. The formal demography of kinship: A matrix formulation. Demographic Research 41:679–712. doi:10.4054/DemRes.2019.41.24. +Caswell, H. 2019. The formal demography of kinship: A matrix formulation. Demographic Research 41:679–712. -Caswell, H. 2020. The formal demography of kinship II: Multistate models, parity, and sibship. Demographic Research 42: 1097-1144. doi:10.4054/DemRes.2020.42.38. +Caswell, H. 2020. The formal demography of kinship II: Multistate models, parity, and sibship. Demographic Research 42: 1097-1144. -Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic Research 45: 517–46. doi:10.4054/DemRes.2021.45.16. +Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic Research 45: 517–46. Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. -Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. doi:10.1016/0040-5809(74)90049-5. +Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. diff --git a/README.md b/README.md index e5d467d..daa6f18 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,13 @@ theoretical development by Goodman, Keyfitz and Pullum (1974). ## Installation -You can install the development version from GitHub with: +You can install the CRAN version: + +``` r +install.packages("DemoKin") +``` + +Or the development version from GitHub with: ``` r # install.packages("devtools") @@ -67,7 +73,7 @@ names(kin_total) <- c("kin", "count") plot_diagram(kin_total, rounding = 2) ``` - + Relatives are identified by a unique code: @@ -127,19 +133,17 @@ request. We look forward to hearing from you! Caswell, H. 2019. The formal demography of kinship: A matrix formulation. Demographic Research 41:679–712. -. Caswell, H. 2020. The formal demography of kinship II: Multistate models, parity, and sibship. Demographic Research 42: 1097-1144. -. Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic -Research 45: 517–46. . +Research 45: 517–46. Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical -Population Biology 5(1):1–27. . +Population Biology 5(1):1–27. diff --git a/cran-comments.md b/cran-comments.md new file mode 100644 index 0000000..858617d --- /dev/null +++ b/cran-comments.md @@ -0,0 +1,5 @@ +## R CMD check results + +0 errors | 0 warnings | 1 note + +* This is a new release. diff --git a/man/figures/README-unnamed-chunk-5-1.png b/man/figures/README-unnamed-chunk-5-1.png index 118cd3c262e7dd264e55b45ceadc9e213bae6fa7..681db7c72a85d0413808359a3f75b29e5a27bd32 100644 GIT binary patch literal 538108 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

QPLH-LNXi&2>e*p884`m98(!#;0(BX9jG1 zw>Y^V=7`I6^5&~JF%z@**6SMX)2(sx9z z+--@izRz_^Mn{}e4CZID++Vj1LzW92Qv?ET&O5YAKw%fV|8NlIL(Df6|7^Tu9v*Tdl>7NJu4VD1(Fmd^BH@ymtPL(5+MHZr{o+b>;zQnJDXf|NC++E^9D^Fa|MUCZj@U zt0%Fi*7M}o=xXF-&>4ZW$(?up1uX(P6{_?tMS{6)%D8Z_P1e+WRn=`7nPX)Rk1;z= zfj+9%Llfw^?hI4x1PCHEHifQ>h>nT=f0qXXE*{~h$EQ%mj1@O{aWc6v;vo8?4|@o# z0*!&#FTd)u)=Fss7#QciY#6Vq>SB2RN~Y&(;^&4j(U%o%C?+(u$&s?Qx)igb>M0Y`(RLn-ma-B z8tE1#JK&cpsxC&m~x*u74u>h#jE>)JcNp$(p-f%YLu%e6 z=0Tlz%eugGH|xB45rynu&v3*NlnZovKy;MO>?qQFE*Jyzz0xs->{d)#GuGa5^my(g z8&Qm3r5|=ik8*{!*IS;A#MTdRRD=c#d_dbMwTe%`R&& z=`-A!5x6D~*AqFIU#S1U=Rzf)7qi&U%yUP=l>-W1nAl{KPZ$Rm@msUCsskY`GfJa?;#mP`@;NNCbHoNZigBw2( zIkHmtnkSK~dK$TcAH#lBnXakg?ZiaCb?xH7FBUJ|7co~hD6g(A)|11PJG2fqHYnkF zJlt*_cB{0S-L6meXKO5ZJ>Ha9Feb=tBTk97S+~^G>{F7Eh+(-bIL#ei-rf&{d9*AZ zUUsdPZ~E%CiB2wG{LD=~ojv{F2WMS<={eQ^s`|Qd!flDx@nyAcw;%UZjmb7WG%a%&V@C;NG zi?q7^e2M5dARWow-f^X759OXbxkzBiSOE_Ql}%&MYiJg;F`IBD5W0$F23IG)MOS`7 zNekjTH&luTcwb+FksNLB{+iv%faqi31eopauzx_o59vIJ#{X(yHrf-%^DV}bu{6ol zbhKbZ{KWm5O?sfwv3+FO8z|H-1(K(k_sNnkW#`*_$L{zwJ2W~a9lJm!oeARg!V+K9 z#T8OogEmmIf1o6euz4H!l=7aPsT?ZO-14)~ZDD6lE=kL5gGXX+Ae%H8j-DASup_bN zK!?>A+dJL~ASzVfuR%OpMqePm(FUQ2^8i>WVc$^R<}&Tk#<|9chPBcy?;iBr>I3hHPvaIh>t2vDF?eLb3P1*DM6eV_&lq+{pq3Pb(K% z+o^^Y9GC4y3p61)W(`T-)dAWKGS^M?(SkbWOT>kc<_^1hY}a)h4sfK;LhNAknA5wJ zvTr%NhYK8ADQ*+ms%)h zwR(&Pv+?H5n⋙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ⅅ$0 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νJnNEOkc;oTaPPL3oMv(qp@ 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

$t|Y46yZ(B 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 diff --git a/man/kin.Rd b/man/kin.Rd index 62ec76b..2f52db6 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -69,12 +69,10 @@ kin count distribution by kin and age. See Caswell (2019) and Caswell (2021) for details on formulas. One sex only (female by default). } \examples{ -\dontrun{ # Kin expected matrilineal count for a Swedish female based on 2015 rates. swe_surv_2015 <- swe_px[,"2015"] swe_asfr_2015 <- swe_asfr[,"2015"] # Run kinship models swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015) -head(swe_2015) -} +head(swe_2015$kin_summary) } diff --git a/man/kin2sex.Rd b/man/kin2sex.Rd index cde73cd..4a31d5d 100644 --- a/man/kin2sex.Rd +++ b/man/kin2sex.Rd @@ -77,14 +77,12 @@ refers to either mothers or fathers, and column \code{sex_kin} determine the sex See Caswell (2022) for details on formulas. } \examples{ -\dontrun{ # Kin expected count by relative sex for a French female based on 2012 rates. fra_fert_f <- fra_asfr_sex[,"ff"] fra_fert_m <- fra_asfr_sex[,"fm"] fra_surv_f <- fra_surv_sex[,"pf"] fra_surv_m <- fra_surv_sex[,"pm"] fra_2012 <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m) -head(fra_2012) -} +head(fra_2012$kin_summary) } diff --git a/vignettes/Reference_OneSex.Rmd b/vignettes/Reference_OneSex.Rmd index d2ff4b7..bdef30c 100644 --- a/vignettes/Reference_OneSex.Rmd +++ b/vignettes/Reference_OneSex.Rmd @@ -10,7 +10,7 @@ vignette: > %\VignetteEncoding{UTF-8} --- -```{r, include=FALSE} +```{r, eval = F, include=FALSE} knitr::opts_chunk$set(collapse = TRUE, comment = "#>") library(devtools); load_all() ``` diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index cc8e2c7..609b06b 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -10,12 +10,12 @@ vignette: > %\VignetteEncoding{UTF-8} --- -```{r, include=FALSE} +```{r, eval = F, include=FALSE} knitr::opts_chunk$set(collapse = TRUE, comment = "#>") library(devtools); load_all() ``` -Human males generally live longer and reproduce later than females. +Human males generally live shorter and reproduce later than females. These sex-specific processes affect kinship dynamics in a number of ways. For example, the degree to which an average member of the population, call her Focal, has a living grandparent is affected by differential mortality affecting the parental generation at older ages. We may also be interested in considering how kinship structures vary by Focal's sex: a male Focal may have a different number of grandchildren than a female Focal given differences in fertility by sex. From 7f288e3c8387301322b07d603468abc0a251751d Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 24 May 2023 09:05:05 -0300 Subject: [PATCH 21/37] version --- DESCRIPTION | 2 +- NEWS.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index f8a3d43..e3c5609 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,7 +3,7 @@ Title: Estimate Population Kin Distribution Description: Estimate population kin counts and its distribution by type, age and sex. The package implements one-sex and two-sex framework for studying living-death availability, with time varying rates or not, and multi-stage model. -Version: 1.0.0 +Version: 1.0.1 Authors@R: c( person("Iván", "Williams", email = "act.ivanwilliams@gmail.com", role = "cre"), person("Diego", "Alburez-Gutierrez", email = "alburezgutierrez@demogr.mpg.de", role = "aut"), diff --git a/NEWS.md b/NEWS.md index e8232f8..a8c2ee4 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,5 @@ +# DemoKin 1.0.1 + # DemoKin 1.0.0 * Added a `NEWS.md` file to track changes to the package. From ec457d74b47529e4de91917ebb8129a6e904c199 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Wed, 24 May 2023 09:05:20 -0300 Subject: [PATCH 22/37] Increment version number to 1.0.2 --- DESCRIPTION | 2 +- NEWS.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index e3c5609..b48b899 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,7 +3,7 @@ Title: Estimate Population Kin Distribution Description: Estimate population kin counts and its distribution by type, age and sex. The package implements one-sex and two-sex framework for studying living-death availability, with time varying rates or not, and multi-stage model. -Version: 1.0.1 +Version: 1.0.2 Authors@R: c( person("Iván", "Williams", email = "act.ivanwilliams@gmail.com", role = "cre"), person("Diego", "Alburez-Gutierrez", email = "alburezgutierrez@demogr.mpg.de", role = "aut"), diff --git a/NEWS.md b/NEWS.md index a8c2ee4..3896284 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,5 @@ +# DemoKin 1.0.2 + # DemoKin 1.0.1 # DemoKin 1.0.0 From 377ff9489e132c00b2c4b647ddeccb6c5c3e4497 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 26 May 2023 09:16:45 -0300 Subject: [PATCH 23/37] fixing cran feedback --- .Rbuildignore | 1 + CRAN-SUBMISSION | 3 + R/aux_funs.R | 2 + R/kin_multi_stage.R | 4 +- R/kin_time_invariant.R | 3 + R/kin_time_invariant_2sex.R | 2 +- R/kin_time_variant.R | 9 +- R/kin_time_variant_2sex.R | 7 +- README.Rmd | 5 +- README.md | 8 +- dev/.DS_Store | Bin 6148 -> 0 bytes dev/TwoSex_mine.Rmd | 203 --------------------------------- dev/demokin_codes.R | 28 ----- dev/get_HMDHFD.R | 125 -------------------- vignettes/Reference_OneSex.Rmd | 13 +-- vignettes/Reference_TwoSex.Rmd | 1 + 16 files changed, 30 insertions(+), 384 deletions(-) create mode 100644 CRAN-SUBMISSION delete mode 100644 dev/.DS_Store delete mode 100644 dev/TwoSex_mine.Rmd delete mode 100644 dev/demokin_codes.R delete mode 100644 dev/get_HMDHFD.R diff --git a/.Rbuildignore b/.Rbuildignore index 2af4302..7b0fa46 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -3,3 +3,4 @@ ^README\.Rmd$ ^LICENSE\.md$ ^cran-comments\.md$ +^CRAN-SUBMISSION$ diff --git a/CRAN-SUBMISSION b/CRAN-SUBMISSION new file mode 100644 index 0000000..2ac4999 --- /dev/null +++ b/CRAN-SUBMISSION @@ -0,0 +1,3 @@ +Version: 1.0.2 +Date: 2023-05-24 13:15:15 UTC +SHA: ec457d74b47529e4de91917ebb8129a6e904c199 diff --git a/R/aux_funs.R b/R/aux_funs.R index bead1b1..a8e7bfd 100644 --- a/R/aux_funs.R +++ b/R/aux_funs.R @@ -4,8 +4,10 @@ #' @details See table `demokin_codes` to know label options. #' @param df data.frame. A data frame with variable `kin` with `DemoKin` codes to be labelled. #' @param sex character. "f" for female, "m" for male or "2sex" for both sex naming. +#' @return Add a column with kin labels in the input data frame. #' @export rename_kin <- function(df, sex = "f"){ + if(!"kin" %in% names(df)) stop("Input df needs a column named kin.") if(sex == "f") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_female")] if(sex == "m") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_male")] if(sex == "2sex") demokin_codes_sex <- DemoKin::demokin_codes[,c("DemoKin", "Labels_2sex")] diff --git a/R/kin_multi_stage.R b/R/kin_multi_stage.R index 7ea156e..829b232 100644 --- a/R/kin_multi_stage.R +++ b/R/kin_multi_stage.R @@ -14,7 +14,6 @@ #' @return A data frame with focal´s age, related ages and type of kin #' (for example `d` is daughter, `oa` is older aunts, etc.), living and death kin counts, and specific stage. If `list_output = TRUE` then this is a list with elements as kin types. #' @export -#' kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, birth_female = 1/2.04, @@ -22,6 +21,9 @@ kin_multi_stage <- function(U = NULL, f = NULL, D = NULL, H = NULL, parity = FALSE, list_output = FALSE){ + # global vars + .<-age_kin<-stage_kin<-alive<-age_focal<-count<-NULL + # mandatory U as a list if(!is.list(U)) stop("U must be a list with age length of elements, and stage transitiotn matrix for each one.") diff --git a/R/kin_time_invariant.R b/R/kin_time_invariant.R index bbf1ba7..06058b6 100644 --- a/R/kin_time_invariant.R +++ b/R/kin_time_invariant.R @@ -19,6 +19,9 @@ kin_time_invariant <- function(p = NULL, f = NULL, output_kin = NULL, list_output = FALSE){ + # global vars + .<-alive<-age_kin<-alive<-age_focal<-count<-NULL + # make matrix transition from vectors age = 0:(length(p)-1) ages = length(age) diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index 1386ef7..07628e1 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -28,7 +28,7 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, list_output = FALSE){ # global vars - living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + .<-sex_kin<-alive<-count<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL # same input length if(!all(length(pf)==length(pm), length(pf)==length(ff), length(pf)==length(fm))) stop("Lengths of p's and f's should be the same") diff --git a/R/kin_time_variant.R b/R/kin_time_variant.R index 3c59c7e..71a5dfa 100644 --- a/R/kin_time_variant.R +++ b/R/kin_time_variant.R @@ -12,7 +12,7 @@ #' @param birth_female numeric. Female portion at birth. #' @param list_output logical. Results as a list with years elements (as a result of `output_cohort` and `output_period` combination), with a second list of `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` -#' @return A data frame of population kinship structure, with focal's cohort, focal´s age, period year, type of relatives +#' @return A data frame of population kinship structure, with Focal's cohort, focal´s age, period year, type of relatives #' (for example `d` is daughter, `oa` is older aunts, etc.), living and death kin counts, and age of (living or time deceased) relatives. If `list_output = TRUE` then this is a list. #' @export @@ -21,7 +21,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, birth_female = 1/2.04, list_output = FALSE){ # global vars - living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + .<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL # check input if(is.null(p) | is.null(f)) stop("You need values on p and f.") @@ -31,7 +31,7 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, # data should be from same interval years years_data <- as.integer(colnames(p)) - if(var(diff(years_data))!=0) stop("The years given as column names in the p and f matrices must be equally spaced.") + if(stats::var(diff(years_data))!=0) stop("The years given as column names in the p and f matrices must be equally spaced.") # utils age <- 0:(nrow(p)-1) @@ -151,7 +151,8 @@ kin_time_variant <- function(p = NULL, f = NULL, pi = NULL, n = NULL, #' @param pit numeric. A matrix with distribution of childbearing. #' @param ages numeric. #' @param pkin numeric. A list with kin count distribution in previous year. -# +#' @return A list of 14 types of kin matrices (kin age by Focal age) projected one time interval. +#' @export timevarying_kin<- function(Ut, ft, pit, ages, pkin){ # frequently used zero vector for initial condition diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index bcc86fc..83b3956 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -31,14 +31,14 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, list_output = FALSE){ # global vars - living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + .<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL # same input length if(!all(dim(pf) == dim(pm), dim(pf) == dim(ff), dim(pf) == dim(fm))) stop("Dimension of P's and F's should be the same") # data should be from same interval years years_data <- as.integer(colnames(pf)) - if(var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") + if(stats::var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") # utils age <- 0:(nrow(pf)-1) @@ -193,7 +193,8 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, #' @param sex_focal character. "f" for female or "m" for male. #' @param ages numeric. #' @param pkin numeric. A list with kin count distribution in previous year. -# +#' @return A list of 14 types of kin matrices (kin age by Focal age, blocked for two sex) projected one time interval. +#' @export timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ agess <- ages*2 diff --git a/README.Rmd b/README.Rmd index 21e3d46..bb1975a 100644 --- a/README.Rmd +++ b/README.Rmd @@ -33,13 +33,12 @@ library(knitr) ## Installation +``` {r, eval=FALSE, include = F} You can install the CRAN version: - -``` {r, eval=FALSE} install.packages("DemoKin") ``` -Or the development version from GitHub with: +You can install the development version from GitHub with: ``` {r, eval=FALSE} # install.packages("devtools") diff --git a/README.md b/README.md index daa6f18..ea4ece2 100644 --- a/README.md +++ b/README.md @@ -23,13 +23,7 @@ theoretical development by Goodman, Keyfitz and Pullum (1974). ## Installation -You can install the CRAN version: - -``` r -install.packages("DemoKin") -``` - -Or the development version from GitHub with: +You can install the development version from GitHub with: ``` r # install.packages("devtools") diff --git a/dev/.DS_Store b/dev/.DS_Store deleted file mode 100644 index 1e69428fb8102fb057526431a60320d25eb531ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKu};G<5Ixfj6&(m0FnL5`>cmJ|1sE7Bu>xrkAQD`ut;Cp(35kIZ;T!l3{(zMY z7Vdl}>e7UY1y$%yvR`7qv;AI_I0gXIoebIlF#t5N5Jsz5RRr}@nTr)^Swl2_jBB`p z8z|rm#&c|KPzTh3WpjYu-4^uV7>?is!uNMH81?haxtx|XJ?DW zRE}A=sgy;tdqEI~O|FcB;n zu?NF&Dk7&EIbs-2$95~cM6hJ!bTD%GFfy}|6N>S(i2TYXq(k@Dpy>(6;?X?!mDHaOim5e?GE7^|y1#QI}SbSigr3=JF Tuw=v*4E+)CHfW^|{HX(<$ybjQ diff --git a/dev/TwoSex_mine.Rmd b/dev/TwoSex_mine.Rmd deleted file mode 100644 index 01ed3c0..0000000 --- a/dev/TwoSex_mine.Rmd +++ /dev/null @@ -1,203 +0,0 @@ ---- -title: "Two-Sex expected kin counts by type of relative: A matrix implementation" -output: - html_document: - toc: true - toc_depth: 1 -vignette: > - %\VignetteIndexEntry{TwoSex} - %\VignetteEngine{knitr::rmarkdown} - %\VignetteEncoding{UTF-8} ---- - -```{r, include=FALSE} -knitr::opts_chunk$set(collapse = TRUE, comment = "#>") -``` - -Age distribution of Focal´s father when she born depends on male fertility pattern. Living siblings depends on sex composition (brothers and sisters) due to differential mortality risk. Intensity in care tasks is not the same between sex in many societies, so the sex of ego and his/her "sandwichness" change, because an average family network expects different roles in supporting. For these reasons, and many others, sex specific kin count estimates are important. Here we implement relations in Caswell (2022), not focusing in applications that can be analogous to the one-sex model, but in the specific advantages. - -```{r, message=FALSE, warning=FALSE} -# library(DemoKin) -library(devtools) -load_all() -library(tidyr) -library(dplyr) -library(ggplot2) -library(knitr) -``` - -### 1.1. Rates by sex - -Female fertility by age is not a widespread available data source. Caswell (2022) takes Schoumaker (2019) makes available estimates for 160 countries, reporting that male TFR almost always exceeds female TFR. We take the case of France in 2012 for showing how functions works (fertility and mortality data are available with the package, with column-sex values). Let´s see main differences in age distribution (TFR of 1.98 and 1.99 for males and females, practically the same) - -```{r} -fra_fert_f <- fra_asfr_sex[,"ff"] -fra_fert_m <- fra_asfr_sex[,"fm"] -fra_surv_f <- fra_surv_sex[,"pf"] -fra_surv_m <- fra_surv_sex[,"pm"] -sum(fra_fert_m)-sum(fra_fert_f) -data.frame(value = c(fra_fert_f, fra_fert_m, fra_surv_f, fra_surv_m), - age = rep(0:100, 4), - sex = rep(c(rep("f", 101), rep("m", 101)), 2), - risk = c(rep("fertility rate", 101 * 2), rep("survival probability", 101 * 2))) %>% - ggplot(aes(age, value, col=sex)) + geom_line() + facet_wrap(~ risk, scales = "free_y") + theme_bw() -``` - -### 1.1. Visualizing the distribution of kin - -Compared with one sex functions, here the user needs to specify risk by sex and decide results for which ego´s sex wants. (**this should be wrapped on a kin general formula? (note for Diego)**) - -```{r} -kin_out <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) -``` - -Let´s group aunts and siblings and see living kin by age (**should reply fig 6 (note for Diego)**). - -```{r} -kin_out <- kin_out$kin_summary %>% - mutate(kin = case_when(kin %in% c("s", "s") ~ "s", - kin %in% c("ya", "oa") ~ "a", - T ~ kin)) %>% - filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) -kin_out %>% - group_by(kin, age_focal, sex_kin) %>% - summarise(count=sum(count_living)) %>% - ggplot(aes(age_focal, count, fill=sex_kin))+ - geom_area()+ - theme_bw() + - facet_wrap(~kin) -``` - -Kin availability by sex allows to inspect its distribution, a traditional measure in demography is the sex ratio (with females in denominator). A French woman would expect to have half grandfathers for each grandmother at 25 years old. - -```{r} -kin_out %>% - group_by(kin, age_focal) %>% - summarise(sex_ratio=sum(count_living[sex_kin=="m"], na.rm=T)/sum(count_living[sex_kin=="f"], na.rm=T)) %>% - ggplot(aes(age_focal, sex_ratio))+ - geom_line()+ - theme_bw() + - facet_wrap(~kin, scales = "free") -``` - -How ego experiences relative deaths depends mainly on how wide is the sex-gap in mortality. She starts to lose fathers earlier than mothers. The difference on the level by sex in grandparents is due to initial availability by sex. - -```{r} -# sex ratio -kin_out %>% - group_by(kin, sex_kin, age_focal) %>% - summarise(count=sum(count_dead)) %>% - ggplot(aes(age_focal, count, col=sex_kin))+ - geom_line()+ - theme_bw() + - facet_wrap(~kin) -``` - -### 2 Approximations - -Caswell (2022) mentions some ways to approximate to 2-sex distribution of living kins. Here we compare the full 2-sex model that introduced before with *androgynous* variant (male fertility and survival are the same as females) and the use of GKP factors. The first comparison can be done by age, having very similar results in this case, except for grandfathers and great-grandfathers who transits higher ages and sex-gap is higher. - -```{r} -kin_out <- kin2sex(fra_surv_f, fra_surv_m, fra_fert_f, fra_fert_m, sex_focal = "f", birth_female = .5) -kin_out_androgynous <- kin2sex(fra_surv_f, fra_surv_f, fra_fert_f, fra_fert_f, sex_focal = "f", birth_female = .5) -bind_rows( - kin_out$kin_summary %>% mutate(type = "full"), - kin_out_androgynous$kin_summary %>% mutate(type = "androgynous")) %>% - group_by(kin, age_focal, sex_kin, type) %>% - summarise(count = sum(count_living)) %>% - ggplot(aes(age_focal, count, linetype = type)) + - geom_line() + - theme_bw() + - theme(legend.position = "bottom", axis.text.x = element_blank()) + - facet_grid(row = vars(sex_kin), col = vars(kin), scales = "free") -``` - -Now we can multiply results from 1-sex model by the GKP factors by kin, to obtain a simple but very consistent approximation of totals (both sex) at different ages of Focal. - -```{r} -# with gkp -kin_out_1sex <- kin(fra_surv_f, fra_fert_f, birth_female = .5) -kin_out_GKP <- kin_out_1sex$kin_summary%>% - mutate(count_living = case_when(kin == "m" ~ count_living * 2, - kin == "gm" ~ count_living * 4, - kin == "ggm" ~ count_living * 8, - kin == "d" ~ count_living * 2, - kin == "gd" ~ count_living * 4, - kin == "ggd" ~ count_living * 4, - kin == "oa" ~ count_living * 4, - kin == "ya" ~ count_living * 4, - kin == "os" ~ count_living * 2, - kin == "ys" ~ count_living * 2, - kin == "coa" ~ count_living * 8, - kin == "cya" ~ count_living * 8, - kin == "nos" ~ count_living * 4, - kin == "nys" ~ count_living * 4)) - -bind_rows( - kin_out$kin_summary %>% mutate(type = "full"), - kin_out_androgynous$kin_summary %>% mutate(type = "androgynous"), - kin_out_GKP %>% mutate(type = "gkp")) %>% - mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", - kin %in% c("ya", "oa") ~ "a", - kin %in% c("coa", "cya") ~ "c", - kin %in% c("nys", "nos") ~ "n", - T ~ kin)) %>% - filter(age_focal %in% c(5, 15, 30, 60, 80)) %>% - group_by(kin, age_focal, type) %>% - summarise(count = sum(count_living)) %>% - ggplot(aes(type, count)) + - geom_bar(aes(fill=type), stat = "identity") + - theme_bw()+theme(axis.text.x = element_text(angle = 90), legend.position = "bottom")+ - facet_grid(col = vars(kin), row = vars(age_focal), scales = "free") -``` - -### 2 Time variant - -But Focal will see his/her tree developing with current risk, being part of the evolving demographic transition, in any of its stages. Let´s compare what would be living kin for Swedish female if she would experienced time varying rates instead of period ones from 1950. We can use data already loaded in the package. - -```{r} -years <- ncol(swe_px) -ages <- nrow(swe_px) -swe_surv_f_matrix <- swe_px -swe_surv_m_matrix <- swe_px ^ 1.5 # this could be replaced with downloaded data from UN -swe_fert_f_matrix <- swe_asfr -swe_fert_m_matrix <- rbind(matrix(0, 5, years), - swe_asfr[-((ages-4):ages),]) * 1.05 -par(mfrow=c(1,2)) -plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probability") -lines(swe_surv_m_matrix[,"1900"], col=2) -plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") -lines(swe_fert_m_matrix[,"1900"], col=2) -``` -There is a n increase of living relatives because of mortality improvements, very small for grandparents because main advantages in health conditions made a huge effect in infant mortality first. Less children would have this woman in case of varying rates, due to fertility transition in the first decades in Sweden. - -```{r} -kin_out_time_invariant <- kin2sex( - swe_surv_f_matrix[,"1900"], swe_surv_m_matrix[,"1900"], - swe_fert_f_matrix[,"1900"], swe_fert_m_matrix[,"1900"], - sex_focal = "f", birth_female = .5) -kin_out_time_variant <- kin2sex( - swe_surv_f_matrix, swe_surv_m_matrix, - swe_fert_f_matrix, swe_fert_m_matrix, - sex_focal = "f",time_invariant = FALSE, - birth_female = .5, - output_cohort = 1900) - -kin_out_time_variant$kin_summary %>% - filter(cohort == 1900) %>% mutate(type = "variant") %>% - bind_rows(kin_out_time_invariant$kin_summary %>% mutate(type = "invariant")) %>% - mutate(kin = case_when(kin %in% c("ys", "os") ~ "s", - kin %in% c("ya", "oa") ~ "a", - T ~ kin)) %>% - filter(kin %in% c("d", "m", "gm", "ggm", "s", "a")) %>% - group_by(type, kin, age_focal, sex_kin) %>% - summarise(count=sum(count_living)) %>% - ggplot(aes(age_focal, count, linetype=type))+ - geom_line()+ theme_bw() + - facet_grid(cols = vars(kin), rows=vars(sex_kin), scales = "free") -``` - - -## References - -Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. diff --git a/dev/demokin_codes.R b/dev/demokin_codes.R deleted file mode 100644 index 69a545a..0000000 --- a/dev/demokin_codes.R +++ /dev/null @@ -1,28 +0,0 @@ -#' demokin kin codes - -codes <- c("coa", "cya", 'c', "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "n", "oa", "ya", "a","os", "ys", "s") -caswell_codes <- c("t", "v", NA, "a", "b", "c", "h", "g", "d", "p", "q", NA, "r", "s", NA,"m", "n",NA) -labels_female <- c("Cousins from older aunts", "Cousins from younger aunts", "Cousins", - "Daughters", "Grand-daughters", - "Great-grand-daughters", "Great-grandmothers", "Grandmothers", "Mother", - "Nieces from older sisters", "Nieces from younger sisters", "Nieces", - "Aunts older than mother", "Aunts younger than mother", "Aunts", - "Older sisters", "Younger sisters", "Sisters") -labels_male <- c("Cousins from older uncles", "Cousins from younger uncles", "Cousins", - "Brothers", "Grand-sons", - "Great-grand-sons", "Great-grandfathers", "Grandfathers", "Father", - "Nephews from older brothers", "Nephews from younger brothers", "Nephews", - "Uncles older than fathers", "Uncles younger than father", "Uncles", - "Older brothers", "Younger brothers", "Brothers") -labels_2sex <- c("Cousins from older aunts/uncles", "Cousins from younger aunts/uncles", "Cousins", - "Siblings", "Grand-childrens", - "Great-grand-childrens", "Great-grandfparents", "Grandparents", "Parents", - "Niblings from older siblings", "Niblings from younger siblings", "Niblings", - "Aunts/Uncles older than parents", "Aunts/Uncles younger than parents", "Aunts/Uncles", - "Older siblings", "Younger siblings", "Siblings") -demokin_codes <- data.frame(DemoKin = codes, Caswell = caswell_codes, - Labels_female = labels_female, - Labels_male = labels_male, - Labels_2sex = labels_2sex, - row.names = NULL) -# save(demokin_codes, file = "data/demokin_codes.rda") diff --git a/dev/get_HMDHFD.R b/dev/get_HMDHFD.R deleted file mode 100644 index b4ee78e..0000000 --- a/dev/get_HMDHFD.R +++ /dev/null @@ -1,125 +0,0 @@ -#' Get time serie matrix data from HMD/HFD - -#' @description Wrapper function to get data of female survival, fertlity and population -#' of selected country on selected period. - -#' @param country numeric. Country code from rom HMD/HFD. -#' @param max_year numeric. Latest year to get data. -#' @param min_year integer. Older year to get data. -#' @param user_HMD character. From HMD. -#' @param user_HFD character. From HFD. -#' @param pass_HMD character. From HMD. -#' @param pass_HFD character. From HFD. -#' @param OAG numeric. Open age group to standarize output. -#' @return A list wiith female survival probability, survival function, fertility and poopulation age specific matrixes, with calendar year as colnames. -#' @export - -get_HMDHFD <- function(country = "SWE", - min_year = 1900, - max_year = 2018, - user_HMD = NULL, - pass_HMD = NULL, - user_HFD = NULL, - pass_HFD = NULL, - OAG = 100){ - - if(any(c(is.null(user_HMD), is.null(user_HFD), is.null(pass_HMD), is.null(pass_HFD)))){ - stop("The function needs HMD and HMF access.") - } - - # source HMD HFD ----------------------------------------------------------------- - pop <- HMDHFDplus::readHMDweb(CNTRY = country, "Population", user_HMD, pass_HMD, fixup = TRUE) %>% - dplyr::select(Year, Age, N = Female1)%>% - dplyr::filter(Year >= min_year, Year <= max_year) - lt <- HMDHFDplus::readHMDweb(country, "fltper_1x1", user_HMD, pass_HMD, fixup = TRUE) %>% - dplyr::filter(Year >= min_year, Year <= max_year) - asfr <- HMDHFDplus::readHFDweb(country, "asfrRR", user_HFD, pass_HFD, fixup = TRUE)%>% - dplyr::filter(Year >= min_year, Year <= max_year) - - # list of yearly Leslie matrix --------------------------------------------------- - - age = 0:OAG - ages = length(age) - w = last(age) - last_year = max(lt$Year) - years = min_year:last_year - - # survival probability - px <- lt %>% - dplyr::filter(Age<=OAG) %>% - dplyr::mutate(px = 1 - qx, - px = ifelse(Age==OAG, 0, px)) %>% - dplyr::select(Year, Age, px) %>% - tidyr::pivot_wider(names_from = "Year", values_from = "px") %>% - dplyr::select(-Age) %>% - as.matrix() - rownames(px) = 0:OAG - - # survival function - Lx <- lt %>% - dplyr::filter(Age<=OAG) %>% - dplyr::mutate(Lx = ifelse(Age==OAG, Tx, Lx)) %>% - dplyr::select(Year, Age, Lx) %>% - tidyr::pivot_wider(names_from = "Year", values_from = "Lx") %>% - dplyr::select(-Age) %>% - as.matrix() - - Sx <- rbind(Lx[c(-1,-ages),]/Lx[-c(w:ages),], - Lx[ages,]/(Lx[w,]+Lx[ages,]), - Lx[ages,]/(Lx[w,]+Lx[ages,])) - rownames(Sx) = 0:w - - # fertility - fx <- asfr %>% - dplyr::filter(Year >= min_year) %>% - dplyr::select(-OpenInterval) %>% - rbind( - expand.grid(Year = years, - Age = c(0:(min(asfr$Age)-1),(max(asfr$Age)+1):OAG), - ASFR = 0)) %>% - dplyr::arrange(Year, Age) %>% - tidyr::spread(Year, ASFR) %>% - dplyr::select(-Age) %>% - as.matrix() - rownames(fx) = 0:OAG - - # population - Nx <- pop %>% - dplyr::mutate(Age = ifelse(Age>OAG, OAG, Age)) %>% - dplyr::group_by(Year, Age) %>% summarise(N = sum(N)) %>% - dplyr::filter(Age<=OAG, Year >= min_year) %>% - dplyr::arrange(Year, Age) %>% - tidyr::spread(Year, N) %>% - dplyr::select(-Age) %>% - as.matrix() - rownames(Nx) = 0:OAG - - # only return data with values - if(any(is.na(colSums(Sx)))){ - warning("Asked for data out of HMDHFD range") - Sx <- Sx[,!is.na(colSums(Sx))] - } - if(any(is.na(colSums(fx)))){ - warning("Asked for data out of HMDHFD range") - fx <- fx[,!is.na(colSums(fx))] - } - if(any(is.na(colSums(Nx)))){ - warning("Asked for data out of HMDHFD range") - Nx <- Nx[,!is.na(colSums(Nx))] - } - - return(list(px=px, - Sx=Sx, - fx=fx, - Nx=Nx)) -} - -# save data - # swe_px <- swe_data$px - # swe_Sx <- swe_data$Sx - # swe_asfr <-swe_data$fx - # swe_pop <- swe_data$Nx - # save(swe_px, file = "data/swe_px.rda") - # save(swe_Sx, file = "data/swe_Sx.rda") - # save(swe_asfr, file = "data/swe_asfr.rda") - # save(swe_pop, file = "data/swe_pop.rda") diff --git a/vignettes/Reference_OneSex.Rmd b/vignettes/Reference_OneSex.Rmd index bdef30c..8f940d8 100644 --- a/vignettes/Reference_OneSex.Rmd +++ b/vignettes/Reference_OneSex.Rmd @@ -82,8 +82,6 @@ swe_2015[["kin_summary"]] %>% Here, each relative type is identified by a unique code. Note that `DemoKin` uses different codes than Caswell (2019); the equivalence between the two set of codes is given in the following table: ```{r, fig.height=6, fig.width=8, echo=FALSE} -library(knitr) - demokin_codes %>% kable ``` @@ -118,10 +116,10 @@ swe_2015[["kin_summary"]] %>% Finally, we can visualize the estimated kin counts by type of kin using a network diagram. Following with the age 35: ```{r, fig.height=6, fig.width=8, dpi=900, message=FALSE, warning=FALSE} - swe_2015[["kin_summary"]] %>% - filter(age_focal == 35) %>% - select(kin, count = count_living) %>% - plot_diagram(rounding = 2) +swe_2015[["kin_summary"]] %>% + filter(age_focal == 35) %>% + select(kin, count = count_living) %>% + plot_diagram(rounding = 2) ``` @@ -190,9 +188,6 @@ swe_2015_prevalence <- age_kin = unique(swe_2015$kin_full$age_kin), prev = .005 * exp(.05 * age_kin) ) - -# plot(swe_2015_prevalence) - # join to kin count estimates and plot swe_2015$kin_full %>% left_join(swe_2015_prevalence) %>% diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index 609b06b..0bac206 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -157,6 +157,7 @@ plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probabili lines(swe_surv_m_matrix[,"1900"], col=2) plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") lines(swe_fert_m_matrix[,"1900"], col=2) +options(mfrow = NULL) ``` We now run the time-variant two-sex models (note the `time_invariant = FALSE` argument): From 3660c058dd067f1bc9f050227078468a1b6c89cc Mon Sep 17 00:00:00 2001 From: alburezg Date: Fri, 26 May 2023 17:14:32 +0200 Subject: [PATCH 24/37] updated citations --- README.Rmd | 21 +++----- README.md | 72 ++++++++++++++++++-------- references.bib | 92 ++++++++++++++++++++++++++++++++++ vignettes/Reference_OneSex.Rmd | 28 ++++------- vignettes/Reference_TwoSex.Rmd | 9 ++-- vignettes/references.bib | 92 ++++++++++++++++++++++++++++++++++ 6 files changed, 255 insertions(+), 59 deletions(-) create mode 100644 references.bib create mode 100644 vignettes/references.bib diff --git a/README.Rmd b/README.Rmd index bb1975a..0b6feb8 100644 --- a/README.Rmd +++ b/README.Rmd @@ -1,5 +1,6 @@ --- output: github_document +bibliography: vignettes\\references.bib --- ```{r, include = FALSE} @@ -21,7 +22,7 @@ library(knitr) ::: {.column width="60%"} -`DemoKin` uses matrix demographic methods to compute expected (average) kin counts from demographic rates under a range of scenarios and assumptions. The package is an R-language implementation of Caswell (2019, 2020, 2022), and Caswell and Song (2021). It draws on previous theoretical development by Goodman, Keyfitz and Pullum (1974). +`DemoKin` uses matrix demographic methods to compute expected (average) kin counts from demographic rates under a range of scenarios and assumptions. The package is an R-language implementation of Caswell [-@caswell_formal_2019; -@caswell_formal_2020; -@caswell_formal_2022], and Caswell and Song [-@caswell_formal_2021]. It draws on previous theoretical development by Goodman, Keyfitz and Pullum [-@goodman_family_1974]. ::: ::: {.column width="40%"} @@ -47,11 +48,11 @@ devtools::install_github("IvanWilli/DemoKin") ## Usage -Consider an average Swedish woman called 'Focal'. For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their life (the 'time-invariant' assumption in Caswell (2019)). +Consider an average Swedish woman called 'Focal.' For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their life; i.e., the 'time-invariant' assumption in Caswell [-@caswell_formal_2019]. We then ask: -> How many living relatives does Focal have at each age? +> What is the expected number of relatives of Focal over her life course? Let's explore this using the Swedish data already included with `DemoKin`. @@ -62,7 +63,7 @@ swe_asfr_2015 <- swe_asfr[,"2015"] swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) ``` -*p* is the survival probability by age from a life table and *f* are the age specific fertility raties by age (see `?kin` for details). +*p* is the survival probability by age from a life table and *f* are the age specific fertility ratios by age (see `?kin` for details). Now, we can visualize the implied kin counts (i.e., the average number of living kin) of Focal at age 35 using a network or 'Keyfitz' kinship diagram with the function `plot_diagram`: @@ -83,7 +84,7 @@ kable(DemoKin::demokin_codes[,c(1,3)]) ## Vignette -For more details, including an extension to time varying-populations rates, deceased kin, and multi-state models in a one-sex framework, see `vignette("Reference_OneSex", package = "DemoKin")`. For the case of two-sex see `vignette("Reference_TwoSex", package = "DemoKin")`. +For more details, including an extension to time-variant rates, deceased kin, and multi-state models in a one-sex framework, see `vignette("Reference_OneSex", package = "DemoKin")`. For two-sex models, see `vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. ## Citation @@ -101,13 +102,3 @@ If you're interested in contributing, please get in touch, create an issue, or s We look forward to hearing from you! ## References - -Caswell, H. 2019. The formal demography of kinship: A matrix formulation. Demographic Research 41:679–712. - -Caswell, H. 2020. The formal demography of kinship II: Multistate models, parity, and sibship. Demographic Research 42: 1097-1144. - -Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. Kinship Dynamics with Time-Varying Demographic Rates.” Demographic Research 45: 517–46. - -Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. - -Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation and the frequency of various kinship relationships. Theoretical Population Biology 5(1):1–27. diff --git a/README.md b/README.md index ea4ece2..9edd51d 100644 --- a/README.md +++ b/README.md @@ -32,14 +32,15 @@ devtools::install_github("IvanWilli/DemoKin") ## Usage -Consider an average Swedish woman called ‘Focal’. For this exercise, we +Consider an average Swedish woman called ‘Focal.’ For this exercise, we assume a female closed population in which everyone experiences the Swedish 2015 mortality and fertility rates at each age throughout their -life (the ‘time-invariant’ assumption in Caswell (2019)). +life; i.e., the ‘time-invariant’ assumption in Caswell (2019). We then ask: -> How many living relatives does Focal have at each age? +> What is the expected number of relatives of Focal over her life +> course? Let’s explore this using the Swedish data already included with `DemoKin`. @@ -52,7 +53,7 @@ swe_2015 <- kin(p = swe_surv_2015, f = swe_asfr_2015, time_invariant = TRUE) ``` *p* is the survival probability by age from a life table and *f* are the -age specific fertility raties by age (see `?kin` for details). +age specific fertility ratios by age (see `?kin` for details). Now, we can visualize the implied kin counts (i.e., the average number of living kin) of Focal at age 35 using a network or ‘Keyfitz’ kinship @@ -94,11 +95,11 @@ Relatives are identified by a unique code: ## Vignette -For more details, including an extension to time varying-populations -rates, deceased kin, and multi-state models in a one-sex framework, see -`vignette("Reference_OneSex", package = "DemoKin")`. For the case of -two-sex see `vignette("Reference_TwoSex", package = "DemoKin")`. If the -vignette does not load, you may need to install the package as +For more details, including an extension to time-variant rates, deceased +kin, and multi-state models in a one-sex framework, see +`vignette("Reference_OneSex", package = "DemoKin")`. For two-sex models, +see `vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette +does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. ## Citation @@ -125,19 +126,48 @@ request. We look forward to hearing from you! ## References -Caswell, H. 2019. The formal demography of kinship: A matrix -formulation. Demographic Research 41:679–712. +
-Caswell, H. 2020. The formal demography of kinship II: Multistate -models, parity, and sibship. Demographic Research 42: 1097-1144. +
-Caswell, Hal and Xi Song. 2021. “The Formal Demography of Kinship. III. -Kinship Dynamics with Time-Varying Demographic Rates.” Demographic -Research 45: 517–46. +Caswell, Hal. 2019. “The Formal Demography of Kinship: A Matrix +Formulation.” *Demographic Research* 41 (September): 679–712. +. -Caswell, H. (2022). The formal demography of kinship IV: Two-sex models -and their approximations. Demographic Research, 47, 359–396. +
+ +
+ +———. 2020. “The Formal Demography of Kinship II: Multistate Models, +Parity, and Sibship.” *Demographic Research* 42 (June): 1097–1146. +. + +
+ +
+ +———. 2022. “The Formal Demography of Kinship IV: Two-Sex Models and +Their Approximations.” *Demographic Research* 47 (September): 359–96. +. + +
-Goodman, L.A., Keyfitz, N., and Pullum, T.W. (1974). Family formation -and the frequency of various kinship relationships. Theoretical -Population Biology 5(1):1–27. +
+ +Caswell, Hal, and Xi Song. 2021. “The Formal Demography of Kinship III: +Kinship Dynamics with Time-Varying Demographic Rates.” *Demographic +Research* 45 (August): 517–46. +. + +
+ +
+ +Goodman, Leo A, Nathan Keyfitz, and Thomas W. Pullum. 1974. “Family +Formation and the Frequency of Various Kinship Relationships.” +*Theoretical Population Biology*, 27. +. + +
+ +
diff --git a/references.bib b/references.bib new file mode 100644 index 0000000..19e08e3 --- /dev/null +++ b/references.bib @@ -0,0 +1,92 @@ + +@article{caswell_formal_2019, + title = {The formal demography of kinship: {A} matrix formulation}, + volume = {41}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship}, + url = {https://www.demographic-research.org/volumes/vol41/24/}, + doi = {10.4054/DemRes.2019.41.24}, + language = {en}, + urldate = {2019-09-17}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = sep, + year = {2019}, + pages = {679--712}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\C84MW6VX\\Caswell - 2019 - The formal demography of kinship A matrix formula.pdf:application/pdf}, +} + +@article{caswell_formal_2020, + title = {The formal demography of kinship {II}: {Multistate} models, parity, and sibship}, + volume = {42}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {II}}, + url = {https://www.demographic-research.org/volumes/vol42/38/}, + doi = {10.4054/DemRes.2020.42.38}, + language = {en}, + urldate = {2021-03-05}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = jun, + year = {2020}, + pages = {1097--1146}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\LEHIM987\\Caswell - 2020 - The formal demography of kinship II Multistate mo.pdf:application/pdf}, +} + +@article{caswell_formal_2021, + title = {The formal demography of kinship {III}: {Kinship} dynamics with time-varying demographic rates}, + volume = {45}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {III}}, + url = {https://www.demographic-research.org/volumes/vol45/16/}, + doi = {10.4054/DemRes.2021.45.16}, + language = {en}, + urldate = {2021-10-19}, + journal = {Demographic Research}, + author = {Caswell, Hal and Song, Xi}, + month = aug, + year = {2021}, + pages = {517--546}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\W2JPMRH8\\Caswell and Song - 2021 - The formal demography of kinship III Kinship dyna.pdf:application/pdf}, +} + +@article{caswell_formal_2022, + title = {The formal demography of kinship {IV}: {Two}-sex models and their approximations}, + volume = {47}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {IV}}, + url = {https://www.demographic-research.org/volumes/vol47/13/}, + doi = {10.4054/DemRes.2022.47.13}, + language = {en}, + urldate = {2022-09-27}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = sep, + year = {2022}, + pages = {359--396}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\CWGLWECI\\Caswell - 2022 - The formal demography of kinship IV Two-sex model.pdf:application/pdf}, +} + + +@article{goodman_family_1974, + title = {Family {Formation} and the {Frequency} of {Various} {Kinship} {Relationships}}, + doi = {10.1016/0040-5809(74)90049-5}, + language = {en}, + journal = {Theoretical Population Biology}, + author = {Goodman, Leo A and Keyfitz, Nathan and Pullum, Thomas W.}, + year = {1974}, + pages = {27}, + file = {Goodman - Family Formation and the Frequency of Various Kins.pdf:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\8ICBKYIE\\Goodman - Family Formation and the Frequency of Various Kins.pdf:application/pdf}, +} + + +@book{preston_demography:_2001, + address = {Malden, MA}, + title = {Demography: measuring and modeling population processes}, + isbn = {978-1-55786-214-3 978-1-55786-451-2}, + shorttitle = {Demography}, + publisher = {Blackwell Publishers}, + author = {Preston, Samuel H. and Heuveline, Patrick and Guillot, Michel}, + year = {2001}, + keywords = {Demography, Population research}, +} diff --git a/vignettes/Reference_OneSex.Rmd b/vignettes/Reference_OneSex.Rmd index 8f940d8..ced906e 100644 --- a/vignettes/Reference_OneSex.Rmd +++ b/vignettes/Reference_OneSex.Rmd @@ -1,5 +1,6 @@ --- title: "Expected kin counts by type of relative in a one-sex framework" +bibliography: references.bib output: html_document: toc: true @@ -20,7 +21,7 @@ Here, we'll show how `DemoKin` can be used to compute the number and age distrib ## 1. Kin counts with time-invariant rates -First, we compute kin counts in a **time-invariant** framework. We assume that Focal and all of her relatives experience the 2015 mortality and fertility rates throughout their entire lives (Caswell, 2019). The `DemoKin` package includes data from Sweden as an example: age-by-year matrices of survival probabilities (*swe_px*), survival ratios (*swe_Sx*), fertility rates (*swe_asfr*), and population numbers (*swe_pop*). You can see the data contained in `DemoKin` with `data(package="DemoKin")`. This data comes from the [Human Mortality Database](https://www.mortality.org/) and [Human Fertility Database](https://www.humanfertility.org/) (see `?DemoKin::get_HMDHFD`). +First, we compute kin counts in a **time-invariant** framework. We assume that Focal and all of her relatives experience the 2015 mortality and fertility rates throughout their entire lives [@caswell_formal_2019]. The `DemoKin` package includes data from Sweden as an example: age-by-year matrices of survival probabilities (*swe_px*), survival ratios (*swe_Sx*), fertility rates (*swe_asfr*), and population numbers (*swe_pop*). You can see the data contained in `DemoKin` with `data(package="DemoKin")`. This data comes from the [Human Mortality Database](https://www.mortality.org/) and [Human Fertility Database](https://www.humanfertility.org/) (see `?DemoKin::get_HMDHFD`). In order to implement the time-invariant models, the function `DemoKin::kin` expects a vector of survival ratios and another vector of fertility rates. In this example, we get the data for the year 2015, and run the matrix models: @@ -79,7 +80,7 @@ swe_2015[["kin_summary"]] %>% facet_wrap(~kin) ``` -Here, each relative type is identified by a unique code. Note that `DemoKin` uses different codes than Caswell (2019); the equivalence between the two set of codes is given in the following table: +Here, each relative type is identified by a unique code. Note that `DemoKin` uses different codes than Caswell [-@caswell_formal_2019]; the equivalence between the two set of codes is given in the following table: ```{r, fig.height=6, fig.width=8, echo=FALSE} demokin_codes %>% @@ -100,8 +101,7 @@ swe_2015[["kin_full"]] %>% ``` The one-sex model implemented in `DemoKin` assumes that the given fertility input applies to both sexes. - -Note that, if using survival rates ($S_x$) instead of probabilities ($p_x$), fertility vectors should account for female person-year exposure, using: $(\frac{f_x+f_{x+1}S_x}{2})\frac{L_0}{l_0}$ instead of only $fx$ (see Preston et.al, 2002). +Note that, if using survival rates ($S_x$) instead of probabilities ($p_x$), fertility vectors should account for female person-year exposure, using: $(\frac{f_x+f_{x+1}S_x}{2})\frac{L_0}{l_0}$ instead of only $fx$; see Preston et.al [-@preston_demography:_2001]). The `kin` function also includes a summary output with the count of living kin, mean and standard deviation of kin age, by type of kin, for each Focal's age: @@ -126,7 +126,7 @@ swe_2015[["kin_summary"]] %>% ## 2. Kin counts with time-variant rates The demography of Sweden is, in reality, changing every year. This means that Focal and her relatives will have experienced changing mortality and fertility rates over time. -We account for this, by using the time-variant models introduced by Caswell and Song (2021). +We account for this, by using the time-variant models introduced by Caswell and Song [-@caswell_formal_2021]. Let's take a look at the resulting kin counts for a Focal born in 1960, limiting the output to the relative types given in the argument `output_kin`: ```{r, fig.height=6, fig.width=8} @@ -179,7 +179,7 @@ swe_time_varying$kin_summary %>% ## 4. Prevalences -Given the distribution of kin by age, we can compute the expected portion of living kin in some stage given a set of prevalences by age (e.g., a disease, employment, etc.). This is known as the Sullivan Method in the life-table literature. A matrix formulation for same results can be found in Caswell (2019), which can also be extended to a time-variant framework. +Given the distribution of kin by age, we can compute the expected portion of living kin in some stage given a set of prevalences by age (e.g., a disease, employment, etc.). This is known as the Sullivan Method in the life-table literature. A matrix formulation for same results can be found in Caswell [-@caswell_formal_2019], which can also be extended to a time-variant framework. ```{r, message=FALSE, warning=FALSE, fig.height=6, fig.width=10} # let´s create some prevalence by age @@ -208,7 +208,7 @@ swe_2015$kin_full %>% `DemoKin` allows the computation of kin structures in a multi-state framework, classifying individuals jointly by age and some other feature (e.g., stages of a disease). For this, we need mortality and fertility data for each possible stage and probabilities of changing state by age. -Let's consider the example of Slovakia given by Caswell (2021), where stages are parity states. +Let's consider the example of Slovakia given by Caswell [-@caswell_formal_2021], where stages are parity states. `DemoKin` includes the data to replicate this analysis for the year 1980: - The data.frame `svk_fxs` is the fertility rate by age (rows) for each parity stage (columns). The first stage represents $parity=0$; the second stage, $parity=1$; and so on, until finally the sixth stage represents $parity\geq5$. @@ -216,7 +216,7 @@ Let's consider the example of Slovakia given by Caswell (2021), where stages are - The data.frame `svk_pxs` has the same structure and represents survival probabilities. - The list `svk_Uxs` has the same number of elements and ages (in this case 110, where $omega$ is 109). For each age, it contains a column-stochastic transition matrix with dimension for the state space. The entries are transition probabilities conditional on survival. -Following Caswell (2020), we can obtain the joint age-parity kin structure: +Following Caswell [-@caswell_formal_2020], we can obtain the joint age-parity kin structure: ```{r} # use birth_female=1 because fertility is for female only @@ -230,7 +230,7 @@ demokin_svk1980_caswell2020 <- parity = TRUE) ``` -Note that the function ask for risks already in a certain matrix format. As an example, consider the age-parity distribution of aunts, when Focal is 20 and 60 yo (this is equivalent to Figure 4 in Caswell [2021]). +Note that the function ask for risks already in a certain matrix format. As an example, consider the age-parity distribution of aunts, when Focal is 20 and 60 yo (this is equivalent to Figure 4 in Caswell [-@caswell_formal_2021]). ```{r, message=FALSE, warning=FALSE, fig.height=6, fig.width=10} demokin_svk1980_caswell2020 %>% @@ -248,7 +248,7 @@ demokin_svk1980_caswell2020 %>% facet_wrap(~age_focal, nrow = 2) ``` -We can also see the portion of living daughters and mothers at different parity stages over Focal's lie-course (this is equivalent to Figure 9 and 10 in Caswell [2021]). +We can also see the portion of living daughters and mothers at different parity stages over Focal's life-course (this is equivalent to Figure 9 and 10 in Caswell [-@caswell_formal_2021]). ```{r, message=FALSE, warning=FALSE, fig.height=6, fig.width=10} demokin_svk1980_caswell2020 %>% @@ -268,11 +268,3 @@ demokin_svk1980_caswell2020 %>% This function `kin_multi_stage` can be generalized to any kind of state (be sure to set parameter `parity = FALSE`, de default). ## References - -Caswell, H. (2019). The formal demography of kinhip: A matrix formulation. Demographic Research 41:679–712. doi:10.4054/DemRes.2019.41.24. - -Caswell, H. (2020). The formal demography of kinship II: Multistate models, parity, and sibship. Demographic Research, 42, 1097–1146. - -Caswell, H., & Song, X. (2021). The formal demography of kinhip III: kinhip dynamics with time-varying demographic rates. Demographic Research, 45, 517–546. - -Preston, S., Heuveline, P., & Guillot, M. (2000). Demography: Measuring and Modeling Population Processes. Wiley. diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index 0bac206..22dc189 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -1,5 +1,6 @@ --- title: "Two-sex kinship model" +bibliography: references.bib output: html_document: toc: true @@ -21,7 +22,7 @@ For example, the degree to which an average member of the population, call her F We may also be interested in considering how kinship structures vary by Focal's sex: a male Focal may have a different number of grandchildren than a female Focal given differences in fertility by sex. Documenting these differences matters since women often face greater expectations to provide support and informal care to relatives. As they live longer, they may find themselves at greater risk of being having no living kin. -The function `kin2sex` implements two-sex kinship models as introduced by Caswell (2022). +The function `kin2sex` implements two-sex kinship models as introduced by Caswell [-@caswell_formal_2022]. This vignette show how to run two-sex models and highlights some of the advantages of this model over one-sex models in populations with time-invariant and time-variant rates. ```{r, message=FALSE, warning=FALSE} @@ -200,11 +201,11 @@ kin_out_time_variant$kin_summary %>% ### 4. Approximations -Caswell (2022) introduced two approaches for approximating two-sex kinship structures for cases when male demographic rates are not available. +Caswell [-@caswell_formal_2022] introduced two approaches for approximating two-sex kinship structures for cases when male demographic rates are not available. The first is the *androgynous* approximation, which assumes equal fertility and survival for males and females. The second is the use of *GKP factors* apply to each type of relative (e.g., multiplying mothers by two to obtain the number of mothers and fathers). -Here, we present a visual evaluation of the accuracy of these approximations by comparing to 'true' two-sex models using the French data included with `DemoKin` for time-invariant models (Caswell, 2022). +Here, we present a visual evaluation of the accuracy of these approximations by comparing to 'true' two-sex models using the French data included with `DemoKin` for time-invariant models [@caswell_formal_2022]. We start by considering the androgynous approximation. We compare expected kin counts by age and find high levels of consistency for all kin types, except for grandfathers and great-grandfathers: @@ -268,5 +269,3 @@ bind_rows( ``` ## References - -Caswell, H. (2022). The formal demography of kinship IV: Two-sex models and their approximations. Demographic Research, 47, 359–396. diff --git a/vignettes/references.bib b/vignettes/references.bib new file mode 100644 index 0000000..19e08e3 --- /dev/null +++ b/vignettes/references.bib @@ -0,0 +1,92 @@ + +@article{caswell_formal_2019, + title = {The formal demography of kinship: {A} matrix formulation}, + volume = {41}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship}, + url = {https://www.demographic-research.org/volumes/vol41/24/}, + doi = {10.4054/DemRes.2019.41.24}, + language = {en}, + urldate = {2019-09-17}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = sep, + year = {2019}, + pages = {679--712}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\C84MW6VX\\Caswell - 2019 - The formal demography of kinship A matrix formula.pdf:application/pdf}, +} + +@article{caswell_formal_2020, + title = {The formal demography of kinship {II}: {Multistate} models, parity, and sibship}, + volume = {42}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {II}}, + url = {https://www.demographic-research.org/volumes/vol42/38/}, + doi = {10.4054/DemRes.2020.42.38}, + language = {en}, + urldate = {2021-03-05}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = jun, + year = {2020}, + pages = {1097--1146}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\LEHIM987\\Caswell - 2020 - The formal demography of kinship II Multistate mo.pdf:application/pdf}, +} + +@article{caswell_formal_2021, + title = {The formal demography of kinship {III}: {Kinship} dynamics with time-varying demographic rates}, + volume = {45}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {III}}, + url = {https://www.demographic-research.org/volumes/vol45/16/}, + doi = {10.4054/DemRes.2021.45.16}, + language = {en}, + urldate = {2021-10-19}, + journal = {Demographic Research}, + author = {Caswell, Hal and Song, Xi}, + month = aug, + year = {2021}, + pages = {517--546}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\W2JPMRH8\\Caswell and Song - 2021 - The formal demography of kinship III Kinship dyna.pdf:application/pdf}, +} + +@article{caswell_formal_2022, + title = {The formal demography of kinship {IV}: {Two}-sex models and their approximations}, + volume = {47}, + issn = {1435-9871}, + shorttitle = {The formal demography of kinship {IV}}, + url = {https://www.demographic-research.org/volumes/vol47/13/}, + doi = {10.4054/DemRes.2022.47.13}, + language = {en}, + urldate = {2022-09-27}, + journal = {Demographic Research}, + author = {Caswell, Hal}, + month = sep, + year = {2022}, + pages = {359--396}, + file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\CWGLWECI\\Caswell - 2022 - The formal demography of kinship IV Two-sex model.pdf:application/pdf}, +} + + +@article{goodman_family_1974, + title = {Family {Formation} and the {Frequency} of {Various} {Kinship} {Relationships}}, + doi = {10.1016/0040-5809(74)90049-5}, + language = {en}, + journal = {Theoretical Population Biology}, + author = {Goodman, Leo A and Keyfitz, Nathan and Pullum, Thomas W.}, + year = {1974}, + pages = {27}, + file = {Goodman - Family Formation and the Frequency of Various Kins.pdf:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\8ICBKYIE\\Goodman - Family Formation and the Frequency of Various Kins.pdf:application/pdf}, +} + + +@book{preston_demography:_2001, + address = {Malden, MA}, + title = {Demography: measuring and modeling population processes}, + isbn = {978-1-55786-214-3 978-1-55786-451-2}, + shorttitle = {Demography}, + publisher = {Blackwell Publishers}, + author = {Preston, Samuel H. and Heuveline, Patrick and Guillot, Michel}, + year = {2001}, + keywords = {Demography, Population research}, +} From 414a3da10edf65f211a574f66f0e6375978da972 Mon Sep 17 00:00:00 2001 From: alburezg Date: Fri, 26 May 2023 17:15:16 +0200 Subject: [PATCH 25/37] removed extra ref file --- references.bib | 92 -------------------------------------------------- 1 file changed, 92 deletions(-) delete mode 100644 references.bib diff --git a/references.bib b/references.bib deleted file mode 100644 index 19e08e3..0000000 --- a/references.bib +++ /dev/null @@ -1,92 +0,0 @@ - -@article{caswell_formal_2019, - title = {The formal demography of kinship: {A} matrix formulation}, - volume = {41}, - issn = {1435-9871}, - shorttitle = {The formal demography of kinship}, - url = {https://www.demographic-research.org/volumes/vol41/24/}, - doi = {10.4054/DemRes.2019.41.24}, - language = {en}, - urldate = {2019-09-17}, - journal = {Demographic Research}, - author = {Caswell, Hal}, - month = sep, - year = {2019}, - pages = {679--712}, - file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\C84MW6VX\\Caswell - 2019 - The formal demography of kinship A matrix formula.pdf:application/pdf}, -} - -@article{caswell_formal_2020, - title = {The formal demography of kinship {II}: {Multistate} models, parity, and sibship}, - volume = {42}, - issn = {1435-9871}, - shorttitle = {The formal demography of kinship {II}}, - url = {https://www.demographic-research.org/volumes/vol42/38/}, - doi = {10.4054/DemRes.2020.42.38}, - language = {en}, - urldate = {2021-03-05}, - journal = {Demographic Research}, - author = {Caswell, Hal}, - month = jun, - year = {2020}, - pages = {1097--1146}, - file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\LEHIM987\\Caswell - 2020 - The formal demography of kinship II Multistate mo.pdf:application/pdf}, -} - -@article{caswell_formal_2021, - title = {The formal demography of kinship {III}: {Kinship} dynamics with time-varying demographic rates}, - volume = {45}, - issn = {1435-9871}, - shorttitle = {The formal demography of kinship {III}}, - url = {https://www.demographic-research.org/volumes/vol45/16/}, - doi = {10.4054/DemRes.2021.45.16}, - language = {en}, - urldate = {2021-10-19}, - journal = {Demographic Research}, - author = {Caswell, Hal and Song, Xi}, - month = aug, - year = {2021}, - pages = {517--546}, - file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\W2JPMRH8\\Caswell and Song - 2021 - The formal demography of kinship III Kinship dyna.pdf:application/pdf}, -} - -@article{caswell_formal_2022, - title = {The formal demography of kinship {IV}: {Two}-sex models and their approximations}, - volume = {47}, - issn = {1435-9871}, - shorttitle = {The formal demography of kinship {IV}}, - url = {https://www.demographic-research.org/volumes/vol47/13/}, - doi = {10.4054/DemRes.2022.47.13}, - language = {en}, - urldate = {2022-09-27}, - journal = {Demographic Research}, - author = {Caswell, Hal}, - month = sep, - year = {2022}, - pages = {359--396}, - file = {Full Text:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\CWGLWECI\\Caswell - 2022 - The formal demography of kinship IV Two-sex model.pdf:application/pdf}, -} - - -@article{goodman_family_1974, - title = {Family {Formation} and the {Frequency} of {Various} {Kinship} {Relationships}}, - doi = {10.1016/0040-5809(74)90049-5}, - language = {en}, - journal = {Theoretical Population Biology}, - author = {Goodman, Leo A and Keyfitz, Nathan and Pullum, Thomas W.}, - year = {1974}, - pages = {27}, - file = {Goodman - Family Formation and the Frequency of Various Kins.pdf:C\:\\Users\\alburezgutierrez\\Zotero\\storage\\8ICBKYIE\\Goodman - Family Formation and the Frequency of Various Kins.pdf:application/pdf}, -} - - -@book{preston_demography:_2001, - address = {Malden, MA}, - title = {Demography: measuring and modeling population processes}, - isbn = {978-1-55786-214-3 978-1-55786-451-2}, - shorttitle = {Demography}, - publisher = {Blackwell Publishers}, - author = {Preston, Samuel H. and Heuveline, Patrick and Guillot, Michel}, - year = {2001}, - keywords = {Demography, Population research}, -} From 1d81eec727c9df50d3fed58ef5dec87d972555a9 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 26 May 2023 16:31:26 -0300 Subject: [PATCH 26/37] fixing cran, adding biblio --- NAMESPACE | 2 ++ R/kin.R | 8 ++++---- R/kin2sex.R | 8 ++++---- man/kin.Rd | 6 +++--- man/kin2sex.Rd | 8 ++++---- man/kin_time_variant.Rd | 2 +- man/rename_kin.Rd | 3 +++ man/timevarying_kin.Rd | 3 +++ man/timevarying_kin_2sex.Rd | 3 +++ 9 files changed, 27 insertions(+), 16 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index 72c7b74..0d95065 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -11,4 +11,6 @@ export(kin_time_variant_2sex) export(output_period_cohort_combination) export(plot_diagram) export(rename_kin) +export(timevarying_kin) +export(timevarying_kin_2sex) importFrom(magrittr,"%>%") diff --git a/R/kin.R b/R/kin.R index 2a3443f..0d5a060 100644 --- a/R/kin.R +++ b/R/kin.R @@ -5,10 +5,10 @@ #' @details See Caswell (2019) and Caswell (2021) for details on formulas. One sex only (female by default). #' @param p numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class #' in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). -#' @param f numeric. Same as p but for fertility rates. +#' @param f numeric. Same as `p` but for fertility rates. #' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. -#' @param n numeric. Same as p but for population distribution (counts or `%`). Optional. -#' @param pi numeric. Same as U but for childbearing distribution (sum to 1). Optional. +#' @param n numeric. Only for `time_invariant = FALSE`. Same as `p` but for population distribution (counts or `%`). Optional. +#' @param pi numeric. Same as `U` but for childbearing distribution (sum to 1). Optional. #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... @@ -86,7 +86,7 @@ kin <- function(p = NULL, f = NULL, p <- p[,as.character(output_period)] f <- f[,as.character(output_period)] } - kin_full <- kin_time_invariant(p = p, f = f, + kin_full <- kin_time_invariant(p = p, f = f, pi = pi, output_kin = output_kin, birth_female = birth_female) %>% dplyr::mutate(cohort = NA, year = NA) }else{ diff --git a/R/kin2sex.R b/R/kin2sex.R index 3633087..a50a438 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -7,14 +7,14 @@ #' @details See Caswell (2022) for details on formulas. #' @param pf numeric. A vector (atomic) or matrix with female probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). #' @param pm numeric. A vector (atomic) or matrix with male probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). -#' @param ff numeric. Same as pf but for fertility rates. -#' @param fm numeric. Same as pm but for fertility rates. +#' @param ff numeric. Same as `pf` but for fertility rates. +#' @param fm numeric. Same as `pm` but for fertility rates. #' @param time_invariant logical. Constant assumption for a given `year` rates. Default `TRUE`. #' @param sex_focal character. "f" for female or "m" for male. #' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. #' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. -#' @param nf numeric. Same as pf but for population distribution (counts or `%`). Optional. -#' @param nm numeric. Same as pm but for population distribution (counts or `%`). Optional. +#' @param nf numeric. Only for `time_invariant = FALSE`. Same as `pf` but for population distribution (counts or `%`). Optional. +#' @param nm numeric. Only for `time_invariant = FALSE`. Same as `pm` but for population distribution (counts or `%`). Optional. #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... diff --git a/man/kin.Rd b/man/kin.Rd index 2f52db6..83dbe04 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -22,13 +22,13 @@ kin( \item{p}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} -\item{f}{numeric. Same as p but for fertility rates.} +\item{f}{numeric. Same as \code{p} but for fertility rates.} \item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} -\item{pi}{numeric. Same as U but for childbearing distribution (sum to 1). Optional.} +\item{pi}{numeric. Same as \code{U} but for childbearing distribution (sum to 1). Optional.} -\item{n}{numeric. Same as p but for population distribution (counts or \verb{\%}). Optional.} +\item{n}{numeric. Only for \code{time_invariant = FALSE}. Same as \code{p} but for population distribution (counts or \verb{\%}). Optional.} \item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} diff --git a/man/kin2sex.Rd b/man/kin2sex.Rd index 4a31d5d..be985aa 100644 --- a/man/kin2sex.Rd +++ b/man/kin2sex.Rd @@ -26,9 +26,9 @@ kin2sex( \item{pm}{numeric. A vector (atomic) or matrix with male probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} -\item{ff}{numeric. Same as pf but for fertility rates.} +\item{ff}{numeric. Same as \code{pf} but for fertility rates.} -\item{fm}{numeric. Same as pm but for fertility rates.} +\item{fm}{numeric. Same as \code{pm} but for fertility rates.} \item{time_invariant}{logical. Constant assumption for a given \code{year} rates. Default \code{TRUE}.} @@ -40,9 +40,9 @@ kin2sex( \item{pim}{numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} -\item{nf}{numeric. Same as pf but for population distribution (counts or \verb{\%}). Optional.} +\item{nf}{numeric. Only for \code{time_invariant = FALSE}. Same as \code{pf} but for population distribution (counts or \verb{\%}). Optional.} -\item{nm}{numeric. Same as pm but for population distribution (counts or \verb{\%}). Optional.} +\item{nm}{numeric. Only for \code{time_invariant = FALSE}. Same as \code{pm} but for population distribution (counts or \verb{\%}). Optional.} \item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} diff --git a/man/kin_time_variant.Rd b/man/kin_time_variant.Rd index 0646778..787052f 100644 --- a/man/kin_time_variant.Rd +++ b/man/kin_time_variant.Rd @@ -36,7 +36,7 @@ kin_time_variant( \item{list_output}{logical. Results as a list with years elements (as a result of \code{output_cohort} and \code{output_period} combination), with a second list of \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} } \value{ -A data frame of population kinship structure, with focal's cohort, focal´s age, period year, type of relatives +A data frame of population kinship structure, with Focal's cohort, focal´s age, period year, type of relatives (for example \code{d} is daughter, \code{oa} is older aunts, etc.), living and death kin counts, and age of (living or time deceased) relatives. If \code{list_output = TRUE} then this is a list. } \description{ diff --git a/man/rename_kin.Rd b/man/rename_kin.Rd index ea52394..b5d195b 100644 --- a/man/rename_kin.Rd +++ b/man/rename_kin.Rd @@ -11,6 +11,9 @@ rename_kin(df, sex = "f") \item{sex}{character. "f" for female, "m" for male or "2sex" for both sex naming.} } +\value{ +Add a column with kin labels in the input data frame. +} \description{ Add kin labels depending the sex } diff --git a/man/timevarying_kin.Rd b/man/timevarying_kin.Rd index 1826543..ac481c9 100644 --- a/man/timevarying_kin.Rd +++ b/man/timevarying_kin.Rd @@ -17,6 +17,9 @@ timevarying_kin(Ut, ft, pit, ages, pkin) \item{pkin}{numeric. A list with kin count distribution in previous year.} } +\value{ +A list of 14 types of kin matrices (kin age by Focal age) projected one time interval. +} \description{ one time projection kin. internal function. } diff --git a/man/timevarying_kin_2sex.Rd b/man/timevarying_kin_2sex.Rd index ba4f03e..abf1774 100644 --- a/man/timevarying_kin_2sex.Rd +++ b/man/timevarying_kin_2sex.Rd @@ -21,6 +21,9 @@ timevarying_kin_2sex(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin) \item{pkin}{numeric. A list with kin count distribution in previous year.} } +\value{ +A list of 14 types of kin matrices (kin age by Focal age, blocked for two sex) projected one time interval. +} \description{ one time projection kin. internal function. } From b3f5387a20bd765d8567e6cfa6a8918413b1e138 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 26 May 2023 16:32:04 -0300 Subject: [PATCH 27/37] Increment version number to 1.0.3 --- DESCRIPTION | 2 +- NEWS.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index b48b899..62a4398 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -3,7 +3,7 @@ Title: Estimate Population Kin Distribution Description: Estimate population kin counts and its distribution by type, age and sex. The package implements one-sex and two-sex framework for studying living-death availability, with time varying rates or not, and multi-stage model. -Version: 1.0.2 +Version: 1.0.3 Authors@R: c( person("Iván", "Williams", email = "act.ivanwilliams@gmail.com", role = "cre"), person("Diego", "Alburez-Gutierrez", email = "alburezgutierrez@demogr.mpg.de", role = "aut"), diff --git a/NEWS.md b/NEWS.md index 3896284..cfc0438 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,5 @@ +# DemoKin 1.0.3 + # DemoKin 1.0.2 # DemoKin 1.0.1 From f54cd023b2e6bb2de1e74d1d0c89c13828149c44 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Sun, 4 Jun 2023 10:15:04 -0300 Subject: [PATCH 28/37] preapare cran --- CRAN-SUBMISSION | 6 +++--- cran-comments.md | 2 +- vignettes/Reference_TwoSex.Rmd | 19 +++++++++++++------ 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/CRAN-SUBMISSION b/CRAN-SUBMISSION index 2ac4999..90dd290 100644 --- a/CRAN-SUBMISSION +++ b/CRAN-SUBMISSION @@ -1,3 +1,3 @@ -Version: 1.0.2 -Date: 2023-05-24 13:15:15 UTC -SHA: ec457d74b47529e4de91917ebb8129a6e904c199 +Version: 1.0.3 +Date: 2023-05-26 19:38:45 UTC +SHA: b3f5387a20bd765d8567e6cfa6a8918413b1e138 diff --git a/cran-comments.md b/cran-comments.md index 858617d..998da63 100644 --- a/cran-comments.md +++ b/cran-comments.md @@ -2,4 +2,4 @@ 0 errors | 0 warnings | 1 note -* This is a new release. +* This is a new release. I replaced the use of par(), which created some problems, with ggplot tools. Hope solves the issue. diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index 22dc189..8ee0d94 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -152,15 +152,22 @@ swe_surv_m_matrix <- swe_px ^ 1.5 # artificial perturbation for this example swe_fert_f_matrix <- swe_asfr swe_fert_m_matrix <- rbind(matrix(0, 5, years), swe_asfr[-((ages-4):ages),]) * 1.05 # artificial perturbation for this example +``` -par(mfrow=c(1,2)) -plot(swe_surv_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Survival probability") -lines(swe_surv_m_matrix[,"1900"], col=2) -plot(swe_fert_f_matrix[,"1900"], t="l", xlab = "Age", ylab = "Fertility rate") -lines(swe_fert_m_matrix[,"1900"], col=2) -options(mfrow = NULL) +This is how it looks for year 1900: +```{r} +bind_rows( + data.frame(age = 0:100, sex = "Female", component = "Fertility rate", value = swe_fert_f_matrix[,"1900"]), + data.frame(age = 0:100, sex = "Male", component = "Fertility rate", value = swe_fert_m_matrix[,"1900"]), + data.frame(age = 0:100, sex = "Female", component = "Survival probability", value = swe_surv_f_matrix[,"1900"]), + data.frame(age = 0:100, sex = "Male", component = "Survival probability", value = swe_surv_m_matrix[,"1900"])) %>% + ggplot(aes(age, value, col = sex)) + + geom_line() + + theme_bw() + + facet_wrap(~component, scales = "free") ``` + We now run the time-variant two-sex models (note the `time_invariant = FALSE` argument): ```{r} From db6ae988af469988ad02267f66f1be43d224f2ec Mon Sep 17 00:00:00 2001 From: alburezg Date: Fri, 9 Jun 2023 09:36:26 +0200 Subject: [PATCH 29/37] updated readme after cran release --- README.Rmd | 12 ++++++----- README.md | 58 ++++++++++++++++++++++++++++++++---------------------- 2 files changed, 42 insertions(+), 28 deletions(-) diff --git a/README.Rmd b/README.Rmd index 0b6feb8..a3f462f 100644 --- a/README.Rmd +++ b/README.Rmd @@ -34,12 +34,13 @@ library(knitr) ## Installation -``` {r, eval=FALSE, include = F} -You can install the CRAN version: +Download the stable version [from CRAN](https://cran.r-project.org/web/packages/DemoKin/): + +``` {r, eval=FALSE, include = T} install.packages("DemoKin") ``` -You can install the development version from GitHub with: +Or you can install the development version from GitHub: ``` {r, eval=FALSE} # install.packages("devtools") @@ -79,12 +80,13 @@ plot_diagram(kin_total, rounding = 2) Relatives are identified by a unique code: ```{r, fig.height=6, fig.width=8, echo=FALSE} -kable(DemoKin::demokin_codes[,c(1,3)]) +# kable(DemoKin::demokin_codes[,c("DemoKin", "Labels_2sex")]) +kable(DemoKin::demokin_codes[,-c(2)]) ``` ## Vignette -For more details, including an extension to time-variant rates, deceased kin, and multi-state models in a one-sex framework, see `vignette("Reference_OneSex", package = "DemoKin")`. For two-sex models, see `vignette("Reference_TwoSex", package = "DemoKin")`. +For more details, including an extension to time-variant rates, deceased kin, and multi-state models in a one-sex framework, see the [Reference_OneSex](https://cran.r-project.org/web/packages/DemoKin/vignettes/Reference_OneSex.html) vignette; also accessible from DemoKin: `vignette("Reference_OneSex", package = "DemoKin")`. For two-sex models, see the [Reference_TwoSex](https://cran.r-project.org/web/packages/DemoKin/vignettes/Reference_TwoSex.html) vignette; also accessible from DemoKin: `vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. ## Citation diff --git a/README.md b/README.md index 9edd51d..2bb3c6b 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,14 @@ theoretical development by Goodman, Keyfitz and Pullum (1974). ## Installation -You can install the development version from GitHub with: +Download the stable version [from +CRAN](https://cran.r-project.org/web/packages/DemoKin/): + +``` r +install.packages("DemoKin") +``` + +Or you can install the development version from GitHub: ``` r # install.packages("devtools") @@ -72,33 +79,38 @@ plot_diagram(kin_total, rounding = 2) Relatives are identified by a unique code: -| DemoKin | Labels_female | -|:--------|:----------------------------| -| coa | Cousins from older aunts | -| cya | Cousins from younger aunts | -| c | Cousins | -| d | Daughters | -| gd | Grand-daughters | -| ggd | Great-grand-daughters | -| ggm | Great-grandmothers | -| gm | Grandmothers | -| m | Mother | -| nos | Nieces from older sisters | -| nys | Nieces from younger sisters | -| n | Nieces | -| oa | Aunts older than mother | -| ya | Aunts younger than mother | -| a | Aunts | -| os | Older sisters | -| ys | Younger sisters | -| s | Sisters | +| DemoKin | Labels_female | Labels_male | Labels_2sex | +|:--------|:----------------------------|:------------------------------|:----------------------------------| +| coa | Cousins from older aunts | Cousins from older uncles | Cousins from older aunts/uncles | +| cya | Cousins from younger aunts | Cousins from younger uncles | Cousins from younger aunts/uncles | +| c | Cousins | Cousins | Cousins | +| d | Daughters | Brothers | Siblings | +| gd | Grand-daughters | Grand-sons | Grand-childrens | +| ggd | Great-grand-daughters | Great-grand-sons | Great-grand-childrens | +| ggm | Great-grandmothers | Great-grandfathers | Great-grandfparents | +| gm | Grandmothers | Grandfathers | Grandparents | +| m | Mother | Father | Parents | +| nos | Nieces from older sisters | Nephews from older brothers | Niblings from older siblings | +| nys | Nieces from younger sisters | Nephews from younger brothers | Niblings from younger siblings | +| n | Nieces | Nephews | Niblings | +| oa | Aunts older than mother | Uncles older than fathers | Aunts/Uncles older than parents | +| ya | Aunts younger than mother | Uncles younger than father | Aunts/Uncles younger than parents | +| a | Aunts | Uncles | Aunts/Uncles | +| os | Older sisters | Older brothers | Older siblings | +| ys | Younger sisters | Younger brothers | Younger siblings | +| s | Sisters | Brothers | Siblings | ## Vignette For more details, including an extension to time-variant rates, deceased -kin, and multi-state models in a one-sex framework, see +kin, and multi-state models in a one-sex framework, see the +[Reference_OneSex](https://cran.r-project.org/web/packages/DemoKin/vignettes/Reference_OneSex.html) +vignette; also accessible from DemoKin: `vignette("Reference_OneSex", package = "DemoKin")`. For two-sex models, -see `vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette +see the +[Reference_TwoSex](https://cran.r-project.org/web/packages/DemoKin/vignettes/Reference_TwoSex.html) +vignette; also accessible from DemoKin: +`vignette("Reference_TwoSex", package = "DemoKin")`. If the vignette does not load, you may need to install the package as `devtools::install_github("IvanWilli/DemoKin", build_vignettes = T)`. From 2e90b913e1643eeadefac08eebc091f853e760eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin-Samuel=20Schl=C3=BCter?= Date: Tue, 6 Feb 2024 15:20:22 -0500 Subject: [PATCH 30/37] start building time invariant for 2 sex by cause of death --- R/kindeath_cod_time_invariant_2sex.R | 210 +++++++++++++++++++++++++++ 1 file changed, 210 insertions(+) create mode 100644 R/kindeath_cod_time_invariant_2sex.R diff --git a/R/kindeath_cod_time_invariant_2sex.R b/R/kindeath_cod_time_invariant_2sex.R new file mode 100644 index 0000000..a72fb44 --- /dev/null +++ b/R/kindeath_cod_time_invariant_2sex.R @@ -0,0 +1,210 @@ +#' Estimate kin counts in a time invariant framework for two-sex model. + +#' @description Two-sex matrix framework for kin count estimates.This produces kin counts grouped by kin, age and sex of +#' each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +#' are grouped in one male count of cousins. +#' @details See Caswell (2022) for details on formulas. +#' @param pf numeric. A vector of survival probabilities for females with same length as ages. +#' @param ff numeric. A vector of age-specific fertility rates for females with same length as ages. +#' @param pm numeric. A vector of survival probabilities for males with same length as ages. +#' @param fm numeric. A vector of age-specific fertility rates for males with same length as ages. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param birth_female numeric. Female portion at birth. +#' @param pif numeric. For using some specific non-stable age distribution of childbearing for mothers (same length as ages). Default `NULL`. +#' @param pim numeric. For using some specific non-stable age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param output_kin character. kin to return, considering matrilineal names. For example "m" for parents, "d" for children, etc. See the `vignette` for all kin types. +#' @param list_output logical. Results as a list with `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` +#' +#' @return A data frame with focal´s age, related ages and type of kin +#' (for example `d` is children, `oa` is older aunts/uncles, etc.), sex, alive and death. If `list_output = TRUE` then this is a list. +#' @export + +## BEN: ======================================================================== +# Function building: +library(DemoKin) +library(tidyr) +library(dplyr) + +# Input of model +ff <- fra_asfr_sex[,"ff"] +fm <- fra_asfr_sex[,"fm"] +pf <- fra_surv_sex[,"pf"] +pm <- fra_surv_sex[,"pm"] + +# Create a fictitious hazard matrix with three causes of death. +# Assume that each cause consists of 1/3 of all death in all age groups. +Hf <- Hm <- matrix(1, nrow = 3, ncol = length(ff)) + +## ============================================================================= + + +# BEN: Added hazard matrices as inputs. +# Assume that input of cause-specific mortality will be in terms of +# matrices of cause-specific hazards for the two sexes (causes * ages). +# Alternative: a matrix (causes * ages) containing the ratio mxi/mx. +kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, + ff = NULL, fm = NULL, + Hf = NULL, Hm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + output_kin = NULL, + list_output = FALSE){ + + # global vars + .<-sex_kin<-alive<-count<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + + # same input length + + # BEN: Now we should also check the dimensions of the cause-specific hazard + # matrices. + if(!all(length(pf)==length(pm), length(pf)==length(ff), length(pf)==length(fm), + nrow(Hf)==nrow(Hm), ncol(Hf)==ncol(Hm), ncol(Hf)==length(pf))) stop("Number of age groups of p's, h's, and f's should match") + + # make matrix transition from vectors. Include death counts with matrix M + age = 0:(length(pf)-1) + ages = length(age) + agess = ages * 2 + Uf = Um = Ff = Fm = Gt = zeros = matrix(0, nrow=ages, ncol=ages) + Uf[row(Uf)-1 == col(Uf)] <- pf[-ages] + + # BEN: What is the purpose of the following line? By default it is zero due to + # how the matrix is created + Uf[ages, ages] = Uf[ages] + + Um[row(Um)-1 == col(Um)] <- pm[-ages] + Um[ages, ages] = Um[ages] + + # BEN: Building of M, matrix of cause-specific prob. of dying. + # Hence, M = H D(h_tilde)^{-1} D(q) + # where h_tilde are the summed hazards for each age, and + # q = 1 - p + alpha <- nrow(Hf) # number of causes of death + sum_hf <- t(rep(1, alpha)) %*% Hf # h_tilde female + sum_hm <- t(rep(1, alpha)) %*% Hm # h_tilde male + Mf <- Hf %*% solve(diag(c(sum_hf))) %*% diag(1-pf) + Mm <- Hm %*% solve(diag(c(sum_hm))) %*% diag(1-pm) + # Mm <- diag(1-pm) + # Mf <- diag(1-pf) + zeros_l <- matrix(0, nrow = ages, ncol = alpha) # zero matrix for living kin part + zeros_d = matrix(0, nrow = alpha, ncol = alpha) # zero matrix for death kin part + Ut <- as.matrix(rbind( + cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros_l, zeros_l)), + cbind(Matrix::bdiag(Mf, Mm), Matrix::bdiag(zeros_d, zeros_d)))) + + Ff[1,] = ff + Fm[1,] = fm + + # BEN: CONTINUE WORK FROM HERE + Ft <- Ft_star <- matrix(0, agess*2, agess*2) + Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Ff, birth_female * Fm), + cbind((1-birth_female) * Ff, (1-birth_female) * Fm)) + + # mother and father do not reproduce independently to produce focal´s siblings. Assign to mother + Ft_star[1:agess,1:ages] <- rbind(birth_female * Ff, (1-birth_female) * Ff) + + # parents age distribution under stable assumption in case no input + if(is.null(pim) | is.null(pif)){ + A = Matrix::bdiag(Uf, Um) + Ft_star[1:agess,1:agess] + A_decomp = eigen(A) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + wf = w[1:ages] + wm = w[(ages+1):(2*ages)] + pif = wf * ff / sum(wf * ff) + pim = wm * fm / sum(wm * fm) + } + + # initial count matrix (kin ages in rows and focal age in column) + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, agess*2, ages) + + # locate focal at age 0 depending sex + sex_index <- ifelse(sex_focal == "f", 1, ages+1) + phi[sex_index, 1] <- 1 + + # G matrix moves focal by age + G <- matrix(0, nrow=ages, ncol=ages) + G[row(G)-1 == col(G)] <- 1 + Gt <- matrix(0, agess*2, agess*2) + Gt[1:(agess), 1:(agess)] <- as.matrix(Matrix::bdiag(G, G)) + + # focal´s trip + # names of matrix count by kin refers to matrilineal as general reference + m[1:(agess),1] = c(pif, pim) + for(i in 1:(ages-1)){ + # i = 1 + phi[,i+1] = Gt %*% phi[,i] + d[,i+1] = Ut %*% d[,i] + Ft %*% phi[,i] + gd[,i+1] = Ut %*% gd[,i] + Ft %*% d[,i] + ggd[,i+1] = Ut %*% ggd[,i] + Ft %*% gd[,i] + m[,i+1] = Ut %*% m[,i] + ys[,i+1] = Ut %*% ys[,i] + Ft_star %*% m[,i] + nys[,i+1] = Ut %*% nys[,i] + Ft %*% ys[,i] + } + + gm[1:(agess),1] = m[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + gm[,i+1] = Ut %*% gm[,i] + } + + ggm[1:(agess),1] = gm[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + ggm[,i+1] = Ut %*% ggm[,i] + } + + os[1:(agess),1] = d[1:(agess),] %*% pif + nos[1:(agess),1] = gd[1:(agess),] %*% pif + for(i in 1:(ages-1)){ + os[,i+1] = Ut %*% os[,i] + nos[,i+1] = Ut %*% nos[,i] + Ft %*% os[,i] + } + + oa[1:(agess),1] = os[1:(agess),] %*% (pif + pim) + ya[1:(agess),1] = ys[1:(agess),] %*% (pif + pim) + coa[1:(agess),1] = nos[1:(agess),] %*% (pif + pim) + cya[1:(agess),1] = nys[1:(agess),] %*% (pif + pim) + for(i in 1:(ages-1)){ + oa[,i+1] = Ut %*% oa[,i] + ya[,i+1] = Ut %*% ya[,i] + Ft_star %*% gm[,i] + coa[,i+1] = Ut %*% coa[,i] + Ft %*% oa[,i] + cya[,i+1] = Ut %*% cya[,i] + Ft %*% ya[,i] + } + + # get results + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + # only selected kin + if(!is.null(output_kin)){ + kin_list <- kin_list %>% purrr::keep(names(.) %in% output_kin) + } + + # as data.frame + kin <- purrr::map2(kin_list, names(kin_list), + function(x,y){ + # reassign deaths to Focal experienced age + x[(agess+1):(agess*2),1:(ages-1)] <- x[(agess+1):(agess*2),2:ages] + x[(agess+1):(agess*2),ages] <- 0 + out <- as.data.frame(x) + colnames(out) <- age + out %>% + dplyr::mutate(kin = y, + age_kin = rep(age,4), + sex_kin = rep(c(rep("f",ages), rep("m",ages)),2), + alive = c(rep("living",2*ages), rep("dead",2*ages))) %>% + tidyr::pivot_longer(c(-age_kin, -kin, -sex_kin, -alive), names_to = "age_focal", values_to = "count") %>% + dplyr::mutate(age_focal = as.integer(age_focal)) %>% + tidyr::pivot_wider(names_from = alive, values_from = count) + } + ) %>% + purrr::reduce(rbind) + + # results as list? + if(list_output) { + out <- kin_list + }else{ + out <- kin + } + + return(out) +} From 6cdccb5c12047e1c3e0c5fa46b9b4fe4aa4ee5ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin-Samuel=20Schl=C3=BCter?= Date: Tue, 13 Feb 2024 15:07:07 -0500 Subject: [PATCH 31/37] created functions for cod --- ...t_2sex.R => kin_time_invariant_2sex_cod.R} | 141 +++++-- R/kin_time_variant_2sex_cod.R | 356 ++++++++++++++++++ 2 files changed, 460 insertions(+), 37 deletions(-) rename R/{kindeath_cod_time_invariant_2sex.R => kin_time_invariant_2sex_cod.R} (61%) create mode 100644 R/kin_time_variant_2sex_cod.R diff --git a/R/kindeath_cod_time_invariant_2sex.R b/R/kin_time_invariant_2sex_cod.R similarity index 61% rename from R/kindeath_cod_time_invariant_2sex.R rename to R/kin_time_invariant_2sex_cod.R index a72fb44..0434360 100644 --- a/R/kindeath_cod_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex_cod.R @@ -21,19 +21,25 @@ ## BEN: ======================================================================== # Function building: -library(DemoKin) -library(tidyr) -library(dplyr) - -# Input of model -ff <- fra_asfr_sex[,"ff"] -fm <- fra_asfr_sex[,"fm"] -pf <- fra_surv_sex[,"pf"] -pm <- fra_surv_sex[,"pm"] - -# Create a fictitious hazard matrix with three causes of death. -# Assume that each cause consists of 1/3 of all death in all age groups. -Hf <- Hm <- matrix(1, nrow = 3, ncol = length(ff)) +# library(DemoKin) +# library(tidyr) +# library(dplyr) +# library(here) +# +# # Input of model +# ff <- fra_asfr_sex[,"ff"] +# fm <- fra_asfr_sex[,"fm"] +# pf <- fra_surv_sex[,"pf"] +# pm <- fra_surv_sex[,"pm"] +# birth_female = 1/2.04 +# pif <- pim <- NULL +# sex_focal = "f" +# output_kin = NULL +# list_output = FALSE +# +# # Create a fictitious hazard matrix with three causes of death. +# # Assume that each cause consists of 1/3 of all death in all age groups. +# Hf <- Hm <- matrix(1, nrow = 3, ncol = length(ff)) ## ============================================================================= @@ -42,14 +48,19 @@ Hf <- Hm <- matrix(1, nrow = 3, ncol = length(ff)) # Assume that input of cause-specific mortality will be in terms of # matrices of cause-specific hazards for the two sexes (causes * ages). # Alternative: a matrix (causes * ages) containing the ratio mxi/mx. -kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, - ff = NULL, fm = NULL, - Hf = NULL, Hm = NULL, - sex_focal = "f", - birth_female = 1/2.04, - pif = NULL, pim = NULL, - output_kin = NULL, - list_output = FALSE){ +kin_time_invariant_2sex_cod <- function(pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + Hf = NULL, + Hm = NULL, + sex_focal = "f", + birth_female = 1 / 2.04, + pif = NULL, + pim = NULL, + output_kin = NULL, + list_output = FALSE) { + # global vars .<-sex_kin<-alive<-count<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL @@ -65,7 +76,15 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, age = 0:(length(pf)-1) ages = length(age) agess = ages * 2 - Uf = Um = Ff = Fm = Gt = zeros = matrix(0, nrow=ages, ncol=ages) + Uf = Um = Ff = Fm = Gt = matrix(0, nrow=ages, ncol=ages) + + # BEN: The zero matrix was deleted from line above and has + # to be made specific according to living/dead kin + # part of the block matrix Ut. + causes <- nrow(Hf) # number of causes of death + zeros_l <- matrix(0, nrow = ages, ncol = (causes*ages)) # zero matrix for living kin part + zeros_d = matrix(0, nrow = (causes*ages), ncol = (causes*ages)) # zero matrix for death kin part + Uf[row(Uf)-1 == col(Uf)] <- pf[-ages] # BEN: What is the purpose of the following line? By default it is zero due to @@ -79,24 +98,30 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, # Hence, M = H D(h_tilde)^{-1} D(q) # where h_tilde are the summed hazards for each age, and # q = 1 - p - alpha <- nrow(Hf) # number of causes of death - sum_hf <- t(rep(1, alpha)) %*% Hf # h_tilde female - sum_hm <- t(rep(1, alpha)) %*% Hm # h_tilde male + sum_hf <- t(rep(1, causes)) %*% Hf # h_tilde female + sum_hm <- t(rep(1, causes)) %*% Hm # h_tilde male Mf <- Hf %*% solve(diag(c(sum_hf))) %*% diag(1-pf) Mm <- Hm %*% solve(diag(c(sum_hm))) %*% diag(1-pm) # Mm <- diag(1-pm) # Mf <- diag(1-pf) - zeros_l <- matrix(0, nrow = ages, ncol = alpha) # zero matrix for living kin part - zeros_d = matrix(0, nrow = alpha, ncol = alpha) # zero matrix for death kin part + + # BEN: In order to classify kin death by both cause and age at death, + # we need a mortality matrices M_hat of dimension + # ((causes*ages) * ages). See eq.12 in Caswell et al. (2024). + # Store columns of M as a list of vectors + Mf.cols <- lapply(1:ncol(Mf), function(j) return(Mf[,j])) + Mm.cols <- lapply(1:ncol(Mm), function(j) return(Mm[,j])) + # Create M_hat using the vectors as elements of the block diagonal Ut <- as.matrix(rbind( cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros_l, zeros_l)), - cbind(Matrix::bdiag(Mf, Mm), Matrix::bdiag(zeros_d, zeros_d)))) + cbind(Matrix::bdiag(Matrix::bdiag(Mf.cols), Matrix::bdiag(Mm.cols)), Matrix::bdiag(zeros_d, zeros_d)))) Ff[1,] = ff Fm[1,] = fm - # BEN: CONTINUE WORK FROM HERE - Ft <- Ft_star <- matrix(0, agess*2, agess*2) + # BEN: Accounting for causes of death leads to have different dimensions + # in Ft and Ft_star. + Ft <- Ft_star <- matrix(0, (agess + agess*causes), (agess + agess*causes)) Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Ff, birth_female * Fm), cbind((1-birth_female) * Ff, (1-birth_female) * Fm)) @@ -116,7 +141,8 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, } # initial count matrix (kin ages in rows and focal age in column) - phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, agess*2, ages) + # BEN: Changed dimensions of lower part (dead kin) to account for death from causes. + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, (agess + agess*causes), ages) # locate focal at age 0 depending sex sex_index <- ifelse(sex_focal == "f", 1, ages+1) @@ -125,7 +151,10 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, # G matrix moves focal by age G <- matrix(0, nrow=ages, ncol=ages) G[row(G)-1 == col(G)] <- 1 - Gt <- matrix(0, agess*2, agess*2) + + # BEN: Changed dimensions + Gt <- matrix(0, (agess + agess*causes), (agess + agess*causes)) + Gt[1:(agess), 1:(agess)] <- as.matrix(Matrix::bdiag(G, G)) # focal´s trip @@ -182,16 +211,24 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, # as data.frame kin <- purrr::map2(kin_list, names(kin_list), function(x,y){ + + # BEN: Death take place in the same year and age! + # I adapted the code + # below such that it works with the new dimensions. + # reassign deaths to Focal experienced age - x[(agess+1):(agess*2),1:(ages-1)] <- x[(agess+1):(agess*2),2:ages] - x[(agess+1):(agess*2),ages] <- 0 + x[(agess+1):(agess + agess*causes),1:(ages-1)] <- x[(agess+1):(agess + agess*causes),2:ages] + x[(agess+1):(agess + agess*causes),ages] <- 0 out <- as.data.frame(x) colnames(out) <- age out %>% + # BEN: the matrices have different dimensions when + # we accounf for causes of death so what follows + # has been substantially changed. dplyr::mutate(kin = y, - age_kin = rep(age,4), - sex_kin = rep(c(rep("f",ages), rep("m",ages)),2), - alive = c(rep("living",2*ages), rep("dead",2*ages))) %>% + age_kin = c(rep(age,2), rep(rep(age,each=causes),2)), + sex_kin = c(rep(c("f", "m"),each=ages), rep(c("f", "m"),each=ages*causes)), + alive = c(rep("living",2*ages), rep(paste0("deadcause",1:causes),2*ages))) %>% tidyr::pivot_longer(c(-age_kin, -kin, -sex_kin, -alive), names_to = "age_focal", values_to = "count") %>% dplyr::mutate(age_focal = as.integer(age_focal)) %>% tidyr::pivot_wider(names_from = alive, values_from = count) @@ -208,3 +245,33 @@ kindeath_cod_time_invariant_2sex <- function(pf = NULL, pm = NULL, return(out) } + +## BEN: ======================================================================== + +# Checks + +# No dead parent at birth: deadcausei=0 when age_focal==0 +# ff # fertility starts at age 13 +# kin |> filter(kin == "m", age_focal ==0, age_kin >= 12) +# +# # pi when age_focal==0 and age_kin when fx>0: +# kin |> filter(kin == "m", age_kin >= 13, age_focal ==0) +# pif[14:101] +# +# # mother dying from cause i at age x when focal is age==1 comes from nber of +# # living mother age x when focal is age==1 multiplied by (1-pf[x])*(1/3) +# kin |> filter(kin == "m", age_kin == 14, age_focal ==1) +# 0.000246 * ((1-pf[15])*(1/3)) # mother +# 0.0000486 * ((1-pm[15])*(1/3)) # father +# +# # Store to compare with kin_time_invariant_2sex.R +# saveRDS( +# kin, +# here( +# "checks", +# "output_time_invariant_2sex.rds" +# ) +# ) + + +## ============================================================================= diff --git a/R/kin_time_variant_2sex_cod.R b/R/kin_time_variant_2sex_cod.R new file mode 100644 index 0000000..0d32652 --- /dev/null +++ b/R/kin_time_variant_2sex_cod.R @@ -0,0 +1,356 @@ +#' Estimate kin counts in a time variant framework (dynamic rates) in a two-sex framework (Caswell, 2022) + +#' @description Two-sex matrix framework for kin count estimates with varying rates. +#' This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. +#' For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. +#' @details See Caswell (2022) for details on formulas. +#' @param pf numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). +#' @param ff numeric. Same as pf but for fertility rates. +#' @param fm numeric. Same as pm but for fertility rates. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. +#' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param nf numeric. Same as pf but for population distribution (counts or `%`). Optional. +#' @param nm numeric. Same as pm but for population distribution (counts or `%`). Optional. +#' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. +#' @param output_period integer. Vector of period years for returning results. Should be within input data years range. +#' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... +#' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param list_output logical. Results as a list with years elements (as a result of `output_cohort` and `output_period` combination), with a second list of `output_kin` elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default `FALSE` +#' @return A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age and sex. +#' @export + + +## BEN: ======================================================================== +# Function building: +library(DemoKin) +library(tidyr) +library(dplyr) +library(here) + +# Input of model +years <- ncol(swe_px) +ages <- nrow(swe_px) +ff <- swe_asfr +fm <- rbind(matrix(0, 5, years), + swe_asfr[-((ages-4):ages),]) * 1.05 +pf <- swe_px +pm <- swe_px ^ 1.5 + +sex_focal = "f" +time_invariant = FALSE +birth_female = .5 +output_cohort = 1900 # like in the vignette +output_period = NULL +output_kin = NULL + + +pif <- pim <- NULL +nf <- nm <- NULL +list_output = FALSE + +# Create a fictitious hazard matrix with three causes of death, where each +# year is a list item (Hazard matrix needs to be (causes * ages) for the +# matrix algebra to work well with existing code). +H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) +Hf <- Hm <- sapply(colnames(pf), function(x) { + return(H) + }, + simplify = FALSE, + USE.NAMES = TRUE + ) +# BEN: Load time invariant for COD +source("./R/kin_time_invariant_2sex_cod.R") + + +## ============================================================================= + + +# BEN: Added hazard matrices as inputs. +# Assume that input of cause-specific mortality will be in terms of +# matrices of cause-specific hazards for the two sexes (causes * ages). +# Alternative: a matrix (causes * ages) containing the ratio mxi/mx. +kin_time_variant_2sex_cod <- function(pf = NULL, pm = NULL, + ff = NULL, fm = NULL, + Hf = NULL, Hm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + nf = NULL, nm = NULL, + output_cohort = NULL, output_period = NULL, output_kin = NULL, + list_output = FALSE){ + + # global vars + .<-living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL + + # same input length + + # BEN: Now we should also check the dimensions of the cause-specific hazard + # matrices. + if(!all(dim(pf) == dim(pm), dim(pf) == dim(ff), dim(pf) == dim(fm), + nrow(Hf)==nrow(Hm), ncol(Hf)==ncol(Hm), ncol(Hf)==nrow(pf), + length(Hf)==length(Hm), length(Hm)==ncol(pf))) stop("Dimension of P's, F's, and H's should match") + + # data should be from same interval years + years_data <- as.integer(colnames(pf)) + if(stats::var(diff(years_data))!=0) stop("Data should be for same interval length years. Fill the gaps and run again") + + # utils + age <- 0:(nrow(pf)-1) + n_years_data <- length(years_data) + ages <- length(age) + agess <- ages*2 + om <- max(age) + + # BEN: The zero matrix was deleted from line above and has + # to be made specific according to living/dead kin + # part of the block matrix Ut. + causes <- nrow(Hf[[1]]) # number of causes of death + zeros_l <- matrix(0, nrow = ages, ncol = (causes*ages)) # zero matrix for living kin part + zeros_d = matrix(0, nrow = (causes*ages), ncol = (causes*ages)) # zero matrix for death kin part + + # age distribution at child born + Pif <- pif; no_Pif <- FALSE + Pim <- pim; no_Pim <- FALSE + if(is.null(pif)){ + if(!is.null(nf)){ + Pif <- t(t(nf * ff)/colSums(nf * ff)) + }else{ + Pif <- matrix(0, nrow=ages, ncol=n_years_data) + no_Pif <- TRUE + } + } + if(is.null(pim)){ + if(!is.null(nm)){ + Pim <- t(t(nm * fm)/colSums(nm * fm)) + }else{ + Pim <- matrix(0, nrow=ages, ncol=n_years_data) + no_Pim <- TRUE + } + } + + # get lists of matrix + Ul = Fl = Fl_star = list() + kin_all <- list() + pb <- progress::progress_bar$new( + format = "Running over input years [:bar] :percent", + total = n_years_data + 1, clear = FALSE, width = 60) + + # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + # BEN: First load function at the end of script + # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + + for(t in 1:n_years_data){ + # t = 1 + Uf = Um = Fft = Fmt = Mm = Mf = Gt = matrix(0, nrow=ages, ncol=ages) + Uf[row(Uf)-1 == col(Uf)] <- pf[-ages,t] + Uf[ages, ages] = pf[ages,t] + Um[row(Um)-1 == col(Um)] <- pm[-ages,t] + Um[ages, ages] = pm[ages,t] + + # BEN: Building of M, matrix of cause-specific prob. of dying. + # Hence, M = H D(h_tilde)^{-1} D(q) + # where h_tilde are the summed hazards for each age, and + # q = 1 - p + sum_hf <- t(rep(1, causes)) %*% Hf[[t]] # h_tilde female + sum_hm <- t(rep(1, causes)) %*% Hm[[t]] # h_tilde male + Mf <- Hf[[t]] %*% solve(diag(c(sum_hf))) %*% diag(1-pf[,t]) + Mm <- Hm[[t]] %*% solve(diag(c(sum_hm))) %*% diag(1-pm[,t]) + # Mm <- diag(1-pm[,t]) + # Mf <- diag(1-pf[,t]) + + # BEN: In order to classify kin death by both cause and age at death, + # we need a mortality matrices M_hat of dimension + # ((causes*ages) * ages). See eq.12 in Caswell et al. (2024). + # Store columns of M as a list of vectors + Mf.cols <- lapply(1:ncol(Mf), function(j) return(Mf[,j])) + Mm.cols <- lapply(1:ncol(Mm), function(j) return(Mm[,j])) + # Create M_hat using the vectors as elements of the block diagonal + Ut <- as.matrix(rbind( + cbind(Matrix::bdiag(Uf, Um), Matrix::bdiag(zeros_l, zeros_l)), + cbind(Matrix::bdiag(Matrix::bdiag(Mf.cols), Matrix::bdiag(Mm.cols)), Matrix::bdiag(zeros_d, zeros_d)))) + + Ul[[as.character(years_data[t])]] <- Ut + Fft[1,] = ff[,t] + Fmt[1,] = fm[,t] + + # BEN: Accounting for causes of death leads to have different dimensions + # in Ft and Ft_star. + Ft <- Ft_star <- matrix(0, (agess + agess*causes), (agess + agess*causes)) + + Ft[1:agess,1:agess] <- rbind(cbind(birth_female * Fft, birth_female * Fmt), + cbind((1-birth_female) * Fft, (1-birth_female) * Fmt)) + Ft_star[1:agess,1:ages] <- rbind(birth_female * Fft, (1-birth_female) * Fft) + Fl[[as.character(years_data[t])]] <- Ft + Fl_star[[as.character(years_data[t])]] <- Ft_star + # parents age distribution under stable assumption in case no input + if(no_Pim | no_Pif){ + A = Matrix::bdiag(Uf, Um) + Ft_star[1:agess,1:agess] + A_decomp = eigen(A) + lambda = as.double(A_decomp$values[1]) + w = as.double(A_decomp$vectors[,1])/sum(as.double(A_decomp$vectors[,1])) + wf = w[1:ages] + wm = w[(ages+1):(2*ages)] + Pif[,t] = wf * ff[,t] / sum(wf * ff[,t]) + Pim[,t] = wm * fm[,t] / sum(wm * fm[,t]) + } + + # project + Ut <- as.matrix(Ul[[t]]) + Ft <- as.matrix(Fl[[t]]) + Ft_star <- as.matrix(Fl_star[[t]]) + pitf <- Pif[,t] + pitm <- Pim[,t] + pit <- c(pitf, pitm) + if (t==1){ + p1f <- pf[,1] + p1m <- pm[,1] + f1f <- ff[,1] + f1m <- fm[,1] + pif1 <- Pif[,1] + pim1 <- Pim[,1] + + # BEN: Add Hf and Hm + H1f <- Hf[[1]] + H1m <- Hm[[1]] + + # BEN: cod version !!! + kin_all[[1]] <- kin_time_invariant_2sex_cod(pf = p1f, pm = p1m, + ff = f1f, fm = f1m, + pif = pif1, pim = pim1, + Hf = H1f, Hm = H1m, + birth_female = birth_female, list_output = TRUE) + } + kin_all[[t+1]] <- timevarying_kin_2sex_cod(Ut=Ut, Ft=Ft, Ft_star=Ft_star, pit=pit, sex_focal, ages, pkin=kin_all[[t]]) + pb$tick() + } + + # filter years and kin that were selected + names(kin_all) <- as.character(years_data) + + # combinations to return + out_selected <- output_period_cohort_combination(output_cohort, output_period, age = age, years_data = years_data) + + possible_kin <- c("d","gd","ggd","m","gm","ggm","os","ys","nos","nys","oa","ya","coa","cya") + if(is.null(output_kin)){ + selected_kin_position <- 1:length(possible_kin) + }else{ + selected_kin_position <- which(possible_kin %in% output_kin) + } + + # first filter + kin_list <- kin_all %>% + purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% + purrr::map(~ .[selected_kin_position]) + # long format + message("Preparing output...") + kin <- lapply(names(kin_list), FUN = function(Y){ + X <- kin_list[[Y]] + X <- purrr::map2(X, names(X), function(x,y){ + # reassign deaths to Focal experienced age + x[(agess+1):(agess + agess*causes),1:(ages-1)] <- x[(agess+1):(agess + agess*causes),2:ages] + x[(agess+1):(agess + agess*causes),ages] <- 0 + x <- data.table::as.data.table(x) + x$year <- Y + x$kin <- y + x$sex_kin <- c(rep(c("f", "m"),each=ages), rep(c("f", "m"),each=ages*causes)) + x$age_kin <- c(rep(age,2), rep(rep(age,each=causes),2)) + x$alive <- c(rep("living",2*ages), rep(paste0("deadcause",1:causes),2*ages)) + return(x) + }) %>% + data.table::rbindlist() %>% + stats::setNames(c(as.character(age), "year","kin","sex_kin","age_kin","alive")) %>% + data.table::melt(id.vars = c("year","kin","sex_kin","age_kin","alive"), variable.name = "age_focal", value.name = "count") + X$age_focal = as.integer(as.character(X$age_focal)) + X$year = as.integer(X$year) + X$cohort = X$year - X$age_focal + X <- X[X$age_focal %in% out_selected$age[out_selected$year==as.integer(Y)],] + X <- data.table::dcast(X, year + kin + sex_kin + age_kin + age_focal + cohort ~ alive, value.var = "count", fun.aggregate = sum) + }) %>% data.table::rbindlist() + + # results as list? + if(list_output) { + out <- kin_list + }else{ + out <- kin + } + return(out) +} + +#' one time projection kin + +#' @description one time projection kin. internal function. +#' +#' @param Ut numeric. A matrix of survival probabilities (or ratios). +#' @param Ft numeric. A matrix of age-specific fertility rates. +#' @param Ft_star numeric. Ft but for female fertility. +#' @param pit numeric. A matrix with distribution of childbearing. +#' @param sex_focal character. "f" for female or "m" for male. +#' @param ages numeric. +#' @param pkin numeric. A list with kin count distribution in previous year. +#' @return A list of 14 types of kin matrices (kin age by Focal age, blocked for two sex) projected one time interval. +#' @export +timevarying_kin_2sex_cod<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ + + agess <- ages*2 + om <- ages-1 + pif <- pit[1:ages] + pim <- pit[(ages+1):agess] + + # BEN: Changed dimensions of lower part (dead kin) to account for death from causes. + phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, (agess + agess*causes), ages) + + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + # G matrix moves focal by age + G <- matrix(0, nrow=ages, ncol=ages) + G[row(G)-1 == col(G)] <- 1 + + # BEN: Changed dimensions + Gt <- matrix(0, (agess + agess*causes), (agess + agess*causes)) + + Gt[1:(agess), 1:(agess)] <- as.matrix(Matrix::bdiag(G, G)) + + # locate focal at age 0 depending sex + sex_index <- ifelse(sex_focal == "f", 1, ages+1) + phi[sex_index, 1] <- 1 + + # BEN: NOT SURE ABOUT WHAT IS HAPPENING BELOW + # Rows are multiplied by the sum of the pi? + + # initial distribution + m[1:agess,1] = pit + gm[1:agess,1] = pkin[["m"]][1:agess,] %*% (pif + pim) + ggm[1:agess,1] = pkin[["gm"]][1:agess,] %*% (pif + pim) + os[1:agess,1] = pkin[["d"]][1:agess,] %*% pif + nos[1:agess,1] = pkin[["gd"]][1:ages,] %*% pif + oa[1:agess,1] = pkin[["os"]][1:agess,] %*% (pif + pim) + ya[1:agess,1] = pkin[["ys"]][1:agess,] %*% (pif + pim) + coa[1:agess,1] = pkin[["nos"]][1:agess,] %*% (pif + pim) + cya[1:agess,1] = pkin[["nys"]][1:agess,] %*% (pif + pim) + + for (ix in 1:om){ + phi[,ix+1] = Gt %*% phi[, ix] + d[,ix+1] = Ut %*% pkin[["d"]][,ix] + Ft %*% phi[,ix] + gd[,ix+1] = Ut %*% pkin[["gd"]][,ix] + Ft %*% pkin[["d"]][,ix] + ggd[,ix+1] = Ut %*% pkin[["ggd"]][,ix] + Ft %*% pkin[["gd"]][,ix] + m[,ix+1] = Ut %*% pkin[["m"]][,ix] + gm[,ix+1] = Ut %*% pkin[["gm"]][,ix] + ggm[,ix+1] = Ut %*% pkin[["ggm"]][,ix] + os[,ix+1] = Ut %*% pkin[["os"]][,ix] + ys[,ix+1] = Ut %*% pkin[["ys"]][,ix] + Ft_star %*% pkin[["m"]][,ix] + nos[,ix+1] = Ut %*% pkin[["nos"]][,ix] + Ft %*% pkin[["os"]][,ix] + nys[,ix+1] = Ut %*% pkin[["nys"]][,ix] + Ft %*% pkin[["ys"]][,ix] + oa[,ix+1] = Ut %*% pkin[["oa"]][,ix] + ya[,ix+1] = Ut %*% pkin[["ya"]][,ix] + Ft_star %*% pkin[["gm"]][,ix] + coa[,ix+1] = Ut %*% pkin[["coa"]][,ix] + Ft %*% pkin[["oa"]][,ix] + cya[,ix+1] = Ut %*% pkin[["cya"]][,ix] + Ft %*% pkin[["ya"]][,ix] + } + + kin_list <- list(d=d,gd=gd,ggd=ggd,m=m,gm=gm,ggm=ggm,os=os,ys=ys, + nos=nos,nys=nys,oa=oa,ya=ya,coa=coa,cya=cya) + + return(kin_list) +} From 725e1736328c540ccef52ba16e9c545d07ae443b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin-Samuel=20Schl=C3=BCter?= Date: Tue, 20 Feb 2024 13:04:02 -0500 Subject: [PATCH 32/37] script to compare functions with/without cod --- R/kin_time_variant_2sex_cod.R | 79 ++++++++++++++++---------------- R/test.R | 85 +++++++++++++++++++++++++++++++++++ 2 files changed, 126 insertions(+), 38 deletions(-) create mode 100644 R/test.R diff --git a/R/kin_time_variant_2sex_cod.R b/R/kin_time_variant_2sex_cod.R index 0d32652..be3416f 100644 --- a/R/kin_time_variant_2sex_cod.R +++ b/R/kin_time_variant_2sex_cod.R @@ -24,44 +24,44 @@ ## BEN: ======================================================================== # Function building: -library(DemoKin) -library(tidyr) -library(dplyr) -library(here) - -# Input of model -years <- ncol(swe_px) -ages <- nrow(swe_px) -ff <- swe_asfr -fm <- rbind(matrix(0, 5, years), - swe_asfr[-((ages-4):ages),]) * 1.05 -pf <- swe_px -pm <- swe_px ^ 1.5 - -sex_focal = "f" -time_invariant = FALSE -birth_female = .5 -output_cohort = 1900 # like in the vignette -output_period = NULL -output_kin = NULL - - -pif <- pim <- NULL -nf <- nm <- NULL -list_output = FALSE - -# Create a fictitious hazard matrix with three causes of death, where each -# year is a list item (Hazard matrix needs to be (causes * ages) for the -# matrix algebra to work well with existing code). -H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) -Hf <- Hm <- sapply(colnames(pf), function(x) { - return(H) - }, - simplify = FALSE, - USE.NAMES = TRUE - ) -# BEN: Load time invariant for COD -source("./R/kin_time_invariant_2sex_cod.R") +# library(DemoKin) +# library(tidyr) +# library(dplyr) +# library(here) +# +# # Input of model +# years <- ncol(swe_px) +# ages <- nrow(swe_px) +# ff <- swe_asfr +# fm <- rbind(matrix(0, 5, years), +# swe_asfr[-((ages-4):ages),]) * 1.05 +# pf <- swe_px +# pm <- swe_px ^ 1.5 +# +# sex_focal = "f" +# time_invariant = FALSE +# birth_female = .5 +# output_cohort = 1900 # like in the vignette +# output_period = NULL +# output_kin = NULL +# +# +# pif <- pim <- NULL +# nf <- nm <- NULL +# list_output = FALSE +# +# # Create a fictitious hazard matrix with three causes of death, where each +# # year is a list item (Hazard matrix needs to be (causes * ages) for the +# # matrix algebra to work well with existing code). +# H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) +# Hf <- Hm <- sapply(colnames(pf), function(x) { +# return(H) +# }, +# simplify = FALSE, +# USE.NAMES = TRUE +# ) +# # BEN: Load time invariant for COD +# source("./R/kin_time_invariant_2sex_cod.R") ## ============================================================================= @@ -298,6 +298,9 @@ timevarying_kin_2sex_cod<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin) pif <- pit[1:ages] pim <- pit[(ages+1):agess] + # BEN : Add the number of CoD + causes <- nrow(Hf[[1]]) + # BEN: Changed dimensions of lower part (dead kin) to account for death from causes. phi = d = gd = ggd = m = gm = ggm = os = ys = nos = nys = oa = ya = coa = cya = matrix(0, (agess + agess*causes), ages) diff --git a/R/test.R b/R/test.R new file mode 100644 index 0000000..b593dea --- /dev/null +++ b/R/test.R @@ -0,0 +1,85 @@ + +rm(list = ls()) + +## Compare output + +library(DemoKin) + +source("./R/kin_time_invariant_2sex_cod.R") +source("./R/kin_time_variant_2sex_cod.R") + +source("./R/kin_time_invariant_2sex.R") +source("./R/kin_time_variant_2sex.R") + +## Example from Vignette 2 sex but few years for speed + +years_all <- ncol(swe_px) +years_test <- 1:20 +ages <- nrow(swe_px) +pf <- swe_px[,years_test] +pm <- swe_px[,years_test] ^ 1.5 # artificial perturbation for this example +ff <- swe_asfr[, years_test] +fm <- rbind(matrix(0, 5, max(years_test)), + swe_asfr[-((ages-4):ages), years_test]) * 1.05 # artificial perturbation for this example + +# Create a fictitious hazard matrix with three causes of death, where each +# year is a list item (Hazard matrix needs to be (causes * ages) for the +# matrix algebra to work well with existing code). +H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) +Hf <- Hm <- sapply(colnames(pf), function(x) { + return(H) + }, + simplify = FALSE, + USE.NAMES = TRUE + ) + +## COMPARISON + +start.time <- Sys.time() +no_cod <- kin_time_variant_2sex(pf = pf, pm = pm, + ff = ff, fm = fm, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + nf = NULL, nm = NULL, + output_cohort = NULL, output_period = NULL, output_kin = NULL, + list_output = FALSE) +end.time <- Sys.time() +time.taken.no.cod <- end.time - start.time + + +start.time <- Sys.time() +cod <- kin_time_variant_2sex_cod(pf = pf, pm = pm, + ff = ff, fm = fm, + Hf = Hf, Hm = Hm, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, pim = NULL, + nf = NULL, nm = NULL, + output_cohort = NULL, output_period = NULL, output_kin = NULL, + list_output = FALSE) +end.time <- Sys.time() +time.taken.cod <- end.time - start.time + +no_cod +cod |> + mutate( + dead = deadcause1 + deadcause2 + deadcause3 + ) + + +no_cod |> + filter( + kin == "gm", + age_focal %in% 30:35, + age_kin > 60 + ) +cod |> + mutate( + dead = deadcause1 + deadcause2 + deadcause3 + ) |> + filter( + kin == "gm", + age_focal %in% 30:35, + age_kin > 60 + ) From 29ecf60c1a9a47dc8be25f99f166c183517868db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin-Samuel=20Schl=C3=BCter?= Date: Wed, 21 Feb 2024 14:14:05 -0500 Subject: [PATCH 33/37] add description in top of scripts --- R/kin_time_invariant_2sex_cod.R | 7 +++++-- R/kin_time_variant_2sex_cod.R | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/R/kin_time_invariant_2sex_cod.R b/R/kin_time_invariant_2sex_cod.R index 0434360..e25ad27 100644 --- a/R/kin_time_invariant_2sex_cod.R +++ b/R/kin_time_invariant_2sex_cod.R @@ -1,13 +1,16 @@ #' Estimate kin counts in a time invariant framework for two-sex model. -#' @description Two-sex matrix framework for kin count estimates.This produces kin counts grouped by kin, age and sex of +#' @description Two-sex matrix framework for kin count and death estimates.This produces kin counts grouped by kin, age and sex of #' each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents -#' are grouped in one male count of cousins. +#' are grouped in one male count of cousins. This also produces kin deaths grouped by kin, age, sex of +#' each relatives at each Focal´s age, and cause of death. #' @details See Caswell (2022) for details on formulas. #' @param pf numeric. A vector of survival probabilities for females with same length as ages. +#' @param Hf numeric. A matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age. #' @param ff numeric. A vector of age-specific fertility rates for females with same length as ages. #' @param pm numeric. A vector of survival probabilities for males with same length as ages. #' @param fm numeric. A vector of age-specific fertility rates for males with same length as ages. +#' @param Hm numeric. A matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age. #' @param sex_focal character. "f" for female or "m" for male. #' @param birth_female numeric. Female portion at birth. #' @param pif numeric. For using some specific non-stable age distribution of childbearing for mothers (same length as ages). Default `NULL`. diff --git a/R/kin_time_variant_2sex_cod.R b/R/kin_time_variant_2sex_cod.R index be3416f..52caad6 100644 --- a/R/kin_time_variant_2sex_cod.R +++ b/R/kin_time_variant_2sex_cod.R @@ -2,12 +2,15 @@ #' @description Two-sex matrix framework for kin count estimates with varying rates. #' This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. -#' For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. +#' For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. This also produces kin deaths grouped by kin, age, sex of +#' each relatives at each Focal´s age, and cause of death. #' @details See Caswell (2022) for details on formulas. #' @param pf numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). #' @param pm numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year). #' @param ff numeric. Same as pf but for fertility rates. #' @param fm numeric. Same as pm but for fertility rates. +#' @param Hf numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age. +#' @param Hm numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age. #' @param sex_focal character. "f" for female or "m" for male. #' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. #' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. From fe64c82177bb0198337453047cf0de8707759cf1 Mon Sep 17 00:00:00 2001 From: Ivan Williams Date: Fri, 8 Mar 2024 11:30:02 -0300 Subject: [PATCH 34/37] issues pending --- CRAN-SUBMISSION | 4 +- R/kin.R | 72 ++++++++++++++++++------------------ R/kin2sex.R | 52 ++++++++++++++++---------- R/kin_time_invariant_2sex.R | 2 + R/kin_time_variant_2sex.R | 9 +++-- R/plot_diagramm.R | 2 +- data/demokin_codes.rda | Bin 607 -> 611 bytes 7 files changed, 78 insertions(+), 63 deletions(-) diff --git a/CRAN-SUBMISSION b/CRAN-SUBMISSION index 90dd290..04b6fae 100644 --- a/CRAN-SUBMISSION +++ b/CRAN-SUBMISSION @@ -1,3 +1,3 @@ Version: 1.0.3 -Date: 2023-05-26 19:38:45 UTC -SHA: b3f5387a20bd765d8567e6cfa6a8918413b1e138 +Date: 2023-06-04 13:27:38 UTC +SHA: f54cd023b2e6bb2de1e74d1d0c89c13828149c44 diff --git a/R/kin.R b/R/kin.R index 0d5a060..ac782c2 100644 --- a/R/kin.R +++ b/R/kin.R @@ -12,10 +12,10 @@ #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... +#' @param output_age_focal integer. Vector of ages to select (and make faster the run). #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, +#' @param summary_kin logical. Whether or not include `kin_summary` table (see output details). Default `TRUE`. #' this needs to be set as 1. -#' @param stable logic. Deprecated. Use `time_invariant`. -#' @param U logic. Deprecated. Use `p`. #' @return A list with: #' \itemize{ #' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` is daughter, @@ -44,25 +44,14 @@ kin <- function(p = NULL, f = NULL, time_invariant = TRUE, pi = NULL, n = NULL, - output_cohort = NULL, output_period = NULL, output_kin=NULL, + output_cohort = NULL, output_period = NULL, output_kin=NULL, output_age_focal = NULL, birth_female = 1/2.04, - stable = lifecycle::deprecated(), - U = lifecycle::deprecated()) + summary_kin = TRUE) { # global vars living<-dead<-age_kin<-age_focal<-cohort<-year<-total<-mean_age<-count_living<-sd_age<-count_dead<-mean_age_lost<-indicator<-value<-NULL - # changed arguments - if (lifecycle::is_present(stable)) { - lifecycle::deprecate_warn("0.0.0.9000", "kin(stable)", details = "Used time_invariant") - time_invariant <- stable - } - if (lifecycle::is_present(U)) { - lifecycle::deprecate_warn("0.0.0.9000", "kin(stable)", details = "Used time_invariant") - p <- U - } - # kin to return all_possible_kin <- c("coa", "cya", "d", "gd", "ggd", "ggm", "gm", "m", "nos", "nys", "oa", "ya", "os", "ys") output_kin_asked <- output_kin @@ -109,7 +98,10 @@ kin <- function(p = NULL, f = NULL, .by = c(kin, age_kin, age_focal, cohort, year)) } - # select period/cohort + # select period/cohort/age + if(!is.null(output_age_focal) & all(output_age_focal %in% 1:120)){ + kin_full <- kin_full %>% dplyr::filter(age_focal %in% output_age_focal) + } if(!is.null(output_cohort)){ agrupar <- "cohort" } else if(!is.null(output_period)){ @@ -120,29 +112,35 @@ kin <- function(p = NULL, f = NULL, agrupar_no_age_focal <- c("kin", agrupar) agrupar <- c("age_focal", "kin", agrupar) - # get summary indicators based on group variables - kin_summary <- dplyr::bind_rows( - kin_full %>% - dplyr::rename(total=living) %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% - dplyr::summarise(count_living = sum(total), - mean_age = sum(total*age_kin)/sum(total), - sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% - tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), - kin_full %>% - dplyr::rename(total=dead) %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% - dplyr::summarise(count_dead = sum(total)) %>% - dplyr::ungroup() %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar_no_age_focal))) %>% - dplyr::mutate(count_cum_dead = cumsum(count_dead), - mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% - dplyr::ungroup() %>% - tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% + # get summary indicators based on group variables. If it is asked + if(summary_kin){ + kin_summary <- dplyr::bind_rows( + kin_full %>% + dplyr::rename(total=living) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_living = sum(total), + mean_age = sum(total*age_kin)/sum(total), + sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% + tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), + kin_full %>% + dplyr::rename(total=dead) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_dead = sum(total)) %>% + dplyr::ungroup() %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar_no_age_focal))) %>% + dplyr::mutate(count_cum_dead = cumsum(count_dead), + mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% + dplyr::ungroup() %>% + tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) - # return - kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) + # return + kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) + }else{ + # return + kin_out <- kin_full + } + return(kin_out) } diff --git a/R/kin2sex.R b/R/kin2sex.R index a50a438..9ce365a 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -18,7 +18,9 @@ #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. #' @param output_period integer. Vector of period years for returning results. Should be within input data years range. #' @param output_kin character. kin types to return: "m" for mother, "d" for daughter,... +#' @param output_age_focal integer. Vector of ages to select (and make faster the run). #' @param birth_female numeric. Female portion at birth. This multiplies `f` argument. If `f` is already for female offspring, this needs to be set as 1. +#' @param summary_kin logical. Whether or not include `kin_summary` table (see output details). Default `TRUE`. #' @return A list with: #' \itemize{ #' \item{kin_full}{ a data frame with year, cohort, Focal´s age, related ages and type of kin (for example `d` could be daughter or son depending `sex_kin`, @@ -51,7 +53,8 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, birth_female = 1/2.04, pif = NULL, pim = NULL, nf = NULL, nm = NULL, - output_cohort = NULL, output_period = NULL, output_kin=NULL) + output_cohort = NULL, output_period = NULL, output_kin=NULL,output_age_focal = NULL, + summary_kin = TRUE) { # global vars @@ -116,7 +119,10 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, } # summary - # select period/cohort + # select period/cohort/ge + if(!is.null(output_age_focal) & all(output_age_focal %in% 1:120)){ + kin_full <- kin_full %>% dplyr::filter(age_focal %in% output_age_focal) + } if(!is.null(output_cohort)){ agrupar <- "cohort" } else if(!is.null(output_period)){ @@ -127,28 +133,34 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, agrupar_no_age_focal <- c("kin", "sex_kin", agrupar) agrupar <- c("age_focal", "kin", "sex_kin", agrupar) - kin_summary <- dplyr::bind_rows( - as.data.frame(kin_full) %>% - dplyr::rename(total=living) %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% - dplyr::summarise(count_living = sum(total), - mean_age = sum(total*age_kin)/sum(total), - sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% - tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), - as.data.frame(kin_full) %>% - dplyr::rename(total=dead) %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% - dplyr::summarise(count_dead = sum(total)) %>% - dplyr::ungroup() %>% - dplyr::group_by(dplyr::across(dplyr::all_of(agrupar_no_age_focal))) %>% - dplyr::mutate(count_cum_dead = cumsum(count_dead), - mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% - dplyr::ungroup() %>% - tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% + if(summary_kin){ + kin_summary <- dplyr::bind_rows( + as.data.frame(kin_full) %>% + dplyr::rename(total=living) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_living = sum(total), + mean_age = sum(total*age_kin)/sum(total), + sd_age = (sum(total*age_kin^2)/sum(total)-mean_age^2)^.5) %>% + tidyr::pivot_longer(count_living:sd_age, names_to = "indicator", values_to = "value"), + as.data.frame(kin_full) %>% + dplyr::rename(total=dead) %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar))) %>% + dplyr::summarise(count_dead = sum(total)) %>% + dplyr::ungroup() %>% + dplyr::group_by(dplyr::across(dplyr::all_of(agrupar_no_age_focal))) %>% + dplyr::mutate(count_cum_dead = cumsum(count_dead), + mean_age_lost = cumsum(count_dead * age_focal)/cumsum(count_dead)) %>% + dplyr::ungroup() %>% + tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) # return kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) + }else{ + # return + kin_out <- kin_full + } + return(kin_out) } diff --git a/R/kin_time_invariant_2sex.R b/R/kin_time_invariant_2sex.R index 07628e1..e9d7822 100644 --- a/R/kin_time_invariant_2sex.R +++ b/R/kin_time_invariant_2sex.R @@ -105,6 +105,8 @@ kin_time_invariant_2sex <- function(pf = NULL, pm = NULL, ggm[,i+1] = Ut %*% ggm[,i] } + # atribuible to focal sex + pios = if(sex_focal == "f") pif else pim os[1:(agess),1] = d[1:(agess),] %*% pif nos[1:(agess),1] = gd[1:(agess),] %*% pif for(i in 1:(ages-1)){ diff --git a/R/kin_time_variant_2sex.R b/R/kin_time_variant_2sex.R index 83b3956..e67db6f 100644 --- a/R/kin_time_variant_2sex.R +++ b/R/kin_time_variant_2sex.R @@ -123,6 +123,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, pim1 <- Pim[,1] kin_all[[1]] <- kin_time_invariant_2sex(pf = p1f, pm = p1m, ff = f1f, fm = f1m, + sex_focal = sex_focal, pif = pif1, pim = pim1, birth_female = birth_female, list_output = TRUE) } @@ -148,7 +149,7 @@ kin_time_variant_2sex <- function(pf = NULL, pm = NULL, purrr::keep(names(.) %in% as.character(unique(out_selected$year))) %>% purrr::map(~ .[selected_kin_position]) # long format - message("Preparing output...") + message(" Preparing output...") kin <- lapply(names(kin_list), FUN = function(Y){ X <- kin_list[[Y]] X <- purrr::map2(X, names(X), function(x,y){ @@ -219,12 +220,14 @@ timevarying_kin_2sex<- function(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin){ m[1:agess,1] = pit gm[1:agess,1] = pkin[["m"]][1:agess,] %*% (pif + pim) ggm[1:agess,1] = pkin[["gm"]][1:agess,] %*% (pif + pim) - os[1:agess,1] = pkin[["d"]][1:agess,] %*% pif - nos[1:agess,1] = pkin[["gd"]][1:ages,] %*% pif oa[1:agess,1] = pkin[["os"]][1:agess,] %*% (pif + pim) ya[1:agess,1] = pkin[["ys"]][1:agess,] %*% (pif + pim) coa[1:agess,1] = pkin[["nos"]][1:agess,] %*% (pif + pim) cya[1:agess,1] = pkin[["nys"]][1:agess,] %*% (pif + pim) + # atribuible to focal sex + pios = if(sex_focal == "f") pif else pim + os[1:agess,1] = pkin[["d"]][1:agess,] %*% pios + nos[1:agess,1] = pkin[["gd"]][1:ages,] %*% pios for (ix in 1:om){ phi[,ix+1] = Gt %*% phi[, ix] diff --git a/R/plot_diagramm.R b/R/plot_diagramm.R index f1750f1..6bffa8c 100644 --- a/R/plot_diagramm.R +++ b/R/plot_diagramm.R @@ -10,7 +10,7 @@ plot_diagram <- function (kin_total, rounding = 3) { rels <- c("ggd", "gd", "d", "Focal", "m", "gm", "ggm", "oa", "coa", "os", "nos", "ya", "cya", "ys", "nys") # check all types are in - if(!any(unique(kin_total$kin) %in% rels)) stop("You need all specific types. If some are missed or grouped, for example old and younger sisters in 's', this will fail.") + if(!any(unique(kin_total$kin) %in% rels) | any(c("s", "c", "a", "n") %in% unique(kin_total$kin))) stop("You need all specific types. If some are missed or grouped, for example old and younger sisters in 's', this will fail.") vertices <- data.frame( nodes = rels , x = c(1, 1, 1, 1, 1, 1, 1, 0, -1, 0, -1, 2, 3, 2, 3) diff --git a/data/demokin_codes.rda b/data/demokin_codes.rda index 3859ab313ac97b245ae997bc2c4d20df6deaf116..8ab66208184eae90ec3e617e2c20e26b8717be18 100644 GIT binary patch literal 611 zcmV-p0-XIHiwFP!0000027OgsZ`v>vP56e56}6hSmTjd!fFi9geeH_M!!|mNA(f}f zBqoWP*ep)Qc-t@DPuOO_H}N%LND23zdu*TUBRgM*4_B>+mStIGt5UM9a#e;_b^7hD ze{D%bCbm_vn)1Kx(uh9=?9t&a6>`AIhAE$pe2x{V>~NBWYY1%z0#^kk52CWChf!9C z$cCWIxX8jagf@c_*}|oK-3-cxmhzFp&~7IX{E)BaU->iVvFCdo`4D(!kMpSP*XPR9XtC~8OqLYus+6QCnZsqH8#dv&vE zSIw39g!Lk{;I0fa?Gvgu+IF??3nU%Q3T4zMD#f0i7I>C2C(HzQ3r#~5!?ntUXK`z1 zn8=Zi?v;k?HZ91$O&F`)5p7etW4iR|3N$NwAw3tA9c1n{hA?1Lhg$Zigw(JIu+C9%41dI6vQ>p25DaSkDEbA$N^tbRss{ zP|}$lP&k1cf6}UqL=>E_!afb2;8tnxbKg|77 zode1wMO~1=EMI=$OA#^Ao2NYK@z|$nk1SaRWu2k?nlD*kAQ}px+~$xhgD|5h1dc{2 zVSe8?!p}!3C0ReHOde~=glA!qc{(b`>Yul+@=nJQ^(ZPxL_*uVs{^1S45{xR%6oCW zDOc^4g@pAIbl@%xJCyut<`b2Nmv)d|aooO|jqL)~<^L?W>K+0U~pSZz)CA^Dfal`^+?z}LH{gkrGxiga| zx|jF`o+rL+TpE=s+y8!K5?Y z!!YkQzSdku5(>(@(5Ioi>pn&-7mkP(jbr#n_(Wzj77ufpkeI6A6BVooy%qGQd8!u^ t0jEN+<&%tD&QnRqfHzaVx&)%_%{BH*zU1ZbTYmm*o`1DPph(FF002*=Cr Date: Mon, 18 Mar 2024 15:51:00 -0300 Subject: [PATCH 35/37] adding cod and vignette --- NAMESPACE | 3 ++ R/kin2sex.R | 68 +++++++++++++++++------- R/kin_time_invariant_2sex_cod.R | 25 --------- R/kin_time_variant_2sex_cod.R | 46 ---------------- R/test.R | 85 ------------------------------ man/kin.Rd | 12 ++--- man/kin2sex.Rd | 14 ++++- man/kin_time_invariant_2sex_cod.Rd | 59 +++++++++++++++++++++ man/kin_time_variant_2sex_cod.Rd | 70 ++++++++++++++++++++++++ man/timevarying_kin_2sex_cod.Rd | 29 ++++++++++ vignettes/Reference_TwoSex.Rmd | 41 +++++++++++++- vignettes/references.bib | 12 +++++ 12 files changed, 280 insertions(+), 184 deletions(-) delete mode 100644 R/test.R create mode 100644 man/kin_time_invariant_2sex_cod.Rd create mode 100644 man/kin_time_variant_2sex_cod.Rd create mode 100644 man/timevarying_kin_2sex_cod.Rd diff --git a/NAMESPACE b/NAMESPACE index 0d95065..9a087d8 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -6,11 +6,14 @@ export(kin2sex) export(kin_multi_stage) export(kin_time_invariant) export(kin_time_invariant_2sex) +export(kin_time_invariant_2sex_cod) export(kin_time_variant) export(kin_time_variant_2sex) +export(kin_time_variant_2sex_cod) export(output_period_cohort_combination) export(plot_diagram) export(rename_kin) export(timevarying_kin) export(timevarying_kin_2sex) +export(timevarying_kin_2sex_cod) importFrom(magrittr,"%>%") diff --git a/R/kin2sex.R b/R/kin2sex.R index 9ce365a..07dfa11 100644 --- a/R/kin2sex.R +++ b/R/kin2sex.R @@ -13,6 +13,8 @@ #' @param sex_focal character. "f" for female or "m" for male. #' @param pif numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default `NULL`. #' @param pim numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default `NULL`. +#' @param Hf numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age. +#' @param Hm numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age. #' @param nf numeric. Only for `time_invariant = FALSE`. Same as `pf` but for population distribution (counts or `%`). Optional. #' @param nm numeric. Only for `time_invariant = FALSE`. Same as `pm` but for population distribution (counts or `%`). Optional. #' @param output_cohort integer. Vector of year cohorts for returning results. Should be within input data years range. @@ -53,6 +55,7 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, birth_female = 1/2.04, pif = NULL, pim = NULL, nf = NULL, nm = NULL, + Hf = NULL, Hm = NULL, output_cohort = NULL, output_period = NULL, output_kin=NULL,output_age_focal = NULL, summary_kin = TRUE) { @@ -76,6 +79,9 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, output_kin <- match.arg(tolower(output_kin), all_possible_kin, several.ok = TRUE) } + # is cause of death specific or not + is_cod <- !is.null(Hf) & !is.null(Hm) + # if time dependent or not if(time_invariant){ if(!is.vector(pf)) { @@ -85,27 +91,50 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, ff <- ff[,as.character(output_period)] fm <- fm[,as.character(output_period)] } - kin_full <- kin_time_invariant_2sex(pf, pm, ff, fm, - sex_focal = sex_focal, - birth_female = birth_female, - pif = pif, pim = pim, - output_kin = output_kin) %>% - dplyr::mutate(cohort = NA, year = NA) + if(is_cod){ + kin_full <- kin_time_invariant_2sex_cod(pf, pm, ff, fm, + sex_focal = sex_focal, + birth_female = birth_female, + pif = pif, pim = pim, + Hf = Hf, Hm = Hm, + output_kin = output_kin) %>% + dplyr::mutate(cohort = NA, year = NA) + }else{ + kin_full <- kin_time_invariant_2sex(pf, pm, ff, fm, + sex_focal = sex_focal, + birth_female = birth_female, + pif = pif, pim = pim, + output_kin = output_kin) %>% + dplyr::mutate(cohort = NA, year = NA) + } + }else{ if(!is.null(output_cohort) & !is.null(output_period)) stop("sorry, you can not select cohort and period. Choose one please") + if(is_cod){ + kin_full <- kin_time_variant_2sex_cod(pf = pf, pm = pm, + ff = ff, fm = fm, + sex_focal = sex_focal, + birth_female = birth_female, + pif = pif, pim = pim, + nf = nf, nm = nm, + Hf = Hf, Hm = Hm, + output_cohort = output_cohort, output_period = output_period, + output_kin = output_kin) + }else{ kin_full <- kin_time_variant_2sex(pf = pf, pm = pm, - ff = ff, fm = fm, - sex_focal = sex_focal, - birth_female = birth_female, - pif = pif, pim = pim, - nf = nf, nm = nm, - output_cohort = output_cohort, output_period = output_period, - output_kin = output_kin) + ff = ff, fm = fm, + sex_focal = sex_focal, + birth_female = birth_female, + pif = pif, pim = pim, + nf = nf, nm = nm, + output_cohort = output_cohort, output_period = output_period, + output_kin = output_kin) + } message(paste0("Assuming stable population before ", min(years_data), ".")) } # reorder - kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, dead) + kin_full <- kin_full %>% dplyr::select(year, cohort, age_focal, sex_kin, kin, age_kin, living, starts_with("dea")) # re-group if grouped type is asked if(!is.null(output_kin_asked) & length(output_kin_asked)!=length(output_kin)){ @@ -114,8 +143,9 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, if("a" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("oa", "ya")] <- "a" if("n" %in% output_kin_asked) kin_full$kin[kin_full$kin %in% c("nos", "nys")] <- "n" kin_full <- kin_full %>% - dplyr::summarise(living = sum(living), dead = sum(dead), - .by = c(kin, age_kin, age_focal, sex_kin, cohort, year)) + dplyr::group_by(kin, age_kin, age_focal, sex_kin, cohort, year) %>% + dplyr::summarise_at(vars(c("living", dplyr::starts_with("dea"))), funs(sum)) %>% + dplyr::ungroup() } # summary @@ -133,7 +163,8 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, agrupar_no_age_focal <- c("kin", "sex_kin", agrupar) agrupar <- c("age_focal", "kin", "sex_kin", agrupar) - if(summary_kin){ + # only return summary if is asked and is not cod + if(summary_kin & !is_cod){ kin_summary <- dplyr::bind_rows( as.data.frame(kin_full) %>% dplyr::rename(total=living) %>% @@ -154,11 +185,8 @@ kin2sex <- function(pf = NULL, pm = NULL, ff = NULL, fm = NULL, tidyr::pivot_longer(count_dead:mean_age_lost, names_to = "indicator", values_to = "value")) %>% dplyr::ungroup() %>% tidyr::pivot_wider(names_from = indicator, values_from = value) - - # return kin_out <- list(kin_full = kin_full, kin_summary = kin_summary) }else{ - # return kin_out <- kin_full } diff --git a/R/kin_time_invariant_2sex_cod.R b/R/kin_time_invariant_2sex_cod.R index e25ad27..e0d17d6 100644 --- a/R/kin_time_invariant_2sex_cod.R +++ b/R/kin_time_invariant_2sex_cod.R @@ -22,31 +22,6 @@ #' (for example `d` is children, `oa` is older aunts/uncles, etc.), sex, alive and death. If `list_output = TRUE` then this is a list. #' @export -## BEN: ======================================================================== -# Function building: -# library(DemoKin) -# library(tidyr) -# library(dplyr) -# library(here) -# -# # Input of model -# ff <- fra_asfr_sex[,"ff"] -# fm <- fra_asfr_sex[,"fm"] -# pf <- fra_surv_sex[,"pf"] -# pm <- fra_surv_sex[,"pm"] -# birth_female = 1/2.04 -# pif <- pim <- NULL -# sex_focal = "f" -# output_kin = NULL -# list_output = FALSE -# -# # Create a fictitious hazard matrix with three causes of death. -# # Assume that each cause consists of 1/3 of all death in all age groups. -# Hf <- Hm <- matrix(1, nrow = 3, ncol = length(ff)) - -## ============================================================================= - - # BEN: Added hazard matrices as inputs. # Assume that input of cause-specific mortality will be in terms of # matrices of cause-specific hazards for the two sexes (causes * ages). diff --git a/R/kin_time_variant_2sex_cod.R b/R/kin_time_variant_2sex_cod.R index 52caad6..562be20 100644 --- a/R/kin_time_variant_2sex_cod.R +++ b/R/kin_time_variant_2sex_cod.R @@ -24,52 +24,6 @@ #' @return A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example `d` is daughter, `oa` is older aunts, etc.), including living and dead kin at that age and sex. #' @export - -## BEN: ======================================================================== -# Function building: -# library(DemoKin) -# library(tidyr) -# library(dplyr) -# library(here) -# -# # Input of model -# years <- ncol(swe_px) -# ages <- nrow(swe_px) -# ff <- swe_asfr -# fm <- rbind(matrix(0, 5, years), -# swe_asfr[-((ages-4):ages),]) * 1.05 -# pf <- swe_px -# pm <- swe_px ^ 1.5 -# -# sex_focal = "f" -# time_invariant = FALSE -# birth_female = .5 -# output_cohort = 1900 # like in the vignette -# output_period = NULL -# output_kin = NULL -# -# -# pif <- pim <- NULL -# nf <- nm <- NULL -# list_output = FALSE -# -# # Create a fictitious hazard matrix with three causes of death, where each -# # year is a list item (Hazard matrix needs to be (causes * ages) for the -# # matrix algebra to work well with existing code). -# H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) -# Hf <- Hm <- sapply(colnames(pf), function(x) { -# return(H) -# }, -# simplify = FALSE, -# USE.NAMES = TRUE -# ) -# # BEN: Load time invariant for COD -# source("./R/kin_time_invariant_2sex_cod.R") - - -## ============================================================================= - - # BEN: Added hazard matrices as inputs. # Assume that input of cause-specific mortality will be in terms of # matrices of cause-specific hazards for the two sexes (causes * ages). diff --git a/R/test.R b/R/test.R deleted file mode 100644 index b593dea..0000000 --- a/R/test.R +++ /dev/null @@ -1,85 +0,0 @@ - -rm(list = ls()) - -## Compare output - -library(DemoKin) - -source("./R/kin_time_invariant_2sex_cod.R") -source("./R/kin_time_variant_2sex_cod.R") - -source("./R/kin_time_invariant_2sex.R") -source("./R/kin_time_variant_2sex.R") - -## Example from Vignette 2 sex but few years for speed - -years_all <- ncol(swe_px) -years_test <- 1:20 -ages <- nrow(swe_px) -pf <- swe_px[,years_test] -pm <- swe_px[,years_test] ^ 1.5 # artificial perturbation for this example -ff <- swe_asfr[, years_test] -fm <- rbind(matrix(0, 5, max(years_test)), - swe_asfr[-((ages-4):ages), years_test]) * 1.05 # artificial perturbation for this example - -# Create a fictitious hazard matrix with three causes of death, where each -# year is a list item (Hazard matrix needs to be (causes * ages) for the -# matrix algebra to work well with existing code). -H <- matrix(c(0.5, 1, 2), nrow = 3, ncol = nrow(pf)) -Hf <- Hm <- sapply(colnames(pf), function(x) { - return(H) - }, - simplify = FALSE, - USE.NAMES = TRUE - ) - -## COMPARISON - -start.time <- Sys.time() -no_cod <- kin_time_variant_2sex(pf = pf, pm = pm, - ff = ff, fm = fm, - sex_focal = "f", - birth_female = 1/2.04, - pif = NULL, pim = NULL, - nf = NULL, nm = NULL, - output_cohort = NULL, output_period = NULL, output_kin = NULL, - list_output = FALSE) -end.time <- Sys.time() -time.taken.no.cod <- end.time - start.time - - -start.time <- Sys.time() -cod <- kin_time_variant_2sex_cod(pf = pf, pm = pm, - ff = ff, fm = fm, - Hf = Hf, Hm = Hm, - sex_focal = "f", - birth_female = 1/2.04, - pif = NULL, pim = NULL, - nf = NULL, nm = NULL, - output_cohort = NULL, output_period = NULL, output_kin = NULL, - list_output = FALSE) -end.time <- Sys.time() -time.taken.cod <- end.time - start.time - -no_cod -cod |> - mutate( - dead = deadcause1 + deadcause2 + deadcause3 - ) - - -no_cod |> - filter( - kin == "gm", - age_focal %in% 30:35, - age_kin > 60 - ) -cod |> - mutate( - dead = deadcause1 + deadcause2 + deadcause3 - ) |> - filter( - kin == "gm", - age_focal %in% 30:35, - age_kin > 60 - ) diff --git a/man/kin.Rd b/man/kin.Rd index 83dbe04..5fbc92f 100644 --- a/man/kin.Rd +++ b/man/kin.Rd @@ -13,9 +13,9 @@ kin( output_cohort = NULL, output_period = NULL, output_kin = NULL, + output_age_focal = NULL, birth_female = 1/2.04, - stable = lifecycle::deprecated(), - U = lifecycle::deprecated() + summary_kin = TRUE ) } \arguments{ @@ -36,12 +36,12 @@ in a more general perspective) with rows as ages (and columns as years in case o \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} -\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, -this needs to be set as 1.} +\item{output_age_focal}{integer. Vector of ages to select (and make faster the run).} -\item{stable}{logic. Deprecated. Use \code{time_invariant}.} +\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring,} -\item{U}{logic. Deprecated. Use \code{p}.} +\item{summary_kin}{logical. Whether or not include \code{kin_summary} table (see output details). Default \code{TRUE}. +this needs to be set as 1.} } \value{ A list with: diff --git a/man/kin2sex.Rd b/man/kin2sex.Rd index be985aa..fde5cd9 100644 --- a/man/kin2sex.Rd +++ b/man/kin2sex.Rd @@ -16,9 +16,13 @@ kin2sex( pim = NULL, nf = NULL, nm = NULL, + Hf = NULL, + Hm = NULL, output_cohort = NULL, output_period = NULL, - output_kin = NULL + output_kin = NULL, + output_age_focal = NULL, + summary_kin = TRUE ) } \arguments{ @@ -44,11 +48,19 @@ kin2sex( \item{nm}{numeric. Only for \code{time_invariant = FALSE}. Same as \code{pm} but for population distribution (counts or \verb{\%}). Optional.} +\item{Hf}{numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age.} + +\item{Hm}{numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age.} + \item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} \item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} \item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} + +\item{output_age_focal}{integer. Vector of ages to select (and make faster the run).} + +\item{summary_kin}{logical. Whether or not include \code{kin_summary} table (see output details). Default \code{TRUE}.} } \value{ A list with: diff --git a/man/kin_time_invariant_2sex_cod.Rd b/man/kin_time_invariant_2sex_cod.Rd new file mode 100644 index 0000000..6645ca0 --- /dev/null +++ b/man/kin_time_invariant_2sex_cod.Rd @@ -0,0 +1,59 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_invariant_2sex_cod.R +\name{kin_time_invariant_2sex_cod} +\alias{kin_time_invariant_2sex_cod} +\title{Estimate kin counts in a time invariant framework for two-sex model.} +\usage{ +kin_time_invariant_2sex_cod( + pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + Hf = NULL, + Hm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, + pim = NULL, + output_kin = NULL, + list_output = FALSE +) +} +\arguments{ +\item{pf}{numeric. A vector of survival probabilities for females with same length as ages.} + +\item{pm}{numeric. A vector of survival probabilities for males with same length as ages.} + +\item{ff}{numeric. A vector of age-specific fertility rates for females with same length as ages.} + +\item{fm}{numeric. A vector of age-specific fertility rates for males with same length as ages.} + +\item{Hf}{numeric. A matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age.} + +\item{Hm}{numeric. A matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{birth_female}{numeric. Female portion at birth.} + +\item{pif}{numeric. For using some specific non-stable age distribution of childbearing for mothers (same length as ages). Default \code{NULL}.} + +\item{pim}{numeric. For using some specific non-stable age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} + +\item{output_kin}{character. kin to return, considering matrilineal names. For example "m" for parents, "d" for children, etc. See the \code{vignette} for all kin types.} + +\item{list_output}{logical. Results as a list with \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} +} +\value{ +A data frame with focal´s age, related ages and type of kin +(for example \code{d} is children, \code{oa} is older aunts/uncles, etc.), sex, alive and death. If \code{list_output = TRUE} then this is a list. +} +\description{ +Two-sex matrix framework for kin count and death estimates.This produces kin counts grouped by kin, age and sex of +each relatives at each Focal´s age. For example, male cousins from aunts and uncles from different sibling's parents +are grouped in one male count of cousins. This also produces kin deaths grouped by kin, age, sex of +each relatives at each Focal´s age, and cause of death. +} +\details{ +See Caswell (2022) for details on formulas. +} diff --git a/man/kin_time_variant_2sex_cod.Rd b/man/kin_time_variant_2sex_cod.Rd new file mode 100644 index 0000000..c0db9a8 --- /dev/null +++ b/man/kin_time_variant_2sex_cod.Rd @@ -0,0 +1,70 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_variant_2sex_cod.R +\name{kin_time_variant_2sex_cod} +\alias{kin_time_variant_2sex_cod} +\title{Estimate kin counts in a time variant framework (dynamic rates) in a two-sex framework (Caswell, 2022)} +\usage{ +kin_time_variant_2sex_cod( + pf = NULL, + pm = NULL, + ff = NULL, + fm = NULL, + Hf = NULL, + Hm = NULL, + sex_focal = "f", + birth_female = 1/2.04, + pif = NULL, + pim = NULL, + nf = NULL, + nm = NULL, + output_cohort = NULL, + output_period = NULL, + output_kin = NULL, + list_output = FALSE +) +} +\arguments{ +\item{pf}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{pm}{numeric. A vector (atomic) or matrix with probabilities (or survival ratios, or transition between age class in a more general perspective) with rows as ages (and columns as years in case of matrix, being the name of each col the year).} + +\item{ff}{numeric. Same as pf but for fertility rates.} + +\item{fm}{numeric. Same as pm but for fertility rates.} + +\item{Hf}{numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for females with rows as causes and columns as ages, being the name of each col the age.} + +\item{Hm}{numeric. A list where each list element (being the name of each list element the year) contains a matrix with cause-specific hazards for males with rows as causes and columns as ages, being the name of each col the age.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{birth_female}{numeric. Female portion at birth. This multiplies \code{f} argument. If \code{f} is already for female offspring, this needs to be set as 1.} + +\item{pif}{numeric. For using some specific age distribution of childbearing for mothers (same length as ages). Default \code{NULL}.} + +\item{pim}{numeric. For using some specific age distribution of childbearing for fathers (same length as ages). Default \code{NULL}.} + +\item{nf}{numeric. Same as pf but for population distribution (counts or \verb{\%}). Optional.} + +\item{nm}{numeric. Same as pm but for population distribution (counts or \verb{\%}). Optional.} + +\item{output_cohort}{integer. Vector of year cohorts for returning results. Should be within input data years range.} + +\item{output_period}{integer. Vector of period years for returning results. Should be within input data years range.} + +\item{output_kin}{character. kin types to return: "m" for mother, "d" for daughter,...} + +\item{list_output}{logical. Results as a list with years elements (as a result of \code{output_cohort} and \code{output_period} combination), with a second list of \code{output_kin} elements, with focal´s age in columns and kin ages in rows (2 * ages, last chunk of ages for death experience). Default \code{FALSE}} +} +\value{ +A data.frame with year, cohort, Focal´s age, related ages, sex and type of kin (for example \code{d} is daughter, \code{oa} is older aunts, etc.), including living and dead kin at that age and sex. +} +\description{ +Two-sex matrix framework for kin count estimates with varying rates. +This produces kin counts grouped by kin, age and sex of each relatives at each Focal´s age. +For example, male cousins from aunts and uncles from different sibling's parents are grouped in one male count of cousins. This also produces kin deaths grouped by kin, age, sex of +each relatives at each Focal´s age, and cause of death. +} +\details{ +See Caswell (2022) for details on formulas. +} diff --git a/man/timevarying_kin_2sex_cod.Rd b/man/timevarying_kin_2sex_cod.Rd new file mode 100644 index 0000000..8bc0b87 --- /dev/null +++ b/man/timevarying_kin_2sex_cod.Rd @@ -0,0 +1,29 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/kin_time_variant_2sex_cod.R +\name{timevarying_kin_2sex_cod} +\alias{timevarying_kin_2sex_cod} +\title{one time projection kin} +\usage{ +timevarying_kin_2sex_cod(Ut, Ft, Ft_star, pit, sex_focal, ages, pkin) +} +\arguments{ +\item{Ut}{numeric. A matrix of survival probabilities (or ratios).} + +\item{Ft}{numeric. A matrix of age-specific fertility rates.} + +\item{Ft_star}{numeric. Ft but for female fertility.} + +\item{pit}{numeric. A matrix with distribution of childbearing.} + +\item{sex_focal}{character. "f" for female or "m" for male.} + +\item{ages}{numeric.} + +\item{pkin}{numeric. A list with kin count distribution in previous year.} +} +\value{ +A list of 14 types of kin matrices (kin age by Focal age, blocked for two sex) projected one time interval. +} +\description{ +one time projection kin. internal function. +} diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index 8ee0d94..97f4b4a 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -11,7 +11,7 @@ vignette: > %\VignetteEncoding{UTF-8} --- -```{r, eval = F, include=FALSE} +```{r, eval = T, include=FALSE} knitr::opts_chunk$set(collapse = TRUE, comment = "#>") library(devtools); load_all() ``` @@ -275,4 +275,43 @@ bind_rows( facet_grid(col = vars(kin), row = vars(age_focal), scales = "free") ``` +### 2. Causes of death + +Now assume we have two causes of death, where the risk of the first one is half the other for females but 2/3 for males, in both cases for ages greater than 50. We need to set tow matrix with dimension 2 by 101 (number of causes by number of ages). + +```{r} +Hf <- matrix(c( .5, 1), nrow = 2, ncol = length(fra_surv_f)) +Hm <- matrix(c(.33, 1), nrow = 2, ncol = length(fra_surv_f)) +Hf[,1:50] <- Hm[,1:50] <- 1 +``` + +This is a generalization of Caswell [-@Caswell2023] approach. Originally the inputs in matrix $H$ are the hazard rates, but works like a relative risk factors realted to undelying death probability (see section 2.3 and formula 30 in section A.1). Now we run the time-invariant two-sex model by cause of death for France 2012, assuming our death count distribution based in the two competing causes: + +```{r} +kin_out_cod_invariant <- kin2sex( + pf = fra_surv_f, + pm = fra_surv_m, + ff = fra_fert_f, + fm = fra_fert_m, + Hf = Hf, + Hm = Hm, + time_invariant = TRUE) +``` + +The output in this case is always the `kin_full` type. Let´s see a plot with the death distribution by age and cause of Focal´s parents when Focal is 30 yo. + +```{r} +kin_out_cod_invariant %>% + filter(kin == "m", age_focal == 30) %>% + summarise(deadcause1 = sum(deadcause1), + deadcause2 = sum(deadcause2), .by = c(age_kin, sex_kin)) %>% + pivot_longer(deadcause1:deadcause2) %>% + ggplot(aes(age_kin, value, col = sex_kin, linetype = name)) + + geom_line() + + labs(y = "Parent's death count") + + theme_bw() +``` + +Because all the death experience of Focal is for apretns older than 50, is clear the realtive difference between the causes for each sex. The sum of the counts by sex gives the same result than total deaths by sex at that age in the general case (section 2, without splitting death probabilities by cause). The number of possible causes to add is not limited, but consider that it get more time-consuming. If we are dealing with a time-variant case, then a list by sex ($Hf$ and $Hm$) must be provided, with $H$ matrix for each year as elements, in the same order than mortality and fertility components. + ## References diff --git a/vignettes/references.bib b/vignettes/references.bib index 19e08e3..a2fc0ff 100644 --- a/vignettes/references.bib +++ b/vignettes/references.bib @@ -1,3 +1,15 @@ +@article{Caswell2023, + author = {Caswell, Hal and Margolis, Rachel and Verdery, Ashton}, + title = {{The formal demography of kinship V: Kin loss, bereavement, and causes of death}}, + journal = {Demographic Research}, + volume = {49}, + pages = {1163--1200}, + year = {2023}, + month = dec, + issn = {1435-9871}, + publisher = {Demographic Research}, + url = {https://www.demographic-research.org/articles/volume/49/41} +} @article{caswell_formal_2019, title = {The formal demography of kinship: {A} matrix formulation}, From 85830e46c8b05cb21f083a8cf71fab76a8dafcdc Mon Sep 17 00:00:00 2001 From: Alburez-Gutierrez Date: Tue, 17 Sep 2024 09:23:37 +0200 Subject: [PATCH 36/37] updated vignette COD --- vignettes/Reference_TwoSex.Rmd | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/vignettes/Reference_TwoSex.Rmd b/vignettes/Reference_TwoSex.Rmd index 97f4b4a..12289d9 100644 --- a/vignettes/Reference_TwoSex.Rmd +++ b/vignettes/Reference_TwoSex.Rmd @@ -277,7 +277,7 @@ bind_rows( ### 2. Causes of death -Now assume we have two causes of death, where the risk of the first one is half the other for females but 2/3 for males, in both cases for ages greater than 50. We need to set tow matrix with dimension 2 by 101 (number of causes by number of ages). +Now assume we have two causes of death (COD). For females, the risk of the first COD is half the risk of the second COD for ages greater than 50. For males, the risk of the first COD is 2/3 of the second COD for ages greater than 50. We operationalize this using two matrices with dimension 2 by 101 (number of causes by number of ages). ```{r} Hf <- matrix(c( .5, 1), nrow = 2, ncol = length(fra_surv_f)) @@ -285,7 +285,7 @@ Hm <- matrix(c(.33, 1), nrow = 2, ncol = length(fra_surv_f)) Hf[,1:50] <- Hm[,1:50] <- 1 ``` -This is a generalization of Caswell [-@Caswell2023] approach. Originally the inputs in matrix $H$ are the hazard rates, but works like a relative risk factors realted to undelying death probability (see section 2.3 and formula 30 in section A.1). Now we run the time-invariant two-sex model by cause of death for France 2012, assuming our death count distribution based in the two competing causes: +This is a generalization of the approach outlined by Caswell [-@Caswell2023]. In the original formulation, the inputs in matrix $H$ are the hazard rates. Here, we treat them like a relative risk factor related to the underlying probability of dying. For more details, see section 2.3 and formula 30 in section A.1 of Caswell [-@Caswell2023]. Now we run the time-invariant two-sex model by COD for France 2012, assuming a death count distribution based on the two competing causes; note that the `kin2sex` function now takes the arguments `Hf` and `Hm` but the other arguments remain unchanged: ```{r} kin_out_cod_invariant <- kin2sex( @@ -298,7 +298,13 @@ kin_out_cod_invariant <- kin2sex( time_invariant = TRUE) ``` -The output in this case is always the `kin_full` type. Let´s see a plot with the death distribution by age and cause of Focal´s parents when Focal is 30 yo. +The output of `kin2sex` is the the `kin_full` data frame that we have encountered before. The only differences is that `kin_full` now includes one column for each COD specified in the input. Therefore, the number of columns will vary depending on how many COD you are considering! + +```{r} +head(kin_out_cod_invariant) +``` + +We can now plot the death distribution by age and COD of Focal's parents when Focal is 30 yo. ```{r} kin_out_cod_invariant %>% @@ -308,10 +314,12 @@ kin_out_cod_invariant %>% pivot_longer(deadcause1:deadcause2) %>% ggplot(aes(age_kin, value, col = sex_kin, linetype = name)) + geom_line() + - labs(y = "Parent's death count") + + labs(y = "Expected number of parental deaths") + theme_bw() ``` -Because all the death experience of Focal is for apretns older than 50, is clear the realtive difference between the causes for each sex. The sum of the counts by sex gives the same result than total deaths by sex at that age in the general case (section 2, without splitting death probabilities by cause). The number of possible causes to add is not limited, but consider that it get more time-consuming. If we are dealing with a time-variant case, then a list by sex ($Hf$ and $Hm$) must be provided, with $H$ matrix for each year as elements, in the same order than mortality and fertility components. +In this simplified example, the parents of Focal only died after age 50. This helped highlight the relative difference between the COD for each sex. Note that the sum of the death counts by sex gives the same result as the total deaths by sex at that age in the less complex model (i.e., the one that does not consider COD, see section 2 of this guide). + +You can add as many COD as you want, but keep in mind that this can be computationally intensive. For time-variant kinship models that consider COD, you must provide a list of matrices by sex ($Hf$ and $Hm$). The elements of this list should be $H$ matrices for each year (following the same order than the mortality and fertility components). ## References From 578456508a01cd3f5f2b516c7ff06d96b7c894f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Williams?= Date: Tue, 24 Sep 2024 11:13:22 -0300 Subject: [PATCH 37/37] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2bb3c6b..9255f10 100644 --- a/README.md +++ b/README.md @@ -116,7 +116,7 @@ does not load, you may need to install the package as ## Citation -Williams, Iván; Alburez-Gutierrez, Diego; Song, Xi; and Hal Caswell. +Williams, Iván; Alburez-Gutierrez, Diego; and the DemoKin team. (2021) DemoKin: An R package to implement demographic matrix kinship models. URL: .

QPLH-LNXi&2>e*p884`m98(!#;0(BX9jG1 zw>Y^V=7`I6^5&~JF%z@**6SMX)2(sx9z z+--@izRz_^Mn{}e4CZID++Vj1LzW92Qv?ET&O5YAKw%fV|8NlIL(Df6|7^Tu9v*Tdl>7NJu4VD1(Fmd^BH@ymtPL(5+MHZr{o+b>;zQnJDXf|NC++E^9D^Fa|MUCZj@U zt0%Fi*7M}o=xXF-&>4ZW$(?up1uX(P6{_?tMS{6)%D8Z_P1e+WRn=`7nPX)Rk1;z= zfj+9%Llfw^?hI4x1PCHEHifQ>h>nT=f0qXXE*{~h$EQ%mj1@O{aWc6v;vo8?4|@o# z0*!&#FTd)u)=Fss7#QciY#6Vq>SB2RN~Y&(;^&4j(U%o%C?+(u$&s?Qx)igb>M0Y`(RLn-ma-B z8tE1#JK&cpsxC&m~x*u74u>h#jE>)JcNp$(p-f%YLu%e6 z=0Tlz%eugGH|xB45rynu&v3*NlnZovKy;MO>?qQFE*Jyzz0xs->{d)#GuGa5^my(g z8&Qm3r5|=ik8*{!*IS;A#MTdRRD=c#d_dbMwTe%`R&& z=`-A!5x6D~*AqFIU#S1U=Rzf)7qi&U%yUP=l>-W1nAl{KPZ$Rm@msUCsskY`GfJa?;#mP`@;NNCbHoNZigBw2( zIkHmtnkSK~dK$TcAH#lBnXakg?ZiaCb?xH7FBUJ|7co~hD6g(A)|11PJG2fqHYnkF zJlt*_cB{0S-L6meXKO5ZJ>Ha9Feb=tBTk97S+~^G>{F7Eh+(-bIL#ei-rf&{d9*AZ zUUsdPZ~E%CiB2wG{LD=~ojv{F2WMS<={eQ^s`|Qd!flDx@nyAcw;%UZjmb7WG%a%&V@C;NG zi?q7^e2M5dARWow-f^X759OXbxkzBiSOE_Ql}%&MYiJg;F`IBD5W0$F23IG)MOS`7 zNekjTH&luTcwb+FksNLB{+iv%faqi31eopauzx_o59vIJ#{X(yHrf-%^DV}bu{6ol zbhKbZ{KWm5O?sfwv3+FO8z|H-1(K(k_sNnkW#`*_$L{zwJ2W~a9lJm!oeARg!V+K9 z#T8OogEmmIf1o6euz4H!l=7aPsT?ZO-14)~ZDD6lE=kL5gGXX+Ae%H8j-DASup_bN zK!?>A+dJL~ASzVfuR%OpMqePm(FUQ2^8i>WVc$^R<}&Tk#<|9chPBcy?;iBr>I3hHPvaIh>t2vDF?eLb3P1*DM6eV_&lq+{pq3Pb(K% z+o^^Y9GC4y3p61)W(`T-)dAWKGS^M?(SkbWOT>kc<_^1hY}a)h4sfK;LhNAknA5wJ zvTr%NhYK8ADQ*+ms%)h zwR(&Pv+?H5n⋙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ⅅ$0 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νJnNEOkc;oTaPPL3oMv(qp@ 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