1 ¿Qué contiene esta carpeta?

Esta carpeta contiene todo lo que necesitas para desarrollar el Proyecto Personal de la asignatura AEDV (Análisis Exploratorio de Datos y Visualización).

Fichero / Carpeta Para qué sirve
README_Proyecto_Personal.html Empieza aquí — esta guía en formato legible
ModeloMemoriaProyectoPersonalAEDV.html Vista previa de la plantilla de memoria
ModeloMemoriaProyectoPersonalAEDV.Rmd Plantilla que abres en RStudio para escribir tu proyecto
RubricaEvaluaciónProyectoPersonal.xlsx Criterios de evaluación de las tres entregas
SelecciónDatasetsProyecto/ Herramientas para elegir y validar tus datos
SelecciónDatasetsProyecto/README_Selección_Tema.html guía para la elección del tema del proyecto
estilos.css Estilos visuales — no modificar
utilidades.R Funciones de la asignatura que carga la memoria, entre ellas aedv_incluir_dataset() para incorporar los datasets — no modificar
DashboardInstruccionesServidorShiny.html Instrucciones para subir y desplegar el cuadro de mandos en el servidor Shiny del DIS

Antes de hacer cualquier otra cosa

Configura la Google Sheet de seguimiento: descarga la plantilla, haz una copia en tu Google Drive y pega la URL en el chunk seguimiento-lectura del ModeloMemoriaProyectoPersonalAEDV.Rmd. Solo se tarda 5 minutos y es obligatorio. De hecho, el tiempo que dedicas a leer este documento ya habría que contabilizarlo como tiempo de dedicación al proyecto. El detalle completo está en el Paso 0 más abajo.


2 Qué tienes que entregar

El proyecto personal se desarrolla en tres entregas progresivas:

Las tres entregas del proyecto

Las entregas no son tres trozos independientes de la memoria, sino tres versiones sucesivas del mismo documento. El trabajo se hace por iteraciones, igual que en la metodología CRISP-DM: en cada entrega se añaden apartados nuevos y, a la vez, se revisan y mejoran los ya entregados, a partir de los comentarios del profesor y las técnicas que se vayan aprendiendo en la asignatura. Un apartado entregado en la Entrega 1 no queda cerrado: se vuelve a él tantas veces como haga falta. De la misma forma cada evaluación pasa por todos los apartados y puede solicitar en apartados ya evaluados anteriormente.

Entrega 1 — Validación del tema y datasets

Acredita que el tema elegido es viable e interesante y que los datos seleccionados cumplen los criterios de AEDV. En la memoria hay que rellenar una primera versión de los siguientes apartados:

  • 1.3 Objetivos, con las preguntas de investigación iniciales del proyecto.
  • 3.3 Comprensión del negocio, que describe la estrategia seguida para seleccionar los datasets —incluido el uso de la IA en esa búsqueda— y las fuentes consultadas, y justifica que los datos elegidos permiten responder a las preguntas de investigación.
  • 3.4 Comprensión de los datos, con los datasets incorporados a la memoria y la discusión de su adecuación a los requisitos de AEDV, tal y como lo hacen los scripts de selección de datasets del ISTAC, INE, EUROSTAT o Banco Mundial. Hay que dedicar especial atención a explicar bien el significado de todas las unidades y variables, con sus opciones posibles.
  • Anexo II. Seguimiento temporal de actividades del proyecto, que se genera solo a partir de la Google Sheet.

Exigencia de la Entrega 1: las preguntas de investigación. No basta con que los datasets cumplan los requisitos de AEDV: la entrega debe plantear preguntas de investigación interesantes que se puedan responder con esos datos y justificar, en Comprensión del negocio, que los datasets elegidos permiten responderlas. Un tema sin preguntas de investigación interesantes no se valida aunque sus datasets cumplan todos los requisitos. Todos los datasets incorporados a la memoria deben estar referenciados por al menos una pregunta: no puede haber un dataset “suelto” que no ayude a responder ninguna de ellas. Son preguntas iniciales: se irán refinando por iteraciones a medida que avance el análisis de los datos (ver el Paso 1).

Entrega 2 — Entrega intermedia

Corresponde a los contenidos del primer parcial del curso. En esta entrega se revisan los apartados de la Entrega 1 —en particular las preguntas de investigación, que se ajustan a lo que ha ido mostrando el análisis— y se añade una primera versión de los siguientes:

  • 3.5 Preparación de los datos: limpieza, transformaciones y combinación de tablas, y presentación de los primeros resultados con gráficos estáticos (ggplot2). Ver sección Visualizaciones en la memoria.
  • 3.6 Modelado: modelado de series temporales con STL, ARIMA y STL+ARIMA.
  • 3.7 Evaluación: discusión de la calidad del ajuste de estos modelos en términos de las métricas de ajuste y los tests de validación de los residuos. Comentar si fue necesario usar STL+ARIMA o aplicar transformaciones a la serie para mejorar los resultados del ARIMA.

Siguen formando parte de la entrega 1.3 Objetivos, 3.3 Comprensión del negocio, 3.4 Comprensión de los datos y el Anexo II, en su versión revisada.

Entrega 3 — Entrega final

Es la versión final de la memoria: se completan y revisan todos los apartados, incluidos los de las entregas anteriores, para que el documento se lea de principio a fin con un hilo conductor común. Además de los apartados de las Entregas 1 y 2, completados con los contenidos del segundo parcial (análisis de atributos, visualización dinámica y cuadro de mandos), hay que rellenar:

  • 1. Introducción: 1.1 Estado actual, 1.2 Motivación y 1.3 Objetivos, con las preguntas de investigación definitivas, las que el análisis responde de verdad.
  • 2. Aportaciones del trabajo: 2.1 Principales aportaciones y 2.2 Alineamiento con los objetivos de desarrollo sostenible.
  • 3.1 Herramientas empleadas y 3.2 Metodología, adaptadas a tu proyecto.
  • 3.5 Preparación de los datos, revisada: todos los gráficos estáticos de la Entrega 2 se pasarán a dinámicos (plotly).
  • 3.6 Modelado: añadir al modelo el análisis de atributos: correlación, transformada Yeo-Johnson, PCA, k-means.
  • 3.7 Evaluación: añadir discusión calidad resultados obtenidos del análisis de atributos
  • 3.8 Despliegue: descripción del cuadro de mandos a nivel de diseño.
  • 4. Conclusiones y trabajo futuro, que debe incluir, en particular, las respuestas a cada una a las preguntas de investigación.
  • Bibliografía y Anexo I. Agentes de IA utilizados y organización del trabajo con la IA.

El cuadro de mandos interactivo debe estar desplegado en el servidor Shiny del DIS, y su enlace, activo y accesible desde la red del DIS o su VPN en el momento de la corrección.

La Google Sheet de seguimiento de actividades se revisa en las tres entregas. Debe estar activa desde el primer día: cada sesión de trabajo debe registrarse en el momento, y la memoria la lee automáticamente para generar el Anexo II. Sin ella el documento puede no compilar correctamente. De hecho, si estás leyendo este documento ya estás trabajando en el proyecto personal y deberías tener una sesión de trabajo abierta.

La nota final depende de todas las entregas, no solo de la última

La calificación final del proyecto personal se basa en el conjunto de las tres entregas y en la calidad con la que se vayan realizando, no únicamente en la entrega final. Si el profesor rechaza una entrega y pide un nuevo envío por errores graves, eso influye negativamente en la nota final aunque la versión corregida se entregue después. Por eso conviene revisar bien cada entrega antes de enviarla, no después de que se rechace.

Comprueba que la memoria compila solo con los ficheros que vas a subir

En cada entrega hay que subir todos los ficheros necesarios para que la memoria compile: el .Rmd y su .html, y además los .rds y _metadatos.xlsx de los datasets, sus _analisis.Rmd, utilidades.R, estilos.css y la imagen de portada, si es un fichero local. En tu carpeta de trabajo están siempre todos, así que la memoria compila aunque te olvides de subir alguno; en el ordenador del profesor, en cambio, no compilará, y un .Rmd que no compila equivale a no entregado.

Para detectarlo antes de enviar:

  1. Crea una carpeta temporal vacía, fuera de tu carpeta de trabajo.
  2. Copia en ella exactamente los ficheros que vas a subir a la entrega, y nada más.
  3. Abre el .Rmd de la memoria desde esa carpeta y compílalo (Ctrl+Shift+K).

Si compila, la entrega está completa: sube el contenido de esa carpeta (sube los archivos individualmente, no un zip). Si falla, el error indica qué falta. Por ejemplo, Error en gzfile(file, "rb"): no se puede abrir la conexión en el chunk de un dataset significa que falta su .rds, y Falta el fichero estilos.css (o utilidades.R) lo dice directamente. Añade el fichero a la carpeta temporal y vuelve a compilar.

Revisa además el .html que sale de esa carpeta: si las cajas de colores o las tablas anchas con barra de desplazamiento aparecen sin formato, es que falta estilos.css. Sin ese fichero la memoria se ve mal aunque llegue a compilar.

Verifica tu entrega con la IA antes de enviarla

Antes de enviar cualquier entrega, pide a un agente de IA que la revise contra la rúbrica. Dale acceso a tu .Rmd y a su .html ya compilado —así puede ver también el resultado final, no solo el código— y pídele que compruebe los criterios de esa entrega a partir de este documento. Por ejemplo, para la Entrega 1:

Utiliza los ficheros NombreApellido1Memoria.Rmd y su compilado NombreApellido1Memoria.html (para que mires el resultado de la compilación) y verifica si cumple todos los criterios de la primera entrega del proyecto personal usando los criterios que figuran en README_Proyecto_Personal.Rmd.

Adapta el número de entrega (1, 2 o 3) y repite la comprobación antes de cada envío. Esto no sustituye la revisión del profesor, pero ayuda a detectar a tiempo los errores graves que llevarían a un rechazo de la entrega.

Revisa tú el documento: se nota cuando no se ha hecho

No se evalúa si has usado la IA, sino si el documento es tuyo: si lo has leído, entendido y corregido. Al evaluar se tendrán en cuenta, como indicios de un documento no revisado:

  • Texto excesivamente largo, retórico o grandilocuente: cada frase debe decir algo concreto sobre tus datos.
  • Preguntas de investigación enrevesadas o que tus datos no pueden responder.
  • Afirmaciones no justificadas por un gráfico o una tabla de la memoria.
  • Texto que no coincide con los resultados (cifras distintas de las de las tablas o los gráficos, gráficos citados que no están) e interpretaciones genéricas que valdrían para cualquier dataset.
  • Técnicas de análisis que no se ven en el libro y código que no sigue su estilo (por ejemplo, %>% en vez de |>, o programar desde cero lo que ya resuelve utilidades.R).
  • Código imposible de entender a partir de los códigos y técnicas ilustrados en el libro.
  • Restos de la conversación con la IA («¡Claro! Aquí tienes…») y comentarios o títulos en inglés.
  • Bibliografía que no existe o no se ha consultado (referencias inventadas por la IA).
  • Código sobrante: librerías cargadas que no se usan, funciones definidas que no se llaman, chunks que no aportan nada a la memoria.
  • Comentarios de código excesivos u obvios, que explican lo que tú no habrías escrito.
  • Gráficos generados por la IA con errores graves sin revisar: los errores a evitar están en el recuadro Algunos errores a evitar en los gráficos, en el área Visualizaciones en la memoria de la rúbrica.

Estos aspectos afectan a la calificación del proyecto y, si el resultado es muy deficiente, la entrega puede calificarse como NO APTA.


3 Flujo de trabajo paso a paso

3.1 Paso 0 — Configura la Google Sheet de seguimiento ANTES de empezar

Hazlo antes que nada — solo se tarda 5 minutos

El tiempo dedicado al proyecto es un requisito evaluable. Debes registrar cada sesión de trabajo en el momento en que la realizas, no reconstruirla después. Las fechas son verificables y deben ser coherentes con las entregas.

Configuración (una sola vez):

  1. Descarga la plantilla de seguimiento.
  2. Ábrela en el navegador y haz una copia en tu Google Drive (Archivo → Hacer una copia).
  3. Comparte la hoja en modo lectura pública: Archivo → Compartir → Cualquier persona con el enlace puede ver → Copiar enlace.
  4. En ModeloMemoriaProyectoPersonalAEDV.Rmd, localiza el chunk seguimiento-lectura y sustituye la URL por la tuya:
SeguimientoActividadesProyecto <- read_sheet(
  'https://docs.google.com/spreadsheets/d/TU_ENLACE_AQUI/...'
)

Uso en cada sesión de trabajo — solo dos acciones:

Cómo funciona el registro automático

  • Al empezar: en una fila nueva selecciona la actividad en la que vas a trabajar. En ese momento la hoja registra automáticamente la hora de inicio y la fecha — no tienes que escribirlas tú.
  • Al terminar: escribe una nota breve de lo realizado. En ese momento la hoja calcula automáticamente los minutos transcurridos desde el inicio — tampoco tienes que escribirlos tú.

No necesitas introducir a mano ni la hora de inicio ni la duración. Cierra siempre la actividad que has abierto antes de empezar otra o de dejarlo por hoy: una fila sin la nota final se queda sin minutos calculados y aparece como actividad incompleta, lo que hace que la hoja deje de ser coherente.

La columna ACTIVITY debe coincidir exactamente con los valores del vector actividades definido en el chunk seguimiento-por-actividad de la memoria ("Introducción", "Comprensión del negocio", etc.).


3.2 Paso 1 — Elige tus datasets

Antes de escribir una sola línea de código, necesitas tener claro qué quieres averiguar y con qué datos vas a hacerlo.

Primero las preguntas, después los datos

Que un dataset cumpla los requisitos de AEDV es condición necesaria, pero no suficiente. Un proyecto que parte de «he encontrado un dataset que cumple los requisitos» sin saber qué quiere averiguar con él acaba siendo una sucesión de gráficas sin hallazgos ni conclusiones.

Parte de un tema que te interese y formula entre 3 y 5 preguntas de investigación: preguntas concretas, que se puedan responder con los datos y con las técnicas de la asignatura, y cuya respuesta no sea obvia de antemano. Suelen implicar una comparación, una relación o un cambio:

  • Débil: «Analizar la evolución del paro en España» — descriptivo; cualquier resultado vale y no hay nada que concluir.
  • Mejor: «¿Se ha recuperado el empleo en Canarias tras la crisis de 2008 al mismo ritmo que en el resto de comunidades? ¿Qué comunidades se parecen más a Canarias en su evolución?»

Explorar los catálogos puede ayudarte a descubrir temas y a inspirar preguntas, pero antes de dar por elegido un dataset tienes que poder decir a qué pregunta ayuda a responder. Ningún dataset debe quedar sin pregunta asociada: si tienes un dataset que no sirve para responder a ninguna de tus preguntas, o lo descartas o formulas una pregunta nueva que lo justifique. Las preguntas se escriben en el apartado Objetivos de la memoria (el modelo trae más ejemplos en sus comentarios), guían todo el análisis y se responden en las Conclusiones.

Las preguntas de la Entrega 1 son un punto de partida, no una versión definitiva. Igual que la metodología CRISP-DM, se trabajan por iteraciones: al explorar y modelar los datos aparecerán resultados que obligan a matizar una pregunta, a descartar otra que los datos no permiten responder o a plantear una nueva que no se veía al principio. Actualiza el apartado Objetivos en cada entrega para que las preguntas de la memoria final sean las que el análisis responde de verdad.

Abre y lee el documento SelecciónDatasetsProyecto/README_Selección_Tema.Rmd (o su versión compilada .html). Ese documento explica cómo explorar siete fuentes de datos públicas — INE, ISTAC, EUROSTAT, Banco Mundial, EDGAR GHG, CLIMA (AdapteCCa/AEMET) e INFORME PISA (resultados educativos con contexto de pobreza y desigualdad) — y cómo comprobar que los datasets elegidos cumplen los requisitos de AEDV.

Requisitos que deben cumplir tus datasets

  • Cobertura geográfica adecuada al nivel del dato:

    • Banco Mundial: al menos 100 países.
    • ISTAC (Canarias): al menos 80 municipios o 6 islas.
    • INE (España): al menos 500 municipios, 40 provincias, o 15 CCAA.
    • EUROSTAT (Europa): al menos 25 países (NUTS 0), 90 regiones NUTS 1, 200 NUTS 2 o 500 NUTS 3.
  • Datos actualizados: último dato de 2024 o posterior.

  • Tamaño de las series temporales: P25 ≥ 10 años (anuales), ≥ 20 semestres, ≥ 40 trimestres, ≥ 60 meses, ≥ 200 semanas o ≥ 1096 días (tres años), según la frecuencia del dato; esto garantiza que el 75 % de las regiones tiene series suficientemente largas.

  • España y/o Canarias bien representadas: no basta con que el dataset sea grande en conjunto — el proyecto tiene que poder analizar nuestro entorno. Se comprueba, además, que la serie de España o de Canarias alcance por su cuenta el umbral del criterio anterior:

    • INE: alguna región canaria (la comunidad Canarias, sus dos provincias o municipios con código 35xxx/38xxx).
    • EUROSTAT: España (ES) o alguna región de Canarias (ES7, ES70, o las islas ES703–ES709); basta una de las dos.
    • Banco Mundial: España (ESP), porque sus datos son por países y no bajan a nivel regional.
    • ISTAC: no se comprueba aparte, porque todos sus datos son ya de Canarias.
  • Mínimo de 4 atributos válidos (que cumplan los criterios anteriores de tamaño de series temporales y representación de España/Canarias). INE y EUROSTAT suelen tener más de 4 en un solo dataset; ISTAC y Banco Mundial tienen uno por dataset, así que necesitas varios.

Flujo concreto. Las cuatro fuentes con API —INE, ISTAC, EUROSTAT y Banco Mundial— se abordan exactamente igual, en cuatro etapas. Cambia el organismo y el nombre de los ficheros, no el procedimiento; lo que produce cada etapa es justo de lo que parte la siguiente:

  ETAPA 1   catálogo (inventario) de todos los datasets, que se guarda en la hoja excel <FUENTE>.datasets.xlsx (ya está hecho)
                     ▼
  ETAPA 2   buscas en ese Excel, con ayuda de una IA, los datasets de tu tema
                     ▼
  ETAPA 3   descarga y valida los que has elegido usando <FUENTE>_DatasetSelection.Rmd
                     ▼
  ETAPA 4   incorporas a tu memoria de proyecto personal los ficheros que ha guardado y su análisis

1. Inventario — el catálogo ya está hecho. Abre el catálogo Excel de la fuente que te interese: SelecciónDatasetsProyecto/INE/INE.datasets.xlsx, SelecciónDatasetsProyecto/ISTAC/ISTAC_datasets.xlsx, SelecciónDatasetsProyecto/EUROSTAT/Eurostat.datasets.xlsx o SelecciónDatasetsProyecto/WORLD_BANK/wb.datasets.xlsx. Cada catálogo lo generó el *_TableDatasetGeneration.Rmd de su carpeta recorriendo la API del organismo dataset a dataset; tú no tienes que ejecutarlo, solo leer el Excel. Es un índice —una fila por dataset con su ficha: identificador, nombre, frecuencia, cobertura geográfica, fechas—, no contiene los datos.

2. Búsqueda del tema. Busca dentro del catálogo los datasets de tu tema: súbele el .xlsx a una IA y pídele los identificadores relacionados, y que descarte los que no vayan a cumplir los requisitos de arriba (README_Selección_Tema detalla qué columna los anticipa en cada fuente). Lo que sale es una lista de candidatos, no una elección: quien dice si un dataset sirve es la etapa 3.

3. Descarga y validación. Copia los identificadores en el fichero *_DatasetSelection.Rmd de la fuente correspondiente: - INE: Dataset.Id <- 76136 - EUROSTAT: dataset.name <- "nama_10r_2hhinc" - ISTAC/WB: IDS <- c("ID1", "ID2", ...)

y haz Knit (Ctrl+Shift+K). El documento hace dos cosas, en este orden: primero (3a) descarga los datos y los guarda en disco —<nombre>.rds con los datos ya limpios y <nombre>_metadatos.xlsx con la ficha del dataset—; después (3b) los analiza leyendo esos dos ficheros, y termina en una tabla de validación (verde = cumple el criterio, rojo = no cumple) y un veredicto sobre el mínimo de 4 atributos. Además guarda ese análisis en un tercer fichero, <nombre>_analisis.Rmd, preparado para la memoria.

4. Incorporación a la memoria. Los ficheros que ha guardado la etapa 3 se copian a la carpeta de tu memoria, y el análisis se incluye en ella con una sola instrucción; se explica más abajo, en Cómo importar los datos en la memoria (Paso 3 de esta guía). Que la descarga vaya primero y el análisis después es justo lo que lo hace posible: el análisis arranca leyendo del disco, así que funciona tal cual en tu memoria sin volver a descargar nada.

EDGAR, CLIMA e INFORME PISA son datasets únicos ya construidos: no tienen etapas 1 y 2 (no hay catálogo en el que buscar), pero sus documentos conservan la misma estructura 3a/3b, así que la incorporación a la memoria se hace igual. Sus ficheros _analisis.Rmd ya vienen generados en su carpeta.

Antes de confirmar un dataset, verifica en el Campus Virtual que ningún otro alumno lo haya elegido ya. Si hay solapamiento, consulta con el profesor.

Uso de la IA: un uso adecuado de los agentes IA puede facilitar mucho la exploración de los datasets y la búsqueda del tema del proyecto personal. La estrategia que sigas para seleccionar los datasets —catálogos explorados, peticiones a la IA, candidatos validados y descartados, y a qué pregunta de investigación responde cada dataset elegido— se describe en la sección Comprensión del negocio de la memoria. En todo el proyecto, la IA se usa con dos límites: entender lo que se hace y usar solo las librerías que aparecen en el libro de la asignatura, con un código comprensible teniendo en cuenta el contenido y el enfoque de la asignatura. Pide a la IA que dé prioridad al uso de las funciones de utilidades.R en vez de programar desde cero algo que esas funciones ya resuelven.


3.3 Paso 2 — Configura tu memoria

Abre ModeloMemoriaProyectoPersonalAEDV.Rmd en RStudio y personaliza la cabecera:

title: "Mi título de Proyecto Personal"   # ← tu título
author: "Mi nombre y apellidos"           # ← tu nombre

Activa “Knit on Save” (checkbox en la barra de herramientas) para ver los cambios en el HTML cada vez que guardes con Ctrl+S.

Atajos de teclado esenciales en RStudio

Atajo Acción
Ctrl+Shift+K Compilar (Knit) el documento completo
Ctrl+Alt+C Ejecutar el chunk donde está el cursor
Ctrl+Enter Ejecutar la línea / código seleccionado
Ctrl+Alt+I Insertar un nuevo chunk de código R
Ctrl+Shift+1 El editor ocupa / deja de ocupar toda la ventana

3.4 Paso 3 — Desarrolla el proyecto siguiendo la metodología CRISP-DM

La memoria sigue la metodología de desarrollo CRISP-DM (Cross Industry Standard Process for Data Mining). Cada sección tiene instrucciones detalladas en comentarios HTML (<!-- ... -->) que no aparecen en el documento compilado pero te guían sobre qué escribir. La memoria se organiza a través de las siguientes secciones:

  • Introducción — Estado actual · Motivación · Objetivos (con las preguntas de investigación)
  • Aportaciones del trabajo — Principales aportaciones · Alineamiento con ODS
  • Desarrollo
    • Herramientas empleadas
    • Metodología (descripción general de CRISP-DM)
    • Comprensión del negocio — estrategia de selección de datasets (incluido el uso de la IA) y fuentes consultadas
    • Comprensión de los datos — estructura, variables, problemas
    • Preparación de los datos — limpieza, transformaciones, joins
    • Modelado — modelos aplicados y resultados
    • Evaluación — métricas, validación, limitaciones
    • Despliegue — memoria + descripción del dashboard
  • Conclusiones y trabajo futuro
  • Bibliografía
  • Anexo I. Agentes de IA utilizados
  • Anexo II. Seguimiento temporal (Google Sheet)

Nota importante: los resultados NO van en una sección aparte; se presentan de forma distribuida en las fases de preparación de los datos, modelado, evaluación y despliegue. Esto es coherente con CRISP-DM.

3.4.1 Cómo importar los datos en la memoria

Esta es la etapa 4 (incorporación) del flujo de selección de datos del Paso 1. Al compilarse, cada *_DatasetSelection.Rmd guarda, junto a los datos, un fichero <nombre>_analisis.Rmd con su sección Análisis del dataset (la etapa 3b) preparada para la memoria, y termina con una sección, Incorporación del dataset a la memoria, que indica exactamente qué ficheros copiar y qué chunk pegar. Los pasos son dos:

  1. Copia a la carpeta donde está ModeloMemoriaProyectoPersonalAEDV.Rmd los ficheros del dataset: el .rds (o los .rds), el _metadatos.xlsx y el _analisis.Rmd. En esa carpeta tiene que estar también utilidades.R (viene en la carpeta ProyectoPersonal, junto al modelo de memoria), que la memoria carga en su chunk de librerías con source("utilidades.R").
  2. Pega en la sección Comprensión de los datos de la memoria el chunk que indica el *_DatasetSelection.Rmd, cambiando el nombre de la tabla por uno que describa el dataset. Por ejemplo:
```{r, results='asis', cache=FALSE}
ipc <- aedv_incluir_dataset("76136_analisis.Rmd")
```

Al compilar la memoria, el análisis completo aparece en el lugar del chunk —con sus tablas, su validación y los títulos colgando de Comprensión de los datos— y los datos quedan en la tabla que elijas (aquí ipc, un tibble), con la que se sigue trabajando en el resto de la memoria. El análisis arranca leyendo del disco los ficheros que acabas de copiar, así que funciona sin descargar nada de internet. El chunk necesita las opciones results='asis' (sin ella, el análisis saldría como texto sin formato) y cache=FALSE. Al ejecutarlo en RStudio chunk a chunk (Ctrl+Alt+C), la función solo carga los datos, sin generar el análisis, para que puedas seguir trabajando con ellos.

  • Varios datasets: pega un chunk por cada uno, con nombres de tabla distintos. Cada análisis se ejecuta por separado, sin interferir con los demás ni con el resto de la memoria.
  • Datasets auxiliares: aedv_incluir_dataset("...", validacion = FALSE) omite la validación de requisitos AEDV, para no alargar la memoria con un dataset que no tiene que cumplirlos.
  • Datasets con varias tablas (EDGAR, CLIMA e INFORME PISA): aedv_incluir_dataset() las devuelve juntas en una lista, y el chunk que propone su documento las separa justo después, cada una con su propio nombre. Por ejemplo, para CLIMA Canarias:
```{r, results='asis', cache=FALSE}
clima <- aedv_incluir_dataset("CLIMA_CANARIAS_analisis.Rmd")
clima_obs  <- clima$data   # observaciones mensuales por municipio, 1990-2022
clima_proy <- clima$proy   # proyecciones por escenario, modelo y horizonte
```
Dataset Tablas de la lista Contenido
EDGAR data, data_norm emisiones por país, sector y gas; emisiones per cápita y por unidad de PIB
CLIMA (Canarias y España) data, proy observaciones mensuales; proyecciones por escenario, modelo y horizonte
INFORME PISA pisa_paises, pisa_ccaa, contexto_paises, contexto_ccaa resultados PISA y contexto socioeconómico, por país y por Comunidad Autónoma
  • El fichero _analisis.Rmd no se edita: se vuelve a generar cada vez que se compila el *_DatasetSelection.Rmd. Tu texto va en la memoria, antes o después del chunk.

La parte de descarga (etapa 3a) no va en la memoria.

Lo que falta por hacer tras pegar el chunk

Pegar el chunk no es incorporar el dataset: solo es el primer paso. Antes de dar por completado el apartado Comprensión de los datos, es muy importante tener en cuenta lo siguiente:

  • La información automática que se genera hay que perfeccionarla añadiendo texto explicativo. El código produce tablas y un veredicto, no redacción: hay que comentar lo que muestran.
  • Debe quedar claro que la colección de datos utilizada cumple con los requisitos de AEDV, no solo que el código lo calcule.
  • Es especialmente importante e indispensable que todos los conceptos que aparecen en los datasets utilizados estén perfectamente explicados: contenido del dataset, qué se mide, significado de las variables categóricas y significado de todas las opciones de las variables categóricas, especialmente cuando son conceptos técnicos.

Con frecuencia, para explicar el significado de las variables hace falta recurrir a la IA, dado que no viene en los metadatos: muchos datasets usan terminología técnica del organismo que los publica (códigos de clasificación, nombres de indicadores, categorías administrativas) que la ficha de metadatos no aclara, y preguntarle a una IA qué significa cada concepto o cada opción suele ser más rápido y más completo que buscarlo a mano.

3.5 Paso 4 — Construye y despliega el cuadro de mandos

Recuerda: registra en la Google Sheet el tiempo que dedicas a cada sesión de desarrollo del dashboard.

El dashboard es el elemento más importante de la fase de Despliegue. Se construye y se prueba primero en tu ordenador, y cuando funciona se despliega en el servidor Shiny del DIS. Todo el proceso está explicado paso a paso, con WinSCP (o Cyberduck/FileZilla en macOS) o con scp y ssh desde la consola, en DashboardInstruccionesServidorShiny.html. En resumen:

  1. Construye el cuadro de mandos en local, en un fichero NombreApellido1Dashboard.Rmd (por ejemplo, LuisAlvarezDashboard.Rmd) que lea los ficheros de datos de su misma carpeta, sin rutas.
  2. Conéctate a la red del DIS. Desde fuera de su red interna, con la VPN del DIS (https://www.dis.ulpgc.es/vpn/). El fichero .ovpn de la VPN y el usuario y la contraseña de tu cuenta en el servidor Shiny están en MiDIS (https://www.dis.ulpgc.es/midis/), al que se entra con las claves del Campus Virtual.
  3. Sube el .Rmd y sus ficheros de datos a la carpeta de tu cuenta en el servidor (10.22.143.222), con WinSCP o Cyberduck/FileZilla (en macOS), o con scp desde la consola.
  4. Ábrelo en el navegador: http://10.22.143.222:3838/sample-apps/aXXXX/NombreApellido1Dashboard.Rmd, sustituyendo aXXXX por tu cuenta del servidor.
  5. Pega esa URL en el enlace al inicio de tu memoria (ModeloMemoriaProyectoPersonalAEDV.Rmd, línea [Cuadro de mandos](...)).

Si funciona en tu ordenador pero no en el servidor, recuerda que el servidor es Linux y distingue mayúsculas de minúsculas en los nombres de fichero, que a veces hay que indicar la librería de una función (libreria::funcion) y que los errores se consultan en los ficheros de log del servidor (Paso 4 de las instrucciones del servidor).


4 Errores frecuentes a evitar

Errores comunes en el proyecto

  • Elegir un dataset solo porque cumple los requisitos → sin preguntas de investigación interesantes que lo justifiquen, el proyecto se queda en describir gráficas y no llega a ninguna conclusión.
  • Elegir un dataset sin validarlo con los 5 criterios → datasets demasiado cortos, sin cobertura suficiente o sin datos de España/Canarias llevan a análisis pobres.
  • Dashboard sin desplegar el día de la entrega → es un requisito obligatorio; despliégalo con tiempo suficiente.
  • Google Sheet sin actualizar → las sesiones de trabajo deben registrarse en tiempo real, no reconstruirse al final.
  • Google Sheet con huecos → la hoja debe estar operativa y dar resultados coherentes: ninguna actividad puede quedar sin fecha de inicio, sin fecha de fin o sin minutos calculados, y no debe haber valores NA. Una actividad empezada hay que terminarla (con su nota final) antes de pasar a la siguiente.
  • Usar la IA sin referenciar → Utilizar la IA no es negativo en la evaluación del proyecto, de hecho, usarla bien se considera positivo en la evaluación. Hay que explicar cómo se ha usado, incluyendo los agentes de IA usados y las principales interacciones para abordar los diferentes aspectos planteados en el desarrollo del proyecto.
  • Usar la IA sin respetar sus límites → El uso de la IA tiene dos límites: entender todo lo que se entrega (debes poder explicar cada línea de código y cada resultado) y usar solo las librerías que aparecen en el libro de la asignatura, con un código comprensible teniendo en cuenta el contenido y el enfoque de la asignatura. Si la IA propone un paquete que no está en el libro o un código que se aleja de lo visto en la asignatura, pídele que resuelva el problema como se hace en el libro. Cuando exista una función de utilidades.R para lo que necesitas, pídele que la use en vez de programar algo equivalente desde cero.

Haciendo las entregas mal no se puede superar la asignatura

Para superar la asignatura en un curso académico, todas las entregas deben realizarse durante el periodo lectivo, siguiendo el calendario previsto y con un mínimo de calidad. En caso contrario el alumno deberá repetir la asignatura el curso siguiente. No se permitirá la entrega de proyectos en las convocatorias ordinaria, extraordinaria o especial cuyas entregas parciales no hayan sido supervisadas y validadas por el profesor durante el periodo lectivo.


5 Rúbrica de evaluación (RubricaEvaluaciónProyectoPersonal.xlsx)

La evaluación del proyecto personal se estructura en torno a 29 criterios agrupados en siete áreas. Cada criterio se valora como No Satisfactorio, Satisfactorio o Sobresaliente. La columna E1/E2/E3 indica en qué entregas se tiene en cuenta cada criterio.

# Criterio E1 E2 E3
Alcance y calidad global
1 Alcance y calidad del trabajo realizado ✓ ✓ ✓
2 Preguntas de investigación interesantes que justifican y cubren todos los datasets, y evolucionan con el análisis ✓ ✓ ✓
3 Documento revisado por el alumno: sin texto, código ni gráficas de la IA sin revisar ✓ ✓ ✓
Entrega y formato técnico
4 Entrega memoria html + Rmd compilable, datos en RDS ✓ ✓ ✓
5 Enlace al Dashboard en el servidor Shiny del DIS + entrega de su .Rmd ✓
6 Nombre de archivos correcto (NombreApellido1Memoria, NombreApellido1Dashboard), ficheros sueltos sin comprimir ✓ ✓ ✓
Texto y estructura de la memoria
7 Texto atractivo, bien formateado, sin rastros de R ✓ ✓ ✓
8 Texto coherente con hilo conductor común ✓ ✓ ✓
9 Todas las secciones completadas siguiendo CRISP-DM ✓
10 Cada cosa en la sección que le corresponde ✓ ✓ ✓
11 Aportaciones y conclusiones coherentes con el trabajo ✓
Comprensión y preparación de los datos
12 Información, origen y fiabilidad de los datasets ✓ ✓ ✓
13 Descripción detallada del procesado inicial de datos ✓ ✓
14 Conceptos manejados claros desde el principio ✓ ✓ ✓
15 Elección correcta de atributos para PCA ✓
Visualizaciones en la memoria
16 Primeras gráficas ilustran los conceptos de forma general ✓ ✓
17 Gráficas de calidad profesional, sin solapamientos y autocontenidas ✓ ✓
18 Todas las gráficas dinámicas con identificación ✓
19 No repetir la misma gráfica con datos distintos ✓ ✓
20 Tipos requeridos: disco, barra, HeatMap, caja ✓ ✓
Dashboard
21 Dashboard bien diseñado, cubre todas las variables e incluye los cinco cuadros de mandos de referencia ✓
22 Dashboard: series temporales con facet_wrap ✓
23 Dashboard: predicción con ARIMA o STL + ARIMA ✓
24 Dashboard: mapas coropléticos ✓
25 Dashboard: comparación de dos atributos con Yeo-Johnson ✓
26 Dashboard: matriz de correlación, PCA y k-means ✓
27 Dashboard: variables fijadas dinámicamente con Inputs ✓
Seguimiento y dedicación
28 Uso de Google Sheet para control de dedicación ✓ ✓ ✓
29 Coherencia entre horas dedicadas y trabajo realizado ✓ ✓ ✓

5.1 Alcance y calidad global

Criterio determinante

Alcance y calidad del trabajo realizado — Es el criterio con más peso en la evaluación. No se trata solo de cumplir los requisitos técnicos, sino de demostrar capacidad de análisis, pensamiento crítico y dominio del tema. Un proyecto técnicamente correcto pero superficial no alcanza la calificación máxima. Se valora además un uso inteligente de la IA, entendiendo y corrigiendo las aportaciones de la IA.

  • Preguntas de investigación. El proyecto plantea preguntas de investigación interesantes, concretas y que se pueden responder con los datos, y la elección de los datasets se justifica a partir de ellas (la estrategia de selección y el uso de la IA se describen en Comprensión del negocio). Todos los datasets de la memoria deben estar cubiertos por al menos una pregunta: un dataset que no responde a ninguna pregunta de investigación es un dataset sin justificar. Las preguntas iniciales de la Entrega 1 se van refinando por iteraciones a partir del análisis de los datos, y las de la memoria final se responden una a una en las Conclusiones. Un proyecto cuyo único argumento es que el dataset cumple los requisitos de AEDV no supera este criterio.

  • Documento revisado por el alumno. El texto, el código y las gráficas deben mostrar que has leído, entendido y corregido todo lo que entregas, también lo que hayas generado con ayuda de la IA. Los indicios de un documento no revisado que se tienen en cuenta están en el recuadro Revisa tú el documento: se nota cuando no se ha hecho, en Qué tienes que entregar. Este criterio afecta a la calificación del proyecto y, si el resultado es muy deficiente, la entrega puede calificarse como NO APTA.

Un proyecto de calidad sobresaliente integra los datos con una narrativa coherente, extrae conclusiones no triviales, aplica correctamente la metodología CRISP-DM y presenta los resultados de forma clara y profesional tanto en la memoria como en el dashboard.


5.2 Entrega y formato técnico

Estos criterios son de carácter binario: o se cumplen o no se cumplen. Un fallo en cualquiera de ellos puede impedir la corrección del trabajo.

  • Entrega memoria en HTML y código en Rmd compilable, con datos en RDS. Se entrega el .html compilado más el .Rmd con los datos en formato .rds y metadatos (si hay) en formato .xlsx, junto con los ficheros _analisis.Rmd de los datasets y utilidades.R, sin los que la memoria no compila. El código debe funcionar en cualquier ordenador sin modificaciones: rutas relativas, sin dependencias externas y solo las librerías que aparecen en el libro de la asignatura. Si la imagen de portada es un fichero local, también hay que entregarla junto al .Rmd. Esto se verifica desde la Entrega 1; un .Rmd que no compila equivale a no entregado. Para comprobarlo antes de enviar, compila la memoria desde una carpeta temporal que contenga solo los ficheros que vas a subir (recuadro Comprueba que la memoria compila solo con los ficheros que vas a subir, en Qué tienes que entregar).

  • Enlace al Dashboard en el servidor Shiny del DIS (solo Entrega 3). El enlace debe aparecer al inicio de la memoria y estar operativo en el momento de la corrección. Un dashboard caído o inaccesible sin VPN equivale a no entregado. Además del despliegue, hay que entregar también el .Rmd del dashboard (el mismo fichero que subes al servidor Shiny), junto con el resto de ficheros.

  • Nombre de archivos correcto. El .Rmd y el .html de la memoria, y también el .Rmd del dashboard, deben empezar por NombreApellido1. Por ejemplo: LuisAlvarezMemoria.Rmd, LuisAlvarezMemoria.html y LuisAlvarezDashboard.Rmd. Esto facilita la gestión de entregas. Sube los ficheros sueltos al Campus Virtual, nunca comprimidos en un .zip o .rar: el profesor necesita poder abrir cada fichero directamente para corregirlo.


5.3 Texto y estructura de la memoria

La memoria no es un cuaderno de laboratorio: es un documento académico que debe leerse con fluidez de principio a fin.

  • Texto atractivo, bien formateado, sin rastros de R. El documento HTML no debe mostrar código R, mensajes de carga de librerías, advertencias ni salidas de consola. El modelo de memoria ya trae echo=FALSE por defecto en las opciones globales (knitr::opts_chunk$set(...)): no lo cambies a echo=TRUE salvo en algún chunk puntual que quieras mostrar a propósito. El parámetro message=FALSE, warning=FALSE debe estar activo en los chunks que los generen. No se debe incluir toc: true en el cuerpo del texto — eso ya está configurado en la cabecera YAML. El uso de negritas, secciones bien delimitadas y párrafos cortos mejora la legibilidad. Usar bloques coloreados para enfatizar aspectos relevantes también ayuda mucho a la lectura.

  • Texto coherente con hilo conductor común. Cada sección debe conectar con la anterior. La introducción plantea preguntas que el análisis responde; las conclusiones cierran esas preguntas. Evita secciones que parezcan escritas de forma independiente y pegadas sin relación entre sí.

  • Todas las secciones completadas correctamente siguiendo la metodología CRISP-DM (solo Entrega 3). El modelo de memoria tiene secciones fijas que deben aparecer todas y estar desarrolladas, y cada una debe contener lo que le corresponde según la fase CRISP-DM que representa. Una sección con solo el título o con el texto de ejemplo sin sustituir se considera no completada.

  • Cada cosa en su sección. Los resultados no van en una sección propia: se presentan dentro de Preparación de los datos, Modelado, Evaluación y Despliegue, según el momento CRISP-DM al que correspondan. Las tablas de estructura de datos van en Comprensión de los datos, no en Preparación.

  • Aportaciones y conclusiones coherentes con el trabajo. Las conclusiones deben derivarse directamente del análisis realizado, no ser genéricas. Las aportaciones deben ser específicas al dominio estudiado y al dataset elegido.


5.4 Comprensión y preparación de los datos

Lo que se valora en esta área

El evaluador comprueba que el alumno entiende los datos que está usando, no solo que los ha cargado correctamente.

  • Información, origen y fiabilidad de los datasets. La sección “Comprensión de los datos” debe incluir: fuente y descripción del dataset, quién lo publica y con qué garantías de fiabilidad, cobertura geográfica y temporal, número de observaciones y variables, tipos de datos, y una exploración inicial (distribuciones, valores ausentes, outliers). No basta con decir “el dataset tiene X filas y Y columnas”.

  • Descripción detallada del procesado inicial de datos. Cada transformación aplicada — filtros, joins, cambios de formato, imputación de nulos, normalización — debe estar explicada y justificada. El lector debe poder reproducir el proceso de preparación leyendo este apartado.

  • Conceptos claros desde el principio. Si el proyecto trabaja con conceptos especializados (tasas de natalidad, índice de Gini, emisiones per cápita…), estos deben definirse la primera vez que aparecen. No se puede asumir que el lector los conoce.

  • Elección correcta de atributos para el PCA (solo Entrega 3). Para el análisis de componentes principales deben seleccionarse al menos cuatro atributos de interés e independientes por área geográfica. Las demás variables libres deben fijarse o filtrarse correctamente, de modo que el PCA se calcule sobre un conjunto bien definido y comparable entre áreas.


5.5 Visualizaciones en la memoria

Las gráficas son el elemento más visible de la memoria. Una mala gráfica comunica más descuido que páginas de texto.

  • Las primeras gráficas ilustran los conceptos de forma general y clara. No se debe empezar el análisis con gráficas muy detalladas o de subconjuntos específicos. Las primeras visualizaciones deben dar una visión global del fenómeno estudiado antes de entrar en detalles. Una buena idea suele ser empezar presentado la evolución de algunas series temporales usando facet_wrap

  • Calidad profesional: sin textos solapados ni códigos visibles, y autocontenidas. Los ejes deben tener etiquetas legibles, sin textos solapados ni cortados, las leyendas no deben solaparse con los datos y los títulos deben ser informativos. El tamaño de fuente debe ser legible: usa theme_minimal() o similar y ajústalo si hay muchas categorías. Además, cada gráfica debe ser autocontenida: entenderse sin ambigüedad con la sola información que aparece en ella; si hace falta, añade un fig.cap en el chunk para explicarla mejor.

    Sobre las etiquetas identificativas en los gráficos: Para que un gráfico se entienda no puede usar códigos como etiquetas identificativas, es decir si, por ejemplo aparecen CCAA, no se pueden identificar en el gráfico por su código (por ejemplo “ES70” en lugar de “Canarias”). Además si las etiquetas son largas hay que cambiarlas por cortas que quepan en el gráfico, esto pasa con frecuencia por ejemplo, en sectores económicos o enfermedades que pueden tener nombres muy largos. También hay que acortar nombres de regiones cuando son innecesariamente largos para identificarlos. Por ejemplo “Comunidad Foral de Navarra” se puede sustituir por “Navarra”

    Algunos errores a evitar en los gráficos

    • Demasiada información para el tipo de gráfico.
    • Ausencia de títulos/subtítulos (los gráficos deben ser autocontenidos).
    • Texto en los gráficos muy pequeño.
    • Texto en los gráficos que se solapa o se sale de la zona visible.
    • Colores mal elegidos o poco representativos.
    • Leyendas innecesarias que repiten una clasificación que ya se ve en el gráfico.
    • Relación ancho/alto del gráfico inadecuada (fig.asp).
    • Etiquetas identificativas inadecuadas: se usan códigos o nombres demasiado largos.

    Requisito para que el proyecto sea APTO

    Todos los gráficos del proyecto deben cumplir estos requisitos de calidad. Basta con que algunos no los cumplan para que el proyecto no se considere apto.
  • Todas las gráficas dinámicas. Todas las visualizaciones de la memoria deben ser interactivas (Plotly o similar). Una gráfica estática de ggplot sin convertir con ggplotly() o renderPlotly() no cumple este criterio. El título, subtítulo o fig.cap deben identificar claramente qué muestra la gráfica.

  • No repetir la misma gráfica cambiando los datos. Si una gráfica de serie temporal funciona bien para un atributo, no la repitas para otros cinco atributos consecutivos con el mismo código. Usa facet_wrap o presenta un selector interactivo en el dashboard.

  • Gráficas de disco, barra, HeatMap y diagramas de caja en la memoria. La memoria debe incluir al menos estos cuatro tipos de gráficas. Cada tipo tiene un propósito: los diagramas de caja para distribuciones y comparación entre grupos, los HeatMaps para correlaciones o evolución temporal cruzada, los de disco para proporciones, y los de barra para comparaciones categóricas.

  • Tablas grandes: recortadas y con scroll. Una tabla con muchas filas o columnas mostrada entera ocupa demasiado espacio en la memoria sin aportar nada. Si su tamaño es excesivo, recórtala antes de mostrarla: quédate con las columnas relevantes (select()) y con las primeras filas (slice(1:10)) o las que interesen (filter()). Después, envuelve el chunk en <div class="tabla-scroll-xy"> (estilo definido en estilos.css): la tabla se muestra con la cabecera fija y unas pocas filas a la vista, y el resto se recorre con barras de desplazamiento horizontal y vertical. Deja una línea en blanco antes y después del chunk, y termina la tabla con knitr::kable(): sin él, la tabla sale como texto de consola y el recuadro no tiene nada que desplazar. Por ejemplo:

    <div class="tabla-scroll-xy">
    
    ```{r}
    datos |> select(region, fecha, valor) |> slice(1:10) |> knitr::kable()
    ```
    
    </div>

5.6 Dashboard

El dashboard es el entregable técnico más exigente. Debe estar desplegado y accesible el día de la entrega.

Los cuadros de mandos de referencia son obligatorios

Tu dashboard debe incluir obligatoriamente, como páginas, los cinco cuadros de mandos de referencia de la asignatura, adaptados a tus datos. Puedes descargarlos desde estos enlaces:

Como ejemplo mínimo de un dashboard que reúne las cinco páginas aplicadas a un mismo dataset tienes Dashboard_eurostat_gasto_publico.Rmd, con el gasto público por sectores de Eurostat. Cada página elige cada atributo (país, sector, medida, año) con su propio desplegable y ofrece todas las opciones de los datos. Es un punto de partida: tu dashboard tiene que cubrir todas las variables de tu dataset, con el mismo criterio.

La carga del dashboard puede ser lenta: cómo acelerarla

Un dashboard con varias páginas puede tardar en abrirse, porque al arrancar se ejecuta todo el documento: se cargan las librerías, se leen los datos y se calculan todas las páginas. Algunas estrategias sencillas para acelerarlo (el ejemplo mínimo de arriba aplica casi todas):

  1. Guarda los datos ya preprocesados en un .rds. Si antes de usar los datos los filtras, cambias de formato o unes tablas, haz ese preprocesado una sola vez fuera del dashboard, guarda el resultado con saveRDS() y, en el dashboard, carga directamente esa tabla procesada con readRDS().
  2. No calcules todas las páginas de golpe. Pon en cada página un botón para calcular, rellenar o actualizar sus resultados (actionButton() con eventReactive()): así, al abrir el dashboard no se calcula nada, y cada página solo hace sus cuentas cuando el usuario lo pide.
  3. Carga lo común una sola vez, en el chunk global. En un flexdashboard con Shiny, el chunk llamado global (```{r global, include=FALSE}) se ejecuta una sola vez y lo comparten todos los usuarios. Pon ahí las librerías, utilidades.R y la lectura de los datos, y lee los datos una sola vez aunque los usen varias páginas.
  4. Quédate solo con lo que necesitas. Antes de guardar el .rds, quita las columnas y filas que el dashboard no usa. Con los mapas, recorta la geometría a las áreas de tus datos: es lo que se envía al navegador cada vez que se dibuja el mapa.
  5. No cargues librerías que no uses, y prefiere los ficheros locales (subidos al servidor junto al dashboard) a las descargas desde una URL, que son más lentas y, fuera del chunk global, se repiten cada vez que alguien abre el dashboard.
  • Bien diseñado e ilustra los datos en su máxima generalidad. El dashboard no es un subconjunto de la memoria: debe permitir explorar todas las variables originales del dataset, no solo las que se analizaron en la memoria. El diseño visual debe ser limpio, con paneles bien organizados y controles intuitivos. Además, debe incluir, como mínimo, las páginas de los cinco cuadros de mandos de referencia adaptados a tus datos (recuadro de arriba).

  • Variables fijadas dinámicamente con Inputs. Todas las variables del dashboard deben controlarse mediante Inputs interactivos (selectores, sliders, etc.). No se deben fijar valores a mano en el código: el usuario ha de poder cambiar la variable, el año o la región desde la interfaz.


5.7 Seguimiento y dedicación

Estos criterios se verifican, no se declaran

Las fechas de la Google Sheet son verificables. Un registro reconstruido al final, con todas las sesiones en los últimos días antes de la entrega, no es creíble y se valora como No Satisfactorio.

  • Uso de Google Sheet para el control de dedicación. La hoja debe estar activa desde el principio del proyecto, con entradas regulares que reflejen el progreso real, y debe estar operativa y dar resultados coherentes: sin valores NA y sin actividades incompletas (sin fecha de inicio, sin fecha de fin o sin minutos calculados). La memoria la lee automáticamente para generar el Anexo II — si la hoja no está bien configurada o tiene actividades a medio registrar, el documento puede no compilar o el Anexo II puede salir con huecos.

  • Coherencia entre horas registradas y trabajo realizado. Un proyecto muy elaborado con pocas horas registradas, o muchas horas con un resultado pobre, genera inconsistencias que el evaluador detecta. El registro de actividades debe ser acorde al nivel de desarrollo de cada fase CRISP-DM.