Title: | Hierarchical Model-Based Estimation Approach |
---|---|
Description: | For estimation of a variable of interest using two sources of auxiliary information available in a nested structure. For reference see Saarela et al. (2016)<doi:10.1007/s13595-016-0590-1> and Saarela et al. (2018) <doi:10.3390/rs10111832>. |
Authors: | Svetlana Saarela [cre, aut], Sören Holm [aut], Zhiqiang Yang [aut], Wilmer Prentius [ctb] |
Maintainer: | Svetlana Saarela <[email protected]> |
License: | GPL (>= 2) |
Version: | 1.1 |
Built: | 2024-11-19 06:29:54 UTC |
Source: | CRAN |
Get model specifications of HMB-class object
getSpec(obj) ## S4 method for signature 'HMB' getSpec(obj)
getSpec(obj) ## S4 method for signature 'HMB' getSpec(obj)
obj |
Object of class HMB |
A list containing the estimated parameters, together with model arguments
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) getSpec(hmb_model)
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) getSpec(hmb_model)
Generalized Hierarchical Model-Based estimation method
ghmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Sigma_Sa)
ghmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Sigma_Sa)
y_S |
Response object that can be coerced into a column vector. The
|
X_S |
Object of predictors variables that can be coerced into a matrix.
The rows of |
X_Sa |
Object of predictor variables that can be coerced into a matrix. The set Sa is the intermediate sample. |
Z_Sa |
Object of predictor variables that can be coerced into a matrix.
The set Sa is the intermediate sample, and the Z-variables often some
sort of auxilairy, inexpensive data. The rows of |
Z_U |
Object of predictor variables that can be coerced into a matrix. The set U is the universal population sample. |
Omega_S |
The covariance structure of |
Sigma_Sa |
The covariance structure of |
The GHMB assumes two models
For a sample from the superpopulation, the GHMB assumes
A fitted object of class HMB.
Saarela, S., Holm, S., Healey, S.P., Andersen, H.-E., Petersson, H., Prentius, W., Patterson, P.L., Næsset, E., Gregoire, T.G. & Ståhl, G. (2018). Generalized Hierarchical Model-Based Estimation for Aboveground Biomass Assessment Using GEDI and Landsat Data, Remote Sensing, 10(11), 1832.
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 2500) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] Omega_S = diag(1, nrow(X_S)) Sigma_Sa = diag(1, nrow(Z_Sa)) ghmb_model = ghmb( y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Sigma_Sa) ghmb_model
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 2500) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] Omega_S = diag(1, nrow(X_S)) Sigma_Sa = diag(1, nrow(Z_Sa)) ghmb_model = ghmb( y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Sigma_Sa) ghmb_model
Generalized Two-Staged Model-Based estmation
gtsmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Phis_Sa)
gtsmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Phis_Sa)
y_S |
Response object that can be coersed into a column vector. The
|
X_S |
Object of predictors variables that can be coersed into a matrix.
The rows of |
X_Sa |
Object of predictor variables that can be coresed into a matrix. The set Sa is the intermediate sample. |
Z_Sa |
Object of predictor variables that can be coresed into a matrix.
The set Sa is the intermediate sample, and the Z-variables often some
sort of auxilairy, inexpensive data. The rows of |
Z_U |
Object of predictor variables that can be coresed into a matrix. The set U is the universal population sample. |
Omega_S |
The covariance structure of |
Phis_Sa |
A 3D array, where the third dimension corresponds to the
covariance structure of
|
The GTSMB assumes the superpopulations
For a sample from the superpopulation, the GTSMB assumes
A fitted object of class HMB.
Holm, S., Nelson, R. & Ståhl, G. (2017) Hybrid three-phase estimators for large-area forest inventory using ground plots, airborne lidar, and space lidar. Remote Sensing of Environment, 197, 85–97.
Saarela, S., Holm, S., Healey, S.P., Andersen, H.-E., Petersson, H., Prentius, W., Patterson, P.L., Næsset, E., Gregoire, T.G. & Ståhl, G. (2018). Generalized Hierarchical Model-Based Estimation for Aboveground Biomass Assessment Using GEDI and Landsat Data, Remote Sensing, 10(11), 1832.
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 500) pop_S = sample(pop_U, 100) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] Omega_S = diag(1, nrow(X_S)) Phis_Sa = array(0, c(nrow(X_Sa), nrow(X_Sa), ncol(X_Sa) * (ncol(X_Sa) + 1) / 2)) Phis_Sa[, , 1] = diag(1, nrow(X_Sa)) # Phi(1,1) Phis_Sa[, , 2] = diag(1, nrow(X_Sa)) # Phi(2,1) Phis_Sa[, , 3] = diag(1, nrow(X_Sa)) # Phi(2,2) Phis_Sa[, , 4] = diag(1, nrow(X_Sa)) # Phi(3,1) Phis_Sa[, , 5] = diag(1, nrow(X_Sa)) # Phi(3,2) Phis_Sa[, , 6] = diag(1, nrow(X_Sa)) # Phi(3,3) gtsmb_model = gtsmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Phis_Sa) gtsmb_model
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 500) pop_S = sample(pop_U, 100) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] Omega_S = diag(1, nrow(X_S)) Phis_Sa = array(0, c(nrow(X_Sa), nrow(X_Sa), ncol(X_Sa) * (ncol(X_Sa) + 1) / 2)) Phis_Sa[, , 1] = diag(1, nrow(X_Sa)) # Phi(1,1) Phis_Sa[, , 2] = diag(1, nrow(X_Sa)) # Phi(2,1) Phis_Sa[, , 3] = diag(1, nrow(X_Sa)) # Phi(2,2) Phis_Sa[, , 4] = diag(1, nrow(X_Sa)) # Phi(3,1) Phis_Sa[, , 5] = diag(1, nrow(X_Sa)) # Phi(3,2) Phis_Sa[, , 6] = diag(1, nrow(X_Sa)) # Phi(3,3) gtsmb_model = gtsmb(y_S, X_S, X_Sa, Z_Sa, Z_U, Omega_S, Phis_Sa) gtsmb_model
Hierarchical Model-Based estmation
hmb(y_S, X_S, X_Sa, Z_Sa, Z_U)
hmb(y_S, X_S, X_Sa, Z_Sa, Z_U)
y_S |
Response object that can be coersed into a column vector. The
|
X_S |
Object of predictors variables that can be coersed into a matrix.
The rows of |
X_Sa |
Object of predictor variables that can be coresed into a matrix. The set Sa is the intermediate sample. |
Z_Sa |
Object of predictor variables that can be coresed into a matrix.
The set Sa is the intermediate sample, and the Z-variables often some
sort of auxilairy, inexpensive data. The rows of |
Z_U |
Object of predictor variables that can be coresed into a matrix. The set U is the universal population sample. |
The HMB assumes two models
For a sample from the superpopulation, the HMB assumes
A fitted object of class HMB.
Saarela, S., Holm, S., Grafström, A., Schnell, S., Næsset, E., Gregoire, T.G., Nelson, R.F. & Ståhl, G. (2016). Hierarchical model-based inference for forest inventory utilizing three sources of information, Annals of Forest Science, 73(4), 895-910.
Saarela, S., Holm, S., Healey, S.P., Andersen, H.-E., Petersson, H., Prentius, W., Patterson, P.L., Næsset, E., Gregoire, T.G. & Ståhl, G. (2018). Generalized Hierarchical Model-Based Estimation for Aboveground Biomass Assessment Using GEDI and Landsat Data, Remote Sensing, 10(11), 1832.
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) hmb_model
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) hmb_model
A data frame with 100000 records.
Names are GSV: hMAX: h80: CRR: pVeg: B20: B30: B50:
Display model outputs
Display model summary properties
## S4 method for signature 'HMB' show(object) ## S4 method for signature 'SummaryHMB' show(object)
## S4 method for signature 'HMB' show(object) ## S4 method for signature 'SummaryHMB' show(object)
object |
Object of class HMB |
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) show(hmb_model) pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) show(summary(hmb_model))
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) show(hmb_model) pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) show(summary(hmb_model))
Summary of HMB model
summary(obj) ## S4 method for signature 'HMB' summary(obj)
summary(obj) ## S4 method for signature 'HMB' summary(obj)
obj |
Object of class HMB |
Summary of HMB model.
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] S_Sa_map = matrix(pop_S, nrow = nrow(X_S), ncol = nrow(X_Sa)) S_Sa_map = t(apply(S_Sa_map, 1, function(x) { return(x == pop_Sa) })) * 1 hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) summary(hmb_model)
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] S_Sa_map = matrix(pop_S, nrow = nrow(X_S), ncol = nrow(X_Sa)) S_Sa_map = t(apply(S_Sa_map, 1, function(x) { return(x == pop_Sa) })) * 1 hmb_model = hmb(y_S, X_S, X_Sa, Z_Sa, Z_U) summary(hmb_model)
Two-staged Model-Based estmation
tsmb(y_S, X_S, X_Sa, Z_Sa, Z_U)
tsmb(y_S, X_S, X_Sa, Z_Sa, Z_U)
y_S |
Response object that can be coersed into a column vector. The
|
X_S |
Object of predictors variables that can be coersed into a matrix.
The rows of |
X_Sa |
Object of predictor variables that can be coresed into a matrix. The set Sa is the intermediate sample. |
Z_Sa |
Object of predictor variables that can be coresed into a matrix.
The set Sa is the intermediate sample, and the Z-variables often some
sort of auxilairy, inexpensive data. The rows of |
Z_U |
Object of predictor variables that can be coresed into a matrix. The set U is the universal population sample. |
The TSMB assumes the superpopulations
For a sample from the superpopulation, the TSMB assumes
A fitted object of class HMB.
Saarela, S., Holm, S., Grafström, A., Schnell, S., Næsset, E., Gregoire, T.G., Nelson, R.F. & Ståhl, G. (2016). Hierarchical model-based inference for forest inventory utilizing three sources of information. Annals of Forest Science, 73(4), 895-910.
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] tsmb_model = tsmb(y_S, X_S, X_Sa, Z_Sa, Z_U) tsmb_model
pop_U = sample(nrow(HMB_data), 20000) pop_Sa = sample(pop_U, 5000) pop_S = sample(pop_U, 300) y_S = HMB_data[pop_S, "GSV"] X_S = HMB_data[pop_S, c("hMAX", "h80", "CRR", "pVeg")] X_Sa = HMB_data[pop_Sa, c("hMAX", "h80", "CRR", "pVeg")] Z_Sa = HMB_data[pop_Sa, c("B20", "B30", "B50")] Z_U = HMB_data[pop_U, c("B20", "B30", "B50")] tsmb_model = tsmb(y_S, X_S, X_Sa, Z_Sa, Z_U) tsmb_model