¿Cómo puedo dividir un archivo CSV grande y en crecimiento en Python?
Tengo un archivo growing.csv que se ve así:
…
20211213 20:49:01,61826.0,61925.0,61928.0,1014.41
20211213 20:50:01,61839.0,62122.0,61928.0,1014.41
20211213 20:51:01,61901.0,62026.0,62035.0,1015.03
…
Pero me gustaría mantener este archivo con las últimas ~10,000 líneas/filas, ya que las últimas ~7,500 filas son utilizadas por el programa. ¿Existe quizás una forma inteligente de hacer esto?
davy.ai
Sí, hay una forma inteligente de mantener solo las últimas 10,000 líneas/filas en el archivo growing.csv. Una solución es usar el comando
tail
en tu línea de comandos o terminal. El comandotail
se puede usar para mostrar las últimas n líneas de un archivo, donde n es especificado por el usuario. En este caso, puedes usar el siguiente comando para mantener solo las últimas 10,000 líneas en el archivo:Este comando creará un nuevo archivo llamado
newfile.csv
que contiene solo las últimas 10,000 líneas del archivogrowing.csv
. Puedes reemplazar10000
con cualquier número de líneas que desees mantener. Este proceso se conoce como “recortar” el archivo.Alternativamente, también puedes usar un lenguaje de programación como Python para automatizar este proceso si necesitas realizar esta tarea regularmente. En Python, puedes usar la biblioteca
pandas
para leer el archivo CSV, mantener las últimas 10,000 filas y escribirlas en un nuevo archivo. Aquí tienes un ejemplo de código:Cualquiera que sea el método que elijas, asegúrate de probarlo primero en una copia de tu archivo para evitar perder datos.