senseR is a statistical diagnostic tool designed to
evaluate whether proxy indicators can reliably represent an underlying
construct that cannot be directly observed or measured. It is intended
for analytical diagnostics and policy-oriented assessment. Note that it
does not perform causal inference.
senser() FunctionThe main function is senser(). It computes a diagnostic score for each proxy based on five components: Monotonicity – Spearman rank correlation between proxy and target. Information content – Proportion of variance explained (R-squared). Stability – Sensitivity of regression coefficients across subsamples. Distributional alignment – Similarity of standardized distributions via Kolmogorov–Smirnov test. Bias risk – Penalization for strong nonlinearity indicating potential proxy distortion.
The overall score is the average of these five components, ranging from 0 to 1: Suitable proxy: score >= 0.70 Conditionally suitable: 0.40 <= score < 0.70 Not suitable proxy: score < 0.40 Interpretation is automatically generated in English or Indonesian.
# example
set.seed(123)
# Simulated dataset
df <- data.frame(
gdp = rnorm(100, 10, 2),
ntl = rnorm(100, 50, 10),
road_density = rnorm(100, 3, 0.5),
mobile_signal = rnorm(100, 70, 15)
)
# Run senser in English
senser(
data = df,
proxy = c("ntl", "road_density", "mobile_signal"),
target = "gdp",
lang = "english"
)
#> target proxy monotonicity information_content elasticity cv
#> X gdp ntl 0.00390039 0.002453434 0.04953215 0.1976486
#> X1 gdp road_density 0.12232823 0.016686441 0.12917601 0.1551972
#> X2 gdp mobile_signal 0.09872187 0.001942958 0.04407900 0.2243373
#> avg_change ceiling_ratio stability_score final_score classification
#> X 11.2733208 0.5936694 0.0000000 0.3000000 Not suitable proxy
#> X1 0.5081511 0.7380208 0.3952459 1.0000000 Suitable proxy
#> X2 18.5465958 0.6397297 0.7629491 0.7629491 Suitable proxy
#> interpretation
#> X Proxy lacks sufficient statistical reliability.
#> X1 Proxy demonstrates adequate variability and statistical stability.
#> X2 Proxy demonstrates adequate variability and statistical stability.# Indonesian language support
senser(
data = df,
proxy = c("ntl", "road_density"),
target = "gdp",
lang = "indonesia"
)
#> target proxy monotonicity information_content elasticity cv
#> X gdp ntl 0.00390039 0.002453434 0.04953215 0.1976486
#> X1 gdp road_density 0.12232823 0.016686441 0.12917601 0.1551972
#> avg_change ceiling_ratio stability_score final_score classification
#> X 11.2733208 0.5936694 0.0000000 0.3 Proxy tidak layak
#> X1 0.5081511 0.7380208 0.3952459 1.0 Proxy layak
#> interpretation
#> X Proxy tidak cukup andal secara statistik.
#> X1 Proxy memiliki variabilitas dan stabilitas yang memadai.Output is printed to the console; the function does not return a value invisibly. Designed for applied diagnostics and policy assessment. Always compare multiple proxies to select the most reliable indicators.
Elbers, C., Lanjouw, J. O., & Lanjouw, P. (2003). Micro-level estimation of poverty and inequality. Econometrica. Henderson, J. V., Storeygard, A., & Weil, D. N. (2012). Measuring economic growth from outer space. American Economic Review.