# Vaex > Para procesar y analizar datasets tabulares enormes (miles de millones de filas) que no caben en RAM: operaciones DataFrame fuera de memoria, evaluación perezosa, agregaciones rápidas, visualización y ML sobre big data. Fuente: https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/vaex Markdown: https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/vaex.md Repositorio: https://github.com/K-Dense-AI/scientific-agent-skills Autor: K-Dense-AI Licencia: MIT license Actualizado: el mes pasado Coste de contexto: 119 tok instalada, 2k tok al activarse, 22k tok con todos los archivos del bundle Bundle: 7 archivos, 86 KB Permisos que pide: read write edit bash grep glob ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent claude-code # Cursor npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent cursor # Codex npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent codex # Gemini CLI npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent gemini # Windsurf npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent windsurf # Cline npx -y skills add K-Dense-AI/scientific-agent-skills --skill vaex --agent cline ``` ## Qué hace - Procesa DataFrames fuera de memoria (out-of-core) sobre datasets tabulares de miles de millones de filas que no caben en RAM - Evalúa de forma perezosa y usa columnas virtuales para no materializar datos en memoria - Calcula agregaciones y estadísticas rápidas, y crea visualizaciones (heatmaps, histogramas) de big data - Construye pipelines de machine learning integrados con scikit-learn, XGBoost y CatBoost - Lee y escribe HDF5, CSV, Arrow y Parquet, incluida la conversión entre formatos ## Cuándo usarla - Procesar datasets tabulares más grandes que la RAM disponible (de gigabytes a terabytes) - Necesitar agregaciones estadísticas rápidas sobre datasets masivos - Crear visualizaciones o heatmaps de datos a gran escala - Construir pipelines de ML sobre big data que no caben en memoria ## Cuándo no - Si los datos caben en RAM y se busca máxima velocidad en memoria: el propio archivo recomienda polars - Si se necesita pandas/NumPy distribuido en un clúster: el propio archivo recomienda dask ## Qué la activa - "Carga este CSV de 50GB y calcula estadísticas con Vaex" - "Crea un heatmap de este dataset de mil millones de filas" - "Convierte este archivo grande de CSV a HDF5" - "Entrena un pipeline de ML sobre datos que no caben en RAM" ## Antes de instalar - Necesita Python 3.10+ (3.12+ recomendado con vaex 4.19.0), se instala con `uv pip install vaex`; s3fs/gcsfs/adlfs son opcionales para I/O en la nube. ## Archivos - SKILL.md — 8 KB - references/core_dataframes.md — 8 KB - references/data_processing.md — 12 KB - references/io_operations.md — 15 KB - references/machine_learning.md — 16 KB - references/performance.md — 13 KB - references/visualization.md — 14 KB ## SKILL.md Reproducido tal cual desde K-Dense-AI/scientific-agent-skills bajo MIT license. Esta sección es el documento original y está en inglés. # Vaex ## Overview Vaex is a high-performance Python library designed for lazy, out-of-core DataFrames to process and visualize tabular datasets that are too large to fit into RAM. Vaex can process over a billion rows per second, enabling interactive data exploration and analysis on datasets with billions of rows. ## Installation Install the full meta-package (recommended): ```bash uv pip install vaex ``` Minimal install (pick only what you need): ```bash uv pip install vaex-core vaex-viz vaex-hdf5 vaex-ml ``` The `vaex` package is a meta-package that pulls in `vaex-core`, `vaex-viz`, `vaex-hdf5`, `vaex-ml`, and other sub-packages. Arrow support is built into `vaex-core` (the separate `vaex-arrow` package is deprecated). `vaex-distributed` is deprecated in favor of vaex-enterprise. **Version notes (vaex 4.19.0+):** Python 3.12 and NumPy v2 require vaex >= 4.19.0. On Windows, you may need Python dev headers to build the `annoy` dependency. ## When to Use This Skill Use Vaex when: - Processing tabular datasets larger than available RAM (gigabytes to terabytes) - Performing fast statistical aggregations on massive datasets - Creating visualizations and heatmaps of large datasets - Building machine learning pipelines on big data - Converting between data formats (CSV, HDF5, Arrow, Parquet) - Needing lazy evaluation and virtual columns to avoid memory overhead - Working with astronomical data, financial time series, or other large-scale scientific datasets **Vaex vs alternatives:** Use **polars** when data fits in RAM and you need maximum in-memory speed. Use **dask** when you need distributed pandas/NumPy across a cluster. Use **vaex** for single-machine, out-of-core analytics on tabular data that exceeds RAM via memory-mapped HDF5/Arrow files. ## Core Capabilities Vaex provides six primary capability areas, each documented in detail in the references directory: ### 1. DataFrames and Data Loading Load and create Vaex DataFrames from various sources including files (HDF5, CSV, Arrow, Parquet), pandas DataFrames, NumPy arrays, and dictionaries. Reference `references/core_dataframes.md` for: - Opening large files efficiently - Converting from pandas/NumPy/Arrow - Working with example datasets - Understanding DataFrame structure ### 2. Data Processing and Manipulation Perform filtering, create virtual columns, use expressions, and aggregate data without loading everything into memory. Reference `references/data_processing.md` for: - Filtering and selections - Virtual columns and expressions - Groupby operations and aggregations - String operations and datetime handling - Working with missing data ### 3. Performance and Optimization Leverage Vaex's lazy evaluation, caching strategies, and memory-efficient operations. Reference `references/performance.md` for: - Understanding lazy evaluation - Using `delay=True` for batching operations - Materializing columns when needed - Caching strategies - Asynchronous operations ### 4. Data Visualization Create interactive visualizations of large datasets including heatmaps, histograms, and scatter plots. Reference `references/visualization.md` for: - Creating 1D and 2D plots - Heatmap visualizations - Working with selections - Customizing plots and subplots ### 5. Machine Learning Integration Build ML pipelines with transformers, encoders, and integration with scikit-learn, XGBoost, and other frameworks. Reference `references/machine_learning.md` for: - Feature scaling and encoding - PCA and dimensionality reduction - K-means clustering - Integration with scikit-learn/XGBoost/CatBoost - Model serialization and deployment ### 6. I/O Operations Efficiently read and write data in various formats with optimal performance. Reference `references/io_operations.md` for: - File format recommendations - Export strategies - Working with Apache Arrow - CSV handling for large files - Server and remote data access ## Quick Start Pattern For most Vaex tasks, follow this pattern: ```python import vaex # 1. Open or create DataFrame df = vaex.open('large_file.hdf5') # or .csv, .arrow, .parquet # OR df = vaex.from_pandas(pandas_df) # 2. Explore the data print(df) # Shows first/last rows and column info df.describe() # Statistical summary # 3. Create virtual columns (no memory overhead) df['new_column'] = df.x ** 2 + df.y # 4. Filter with selections df_filtered = df[df.age > 25] # 5. Compute statistics (fast, lazy evaluation) mean_val = df.x.mean() stats = df.groupby('category').agg({'value': 'sum'}) # 6. Visualize (df.viz is the recommended accessor since vaex 4.0) df.viz.heatmap(df.x, df.y, limits='99.7%', show=True) # Legacy: df.plot1d() and df.plot() still work on the DataFrame # 7. Export if needed df.export_hdf5('output.hdf5') ``` ## Working with References The reference files contain detailed information about each capability area. Load references into context based on the specific task: - **Basic operations**: Start with `references/core_dataframes.md` and `references/data_processing.md` - **Performance issues**: Check `references/performance.md` - **Visualization tasks**: Use `references/visualization.md` - **ML pipelines**: Reference `references/machine_learning.md` - **File I/O**: Consult `references/io_operations.md` ## Best Practices 1. **Use HDF5 or Apache Arrow formats** for optimal performance with large datasets 2. **Leverage virtual columns** instead of materializing data to save memory 3. **Batch operations** using `delay=True` when performing multiple calculations 4. **Export to efficient formats** rather than keeping data in CSV 5. **Use expressions** for complex calculations without intermediate storage 6. **Profile with `df.describe()` and `df.nbytes`** to understand data shape and memory usage ## Common Patterns ### Pattern: Converting Large CSV to HDF5 ```python import vaex # Open large CSV lazily (vaex 4.14+), or use from_csv to convert to HDF5 df = vaex.open('large_file.csv') # df = vaex.from_csv('large_file.csv', convert='large_file.hdf5') # Export to HDF5 for faster future access df.export_hdf5('large_file.hdf5') # Future loads are instant df = vaex.open('large_file.hdf5') ``` ### Pattern: Efficient Aggregations ```python # Use delay=True to batch multiple operations mean_x = df.x.mean(delay=True) std_y = df.y.std(delay=True) sum_z = df.z.sum(delay=True) # Execute all at once results = vaex.execute([mean_x, std_y, sum_z]) ``` ### Pattern: Virtual Columns for Feature Engineering ```python # No memory overhead - computed on the fly df['age_squared'] = df.age ** 2 df['full_name'] = df.first_name + ' ' + df.last_name df['is_adult'] = df.age >= 18 ``` ## Resources This skill includes reference documentation in the `references/` directory: - `core_dataframes.md` - DataFrame creation, loading, and basic structure - `data_processing.md` - Filtering, expressions, aggregations, and transformations - `performance.md` - Optimization strategies and lazy evaluation - `visualization.md` - Plotting and interactive visualizations - `machine_learning.md` - ML pipelines and model integration - `io_operations.md` - File formats and data import/export ## Dónde encaja - Categoría: [Datos y analítica](https://skillsagentes.com/categorias/datos-analitica.md) — Consulta, limpia y visualiza datos sin salir del agente. - Creador: [K-Dense-AI](https://skillsagentes.com/creators/k-dense-ai.md) — 163 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Citation Management](https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/citation-management.md): Gestión integral de citas académicas: busca en OpenAlex, PubMed y Google Scholar, extrae metadatos precisos, valida citas y genera entradas BibTeX correctamente formateadas. - [Scientific Slides](https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/scientific-slides.md): Crea decks de diapositivas y presentaciones para charlas de investigación: PowerPoint, presentaciones de conferencia, seminarios, defensas de tesis. Da estructura, plantillas, guía de tiempos y validación visual. - [Literature Review](https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/literature-review.md): Realiza revisiones bibliográficas sistemáticas y completas usando varias bases académicas (PubMed, arXiv, bioRxiv, Semantic Scholar). Genera markdown y PDF con citas verificadas en varios estilos (APA, Nature, Vancouver). - [Infographics](https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/infographics.md): Crea infografías profesionales con Nano Banana Pro AI y refinamiento iterativo inteligente. Usa Gemini 3.6 Flash para revisar la calidad e integra investigación con Perplexity Sonar. Soporta 10 tipos, 8 estilos y paletas para daltonismo. - [Latex Posters](https://skillsagentes.com/skills/k-dense-ai/scientific-agent-skills/latex-posters.md): Crea pósteres de investigación profesionales en LaTeX con beamerposter, tikzposter o baposter, para conferencias y comunicación científica: layout, colores, columnas múltiples e integración de figuras. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)