Can you see my app? Posit Cloud
Your app is definitely showing nothing but there's not much we can do for you without seen the actual code
# Verificar y, si es necesario, instalar las bibliotecas faltantes
required_packages <- c("shiny", "readxl", "DT", "dplyr", "purrr")
installed_packages <- rownames(installed.packages())
for (package in required_packages) {
if (!(package %in% installed_packages)) {
install.packages(package)
}
}
# Cargar las bibliotecas después de verificar e instalar
library(shiny)
library(readxl)
library(DT)
library(dplyr)
library(purrr)
# Obtener la ruta relativa al archivo Excel
excel_file <- "results_1950_2020_separar_regresar.xlsx"
# Cargar el dataframe
df <- read_excel(excel_file)
# Cambiar nombres de las columnas
df <- df %>%
rename(
Año = Year,
Hombres = Predicted_Hombres,
Mujeres = Predicted_Mujeres
)
# Crear conjunto de datos para la suma de la AMG
df_AMG <- df %>%
group_by(Año, `Grupos quinquenales de edad`) %>%
summarise(
Hombres = sum(Hombres),
Mujeres = sum(Mujeres),
.groups = "drop"
) %>%
mutate(Municipio = "AMG")
# Unir al conjunto de datos original
df <- bind_rows(df, df_AMG)
# Definir UI
ui <- fluidPage(
titlePanel("Proyecciones de la población del AMG por grupos quinquenales de edad y sexo: 2025-2045"),
sidebarLayout(
sidebarPanel(
selectInput("municipio", "Selecciona un Municipio:", choices = unique(df$Municipio)),
selectInput("grupo", "Selecciona un Grupo de edad:", choices = unique(df$`Grupos quinquenales de edad`))
),
mainPanel(
h3("AMG"),
DTOutput("totalAMG"), # Mantener esta línea para mostrar la primera tabla
DTOutput("tableData")
)
)
)
# Definir server
server <- function(input, output, session) {
total_AMG <- reactive({
df %>%
filter(Municipio == "AMG") %>%
group_by(Año) %>%
summarise(
Hombres = sum(Hombres),
Mujeres = sum(Mujeres),
Total = Hombres + Mujeres,
.groups = "drop"
) %>%
mutate(
Hombres = formatC(Hombres, format="f", big.mark=",", digits=0),
Mujeres = formatC(Mujeres, format="f", big.mark=",", digits=0),
Total = formatC(Total, format="f", big.mark=",", digits=0)
)
})
filtered_data <- reactive({
df %>%
filter(Municipio == input$municipio, `Grupos quinquenales de edad` == input$grupo) %>%
mutate(
Total = Hombres + Mujeres,
Hombres = formatC(Hombres, format="f", big.mark=",", digits=0),
Mujeres = formatC(Mujeres, format="f", big.mark=",", digits=0),
Total = formatC(Total, format="f", big.mark=",", digits=0)
)
})
output$totalAMG <- renderDT({
total_AMG()
})
output$tableData <- renderDT({
filtered_data()
})
}
# Lanzar la aplicación
shinyApp(ui, server)
This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.
If you have a query related to it or one of the replies, start a new topic and refer back with a link.