Tengo un archivo .csv con 3,5 GB de datos (alrededor de 8 millones de filas y 86 columnas) y necesito crear un modelo de regresión en este conjunto de datos.
La cuestión es que solo tratar de leer el CSV usando pandas, y luego realizar cualquier tipo de operación en él (incluso solo tomando el número de filas), lleva una cantidad de tiempo ridícula. Entonces, considerando que necesito visualizar los datos para saber cómo se ven, luego preprocesarlos, etc., realmente no creo que sea factible hacerlo de la misma manera que siempre lo he hecho para archivos con 50-100 MB. eso.
Traté de buscar en el módulo de multiprocesamiento de python , pero aunque me ayudó a calcular el número de filas, no veo que me ayude con la mayoría de las otras cosas que necesito hacer (como construir el modelo, por ejemplo).
Entonces, ¿alguien sabe cómo debo abordar esto? Lo estoy haciendo en un cuaderno de python.
Echa un vistazo a la biblioteca de Dask. ( http://dask.pydata.org/en/latest/ ). Extiende las matrices DataFrames y Numpy de pandas para un cálculo más grande que la memoria.
Aquí hay una publicación de blog sobre el uso de Dask con scikit-learn: https://www.continuum.io/blog/developer-blog/dask-and-scikit-learn-3-part-tutorial
Varias sugerencias:
Llopis
Mawg dice que reincorpore a Monica