# NOT RUN {
## Balanced hierarchy
# T
# |--------|
# A B
# |---| |--|--|
# AA AB BA BB BC
# Names of the bottom level variables
data_bts <- data.frame(X1 = c("A", "A", "B", "B", "B"),
X2 = c("A", "B", "A", "B", "C"),
stringsAsFactors = FALSE)
# Cross-sectional aggregation matrix
C <- Cmatrix(~ X1 / X2, data_bts, sep = "")
## Unbalanced hierarchy (1)
# T
# |--------|------|
# A B C
# |---| |--|--|
# AA AB BA BB BC
# Names of the bottom level variables
data_bts <- data.frame(X1 = c("A", "A", "B", "B", "B", "C"),
X2 = c("A", "B", "A", "B", "C", NA),
stringsAsFactors = FALSE)
# Cross-sectional aggregation matrix
C <- Cmatrix(~ X1 / X2, data_bts, sep = "")
## Unbalanced hierarchy (2)
# T
# |---------|---------|
# A B C
# |---| |---| |---|
# AA AB BA BB CA CB
# |----| |----|
# AAA AAB BBA BBB
# Names of the bottom level variables
data_bts <- data.frame(X1 = c("A", "A", "A", "B", "B", "B", "C", "C"),
X2 = c("A", "A", "B", "A", "B", "B", "A", "B"),
X3 = c("A", "B", NA, NA, "A", "B", NA, NA),
stringsAsFactors = FALSE)
# Cross-sectional aggregation matrix
C <- Cmatrix(~ X1 / X2 / X3, data_bts, sep = "")
## Grouped hierarchy
# C S
# |--------| |--------|
# A B M F
# |---| |---|
# AA AB BA BB
# Names of the bottom level variables
data_bts <- data.frame(X1 = c("A", "A", "B", "B", "A", "A", "B", "B"),
X2 = c("A", "B", "A", "B", "A", "B", "A", "B"),
Y1 = c("M", "M", "M", "M", "F", "F", "F", "F"),
stringsAsFactors = FALSE)
# Cross-sectional aggregation matrix
C <- Cmatrix(~ Y1 * (X1 / X2), data_bts, sep = "")
# }
Run the code above in your browser using DataLab