egutierrez
b1d205203a
feat(eda): poblar head_rows real en el capitulo OVERVIEW (df.head)
...
El capitulo OVERVIEW del motor AutomaticEDA mostraba "df.head no disponible"
porque ninguna fase de calculo poblaba las primeras filas crudas de la tabla.
- build_eda_render_ctx: nuevo bloque que muestrea SELECT * LIMIT head_n
(param nuevo head_n=10) y lo expone en ctx["head_rows"] como lista de
dicts fila. Estilo dict-no-throw: si la query falla, se omite la clave.
- profile_table: puebla prof["head_rows"] reusando _sample_rows (SELECT de
las columnas LIMIT 10) tras recalcular el type_breakdown. Asi el report
JSON sidecar tambien lo lleva y el capitulo lo recoge via profile aunque
no se construya el ctx.
- overview.py: la nota del DataTable de df.head ahora indica el total de
filas del dataset cuando se conoce ("primeras 10 filas de 891"). Bump
CHAPTER_VERSION 1.0.0 -> 1.1.0.
- overview_test.py (nuevo): golden (head via profile y via ctx, render PDF
+ PPTX muestran las filas reales, placeholder ausente), edge (sin
head_rows degrada a nota honesta sin romper, None/vacio devuelven None).
Verificado end-to-end con titanic: render_automatic_eda emite PDF + PPTX con
df.head visible (Braund/Cumings/Heikkinen + columnas) y sin el placeholder.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 17:56:24 +02:00
..
2026-05-05 23:34:03 +02:00
2026-03-29 00:54:24 +01:00
2026-06-20 18:22:23 +02:00
2026-06-20 18:22:23 +02:00
2026-06-20 18:22:23 +02:00
2026-06-20 18:22:23 +02:00
2026-06-21 14:22:55 +02:00
2026-06-21 14:22:55 +02:00
2026-05-17 00:07:03 +02:00
2026-05-17 00:07:03 +02:00
2026-05-16 16:33:22 +02:00
2026-05-16 16:33:22 +02:00
2026-05-16 16:33:22 +02:00
2026-05-16 16:33:22 +02:00
2026-06-06 12:49:54 +02:00
2026-06-06 12:49:54 +02:00
2026-06-26 19:43:47 +02:00
2026-06-27 02:40:50 +02:00
2026-06-26 19:43:47 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 12:50:30 +02:00
2026-06-28 15:01:37 +02:00
2026-06-28 15:01:37 +02:00
2026-06-27 18:24:52 +02:00
2026-06-24 15:09:33 +02:00
2026-06-24 15:35:12 +02:00
2026-06-24 15:35:12 +02:00
2026-06-24 00:30:30 +02:00
2026-06-27 18:24:52 +02:00
2026-06-24 02:34:10 +02:00
2026-06-24 02:34:10 +02:00
2026-06-28 15:59:26 +02:00
2026-06-28 15:59:26 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 16:33:03 +02:00
2026-06-24 12:53:40 +02:00
2026-06-24 12:53:40 +02:00
2026-06-24 12:53:40 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-27 18:24:52 +02:00
2026-06-28 18:14:46 +02:00
2026-06-28 18:14:46 +02:00
2026-05-14 00:28:20 +02:00
2026-05-04 23:35:22 +02:00
2026-05-14 00:28:20 +02:00
2026-05-04 23:35:22 +02:00
2026-05-16 16:33:22 +02:00
2026-05-16 16:33:22 +02:00
2026-05-17 00:07:03 +02:00
2026-06-01 22:23:12 +02:00
2026-05-17 00:07:03 +02:00
2026-06-17 00:04:41 +02:00
2026-06-17 00:04:41 +02:00
2026-06-17 00:04:41 +02:00
2026-05-14 00:28:20 +02:00
2026-05-04 23:35:22 +02:00
2026-04-30 16:52:46 +02:00
2026-04-30 16:52:46 +02:00
2026-05-30 17:28:47 +02:00
2026-05-30 17:28:47 +02:00
2026-04-05 17:11:32 +02:00
2026-05-14 00:28:20 +02:00
2026-04-05 17:11:32 +02:00
2026-06-14 15:31:28 +02:00
2026-06-14 15:31:28 +02:00
2026-06-14 15:31:28 +02:00
2026-05-14 00:28:20 +02:00
2026-05-04 23:35:22 +02:00
2026-06-12 00:43:59 +02:00
2026-06-12 00:43:59 +02:00
2026-06-12 00:43:59 +02:00
2026-06-12 00:43:59 +02:00
2026-06-20 18:22:23 +02:00
2026-06-20 18:22:23 +02:00
2026-06-20 18:22:23 +02:00
2026-06-21 14:22:55 +02:00
2026-06-21 14:22:55 +02:00
2026-06-14 23:55:16 +02:00
2026-06-20 18:22:23 +02:00
2026-06-01 22:23:12 +02:00
2026-03-29 00:54:24 +01:00
2026-06-01 11:39:08 +02:00
2026-06-01 11:39:08 +02:00
2026-04-05 18:45:16 +02:00
2026-03-29 00:54:24 +01:00
2026-04-05 18:45:16 +02:00
2026-03-29 00:54:24 +01:00
2026-06-01 22:23:12 +02:00
2026-05-17 02:44:04 +02:00
2026-06-22 20:11:26 +02:00
2026-06-22 20:11:26 +02:00
2026-06-22 20:11:26 +02:00
2026-06-22 20:11:26 +02:00
2026-04-05 18:45:16 +02:00
2026-04-05 17:11:32 +02:00
2026-06-29 04:05:38 +02:00
2026-06-20 18:22:23 +02:00
2026-06-29 04:05:38 +02:00
2026-06-29 06:37:47 +02:00
2026-06-30 16:08:41 +02:00
2026-06-30 17:56:24 +02:00
2026-06-21 14:22:55 +02:00
2026-06-21 14:22:55 +02:00
2026-06-14 15:12:07 +02:00
2026-06-14 15:12:07 +02:00
2026-06-14 15:12:07 +02:00
2026-06-21 14:22:55 +02:00
2026-06-21 14:22:55 +02:00
2026-06-21 14:22:55 +02:00
2026-05-18 18:17:08 +02:00
2026-05-18 18:17:08 +02:00
2026-06-30 16:08:41 +02:00
2026-06-30 16:08:41 +02:00
2026-06-30 16:08:41 +02:00
2026-04-05 18:45:16 +02:00
2026-04-05 17:11:32 +02:00
2026-06-22 11:29:49 +02:00
2026-06-22 11:29:49 +02:00
2026-06-22 11:29:49 +02:00
2026-06-14 15:12:07 +02:00
2026-06-14 15:12:07 +02:00
2026-06-14 15:12:07 +02:00
2026-05-14 00:28:20 +02:00
2026-05-05 23:34:03 +02:00
2026-05-14 00:28:20 +02:00
2026-05-14 00:28:20 +02:00
2026-05-14 18:13:22 +02:00