Tengo archivos CSV que tienen varias columnas que se ordenan. Por ejemplo, podría tener líneas de este tipo:dividir archivo de texto grande csv basado en el valor de columna
19980102,,PLXS,10032,Q,A,,,15.12500,15.00000,15.12500,2
19980105,,PLXS,10032,Q,A,,,14.93750,14.75000,14.93750,2
19980106,,PLXS,10032,Q,A,,,14.56250,14.56250,14.87500,2
20111222,,PCP,63830,N,A,,,164.07001,164.09000,164.12000,1
20111223,,PCP,63830,N,A,,,164.53000,164.53000,164.55000,1
20111227,,PCP,63830,N,A,,,165.69000,165.61000,165.64000,1
me gustaría dividir el archivo basado en la tercera columna, por ejemplo, ponga las entradas PLXS y PCP en sus propios archivos llamados PLXS.csv y PCP.csv. Debido a que el archivo pasa a estar previamente ordenado, todas las entradas de PLXS están antes de las entradas de PCP, y así sucesivamente.
Generalmente termino haciendo cosas como esta en C++ ya que ese es el lenguaje que mejor conozco, pero en este caso, mi archivo CSV de entrada es de varios gigabytes y demasiado grande para cargarlo en la memoria en C++.
¿Alguien puede mostrar cómo se puede lograr esto? Las soluciones Perl/Python/php/bash están bien, solo necesitan poder manejar el gran archivo sin un uso excesivo de memoria.
tienen ya había navegado alrededor a todos? varias preguntas relacionadas en este sitio en todos los idiomas anteriores y más. puede buscar: 'sitio: stackoverflow.com csv dividido por valor' o alguna de esas variantes. la mejor de las suertes – bernie