GitHub

Version R License Language


Español

complexr es una aplicación web desarrollada en R Shiny para el análisis estadístico de encuestas de muestreo complejo. Permite definir diseños muestrales, derivar variables, estimar indicadores con corrección por diseño y visualizar resultados con medidas de incertidumbre, todo sin necesidad de escribir código.

Está orientada a investigadores, estadísticos y analistas que trabajan con datos provenientes de encuestas probabilísticas (encuestas nacionales, censos, estudios epidemiológicos) y requieren estimaciones rigurosas que respeten la estructura del diseño muestral.

Módulos principales

Datos

  • Carga de archivos en formatos CSV, TSV/TXT, XLSX, XLS, SAV (SPSS), POR (SPSS portable), DTA (Stata), SAS7BDAT, XPT (SAS transport) y RDS.
  • Conjunto de datos de ejemplo integrado para exploración inmediata.
  • Vista previa tabular interactiva con resumen de dimensiones y variables.

Diseño muestral

  • Soporte para tres tipos de diseño:
    • Simple aleatorio (SRS)
    • Estratificado
    • Conglomerados / Multietápico
  • Configuración de variables de estrato, conglomerado, pesos de expansión y corrección de población finita (FPC).
  • Generación automática del código R equivalente (svydesign).
  • Diagnóstico del diseño construido.

Estimación

  • Estimadores disponibles: media, total, proporción, razón y cuantiles.
  • Desglose por dominios (una o varias variables de clasificación).
  • Marco teórico con formulación matemática (renderizado con MathJax).
  • Tabla de resultados con error estándar, intervalo de confianza y coeficiente de variación (CV).
  • Indicadores de calidad para evaluar la confiabilidad de las estimaciones.

Inferencia estadística

  • Cinco tipos de análisis con corrección por diseño muestral complejo:
    • Coeficiente de Gini — desigualdad con curva de Lorenz ponderada, desglose por dominio y estimación de varianza por linearización de Taylor (convey).
    • Correlación de Pearson — correlación ponderada con intervalo de confianza mediante transformación Z de Fisher.
    • Prueba de hipótesis — contraste t de diferencia de medias entre dos grupos (svyttest), con IC y grados de libertad basados en el diseño.
    • Tablas cruzadas — tablas de proporciones y prueba chi-cuadrado con corrección de Rao-Scott (estadísticos F, Chi² y Wald).
    • Contrastes lineales — comparaciones múltiples por pares con corrección de Bonferroni; editor interactivo de matrices de contraste personalizadas.
  • Marco teórico con formulación matemática (MathJax) para cada análisis.
  • Visualizaciones específicas: curva de Lorenz, diagrama de dispersión, gráfico de medias por grupo, proporciones agrupadas y forest plot de contrastes.
  • Exportación de resultados en CSV, Excel (.xlsx) y RDS.
  • Integración automática con el módulo Tablas.

Tablas de resultados

  • Gestión centralizada de todas las estimaciones e inferencias generadas en la sesión.
  • Exportación de resultados en CSV, Excel (.xlsx), RDS, JSON y TXT (tab).
  • Vista por pestañas con contador de tablas activas.
  • Limpieza selectiva o total de resultados almacenados.

Interfaz

La aplicación cuenta con una interfaz de estilo empresarial diseñada para entornos profesionales:

  • Barra de navegación con iconos FontAwesome por módulo.
  • Cards con cabecera, separación visual y borde de acento en paneles laterales.
  • Cabeceras de página con ícono descriptivo y subtítulo contextual.
  • Salida de código en estilo terminal (fondo oscuro, tipografía monoespaciada).
  • Soporte multiidioma (Español / English) desde la barra superior.
  • Tipografía Inter con jerarquía tipográfica clara.
  • Paleta institucional CEPAL / MSPS.

Requisitos e instalación

complexr requiere R >= 4.1.0. Las dependencias incluyen: shiny, DT, srvyr, survey, dplyr, tibble, tidyr, readr, readxl, haven, ggplot2, jsonlite, writexl, entre otras.

La forma más sencilla de instalar complexr directamente desde GitHub es:

# Opción 1 — con remotes
install.packages("remotes")
remotes::install_github("stalynGuerrero/complexr")
# Opción 2 — con pak
install.packages("pak")
pak::pak("stalynGuerrero/complexr")

Ejecutar la aplicación

complexr::run_app()

Estructura del paquete

R/
├── app_ui.R               # UI raíz (navbarPage + tema)
├── app_server.R           # Servidor raíz (i18n + orquestación)
├── mod_datos_*            # Módulo de carga de datos
├── mod_diseno_*           # Módulo de diseño muestral
├── mod_estimacion_*       # Módulo de estimación
├── mod_inferencia_*       # Módulo de inferencia estadística
├── mod_tablas_*           # Módulo de tablas de resultados
├── design.R               # Lógica de construcción del diseño
├── estimate_survey.R      # Estimadores con corrección por diseño
├── generate_example_data.R
└── i18n.R                 # Internacionalización
inst/
├── app/www/custom.css     # Tema visual enterprise
└── app/www/i18n/          # Diccionarios ES / EN

Autor

Stalyn Guerrero Gómezguerrerostalyn@gmail.com
Licencia: GPL-3


English

complexr is a web application built with R Shiny for the statistical analysis of complex survey data. It enables users to define sampling designs, derive new variables, estimate indicators with design-based corrections, and visualize results with uncertainty measures — all without writing code.

It is aimed at researchers, statisticians, and analysts working with data from probability surveys (national surveys, censuses, epidemiological studies) who require rigorous estimates that respect the underlying sampling design structure.

Main modules

Data

  • File upload in CSV, TSV/TXT, XLSX, XLS, SAV (SPSS), POR (SPSS portable), DTA (Stata), SAS7BDAT, XPT (SAS transport), and RDS formats.
  • Built-in example dataset for immediate exploration.
  • Interactive tabular preview with dimension and variable summary.

Sampling design

  • Support for three design types:
    • Simple random sampling (SRS)
    • Stratified
    • Cluster / Multi-stage
  • Configuration of strata, cluster, expansion weight variables, and finite population correction (FPC).
  • Automatic generation of the equivalent R code (svydesign).
  • Built-in design diagnostics.

Estimation

  • Available estimators: mean, total, proportion, ratio, and quantiles.
  • Breakdown by domains (one or more classification variables).
  • Theoretical framework with mathematical formulation (rendered with MathJax).
  • Results table with standard error, confidence interval, and coefficient of variation (CV).
  • Quality indicators to assess estimation reliability.

Statistical inference

  • Five analysis types with complex sampling design correction:
    • Gini coefficient — inequality measurement with weighted Lorenz curve, domain breakdown, and variance estimation via Taylor linearization (convey).
    • Pearson correlation — design-weighted correlation with confidence interval via Fisher's Z transformation.
    • Hypothesis test — design-based t-test for difference of means between two groups (svyttest), with CI and design-based degrees of freedom.
    • Cross-tabulation — proportion tables and independence test with Rao-Scott chi-square correction (F, Chi², and Wald statistics).
    • Linear contrasts — multiple pairwise comparisons with Bonferroni correction; interactive editor for custom contrast matrices.
  • Theoretical framework with mathematical formulation (MathJax) per analysis type.
  • Analysis-specific visualizations: Lorenz curve, scatter plot, group means chart, grouped proportions, and contrasts forest plot.
  • Export results as CSV, Excel (.xlsx), and RDS.
  • Automatic integration with the Tables module.

Results tables

  • Centralized management of all estimates and inference results generated in the session.
  • Export results as CSV, Excel (.xlsx), RDS, JSON, or TXT (tab-delimited).
  • Tab-based view with active table counter.
  • Selective or bulk clearing of stored results.

Interface

The application features an enterprise-style interface designed for professional environments:

  • Navigation bar with FontAwesome icons per module.
  • Cards with headers, visual separation, and accent borders on side panels.
  • Page headers with descriptive icon and contextual subtitle.
  • Code output in terminal style (dark background, monospace font).
  • Multilingual support (Spanish / English) from the top bar.
  • Inter typeface with a clear typographic hierarchy.
  • Institutional CEPAL / MSPS color palette.

Requirements and installation

complexr requires R >= 4.1.0. Dependencies include: shiny, DT, srvyr, survey, dplyr, tibble, tidyr, readr, readxl, haven, ggplot2, jsonlite, writexl, among others.

The easiest way to install complexr directly from GitHub is:

# Option 1 — with remotes
install.packages("remotes")
remotes::install_github("stalynGuerrero/complexr")
# Option 2 — with pak
install.packages("pak")
pak::pak("stalynGuerrero/complexr")

Run the application

complexr::run_app()

Package structure

R/
├── app_ui.R               # Root UI (navbarPage + theme)
├── app_server.R           # Root server (i18n + orchestration)
├── mod_datos_*            # Data loading module
├── mod_diseno_*           # Sampling design module
├── mod_estimacion_*       # Estimation module
├── mod_inferencia_*       # Statistical inference module
├── mod_tablas_*           # Results tables module
├── design.R               # Design construction logic
├── estimate_survey.R      # Design-based estimators
├── generate_example_data.R
└── i18n.R                 # Internationalisation
inst/
├── app/www/custom.css     # Enterprise visual theme
└── app/www/i18n/          # ES / EN dictionaries

Author

Stalyn Guerrero Gómezguerrerostalyn@gmail.com
License: GPL-3

Read the original on github.com ↗