tablas para operaciones manipular leer graficar funciones documentacion datos con columnas archivos python excel vba csv

python - operaciones - El lenguaje de curva de aprendizaje más pequeño para trabajar con archivos CSV



operaciones con archivos csv python (12)

VBA ya no me lo va a cortar. Tengo muchos archivos de Excel enormes en los que necesito hacer muchos cálculos y dividirlos en otros archivos de Excel / CSV.

Necesito un idioma que pueda aprender en los próximos días para hacer lo que necesito, porque es una emergencia. Me han sugerido Python, pero me gustaría consultar con usted si hay algo más que haga que el manejo de archivos CSV sea rápido y fácil.


¿Qué tipo de cálculo tienes que hacer? Tal vez R sería una alternativa?

EDITAR: sólo para dar algunos ejemplos básicos

# Basic usage data <- read.csv("myfile.csv") # Pipe-separated values data <- read.csv("myfile.csv", sep="|") # File with header (columns will be named as header) data <- read.csv("myfile.csv", header=TRUE) # Skip the first 5 lines of the file data <- read.csv("myfile.csv", skip=5) # Read only 100 lines data <- read.csv("myfile.csv", nrows=100)


¿Sabes VBA? ¿Por qué no Visual Basic 2008/2010, o quizás C #? Estoy seguro de que lenguajes como python y ruby ​​serían relativamente más fáciles para el trabajo, pero ya estás acostumbrado a la forma ".NET" de hacer las cosas, así que tiene sentido seguir trabajando con ellos en lugar de aprender algo completamente nuevo. solo por este trabajo

Utilizando C #:

var csvlines = File.ReadAllLines("file.csv"); var query = from csvline in csvlines let data = csvline.Split('','') select new { ID = data[0], FirstName = data[1], LastName = data[2], Email = data[3] };

  1. .NET: Linq a la librería CSV .
  2. .NET: Lee CSV con LINQ
  3. Python: Leer archivo CSV

Eso depende de lo que quieras hacer con los archivos.

La curva de aprendizaje de Python es menos pronunciada que la de R. Sin embargo, R tiene un montón de funciones integradas que lo hacen muy adecuado para manipular archivos .csv fácilmente, particularmente para fines estadísticos.

Edición: recomendaría R sobre Python solo para este propósito, aunque solo sea porque las operaciones básicas (leer archivos, eliminar filas, eliminar columnas, etc.) son ligeramente más rápidas para escribir en R que en Python.


Hay muchas herramientas para el trabajo, pero sí, Python es quizás la mejor en estos días. Hay un módulo especial para tratar con archivos csv. Consulta los docs oficiales.


Le daría a awk un intento. Si está ejecutando Windows, puede obtener awk a través de las utilidades de cygwin .



Perl es sorprendentemente eficiente para un lenguaje de scripting para texto. cpan.org tiene una gran cantidad de módulos para tratar con datos CSV. También escribí y escribí datos en formato XLS con otro módulo Perl. Si pudiste usar VBA, ciertamente puedes aprender Perl (los conceptos básicos de Perl son fáciles, aunque para ti o para otros es muy fácil escribir código conciso pero críptico).


PowerShell tiene la importación CSV incorporada.

La sintaxis es tan fea como la muerte, pero está diseñada para ser más útil para los administradores que para los programadores; por lo tanto, quién sabe, puede que te guste.

Se supone que es un lenguaje rápido para mejorar y empeorar.


Puede que no sea el du-jour de lenguaje popular de nadie, pero como los archivos CSV están orientados a la línea y divididos en campos, tratarlos es la aplicación perfecta para awk . Fue construido para procesar datos de texto orientados a líneas que se pueden dividir en campos.

La mayoría de los otros idiomas que la gente va a recomendar será mucho más general, por lo que habrá mucho más en ellos que no es necesariamente aplicable al procesamiento de datos de texto orientados a líneas.


Python definitivamente tiene una pequeña curva de aprendizaje y funciona bien con archivos csv


Usted dice que tiene "archivos de Excel para los que necesito hacer muchos cálculos y descomponerlos en otros archivos de Excel / csv", pero todas las respuestas hasta ahora solo hablan sobre CSV ...

Python tiene un módulo de lectura / escritura csv como han mencionado otros. También hay módulos de terceros xlrd (lee) y xlwt (escribe) módulos para archivos XLS. Vea el tutorial en este sitio .


Python es una excelente opción. El módulo csv facilita la lectura y escritura de archivos CSV (incluso la versión "idiosincrática" de Microsoft) y la sintaxis de Python es muy fácil de aprender.

De hecho, lo recomendaría contra Perl, si se trata de algo nuevo. Si bien Perl es ciertamente poderoso y rápido, a menudo es críptico hasta el punto de ser incomprensible para los no iniciados.