Lista de Python para CSV

Lista de Python para CSV
El formato de archivo conocido como CSV (valores separados por comas) se utiliza para almacenar datos tabulados en texto plano, al igual que una hoja de cálculo o una base de datos. Python tiene un módulo incorporado llamado CSV que permite la lectura y la redacción de archivos CSV. Python tiene dos bibliotecas que nos permiten escribir o crear archivos CSV. El CSV.escritor () y CSV.Funciones DictWriter (). En Python, las listas se encuentran entre las estructuras de datos más populares y comúnmente utilizadas. En esta publicación, enseñaremos cómo usar Python para crear un archivo CSV desde una lista.

¿Qué es un objeto de lista en Python??

Una lista de Python es una disposición ordenada de elementos que se pueden modificar. Los elementos o valores que forman una lista o se almacenan dentro de una lista se denominan elementos. Cuando se trabaja con numerosos valores conectados, las listas son una herramienta útil. Le dan la capacidad de optimizar su código, realizar las mismas operaciones en varios valores a la vez y mantener los datos relacionados juntos.

¿Qué es CSV en Python??

Una gran cantidad de datos en forma tabular (números y texto) se puede almacenar en este formato, en texto plano, haciéndolo muy útil. Cada fila u línea horizontal en los datos representa un solo registro de datos y cada registro está compuesto por campos/columnas individuales o múltiples, separados por comas. Microsoft Excel también se puede usar para abrir el archivo CSV.

Cómo convertir o escribir un objeto de lista a CSV en Python?

Python ofrece cuatro métodos básicos para crear un archivo CSV desde una lista y una lista de listas.

  1. Escriba la lista en el archivo utilizando la función Escritura () en el objeto CSV Writer después de importar el módulo CSV en Python.
  2. Cree un marco de datos después de importar la biblioteca Pandas y luego use la función DataFrame "DataFrame.a csv () "para escribir su marco de datos en un archivo.
  3. Después de importar la biblioteca Numpy, cree una matriz Numpy y luego use el "Numpy.método saveTxt () "para guardar los datos en un archivo CSV.
  4. Use la funcionalidad de E/S de archivo de Python para un enfoque de Python puro que no necesita un módulo.

En la sección a continuación explicaremos cada método junto con la implementación práctica en forma de ejemplos.

Método#1: convertir una lista en un archivo CSV usando el módulo CSV

El módulo CSV de Python hace que sea simple leer y escribir archivos CSV. Usando la función Open (), primero abriremos el archivo CSV necesario en modo de escritura para usar este módulo. Entonces, usando el CSV.Función de escritor (), podemos escribir el objeto de la lista de Python como una cadena delimitada en un archivo creando un objeto de escritor. Con esta función, podemos hacer uso de algunos parámetros.

Ejemplo#1: Convierta un objeto de lista a una fila CSV

Aquí, escribiremos el código de Python para escribir una lista en una fila CSV. Primero importaremos un módulo CSV. Se creará una lista con elementos de datos. Entonces, crearemos nuestro 'file_name.CSV '. El modo "W+" se usará para escribir el archivo CSV. Puede obtener los valores/elementos en Newline usando NewLine = ". El escritor () se usará para escribir todas las filas en el archivo, mientras que “CSV.escritor (archivo) ”escribe todos los datos de la lista en el archivo CSV.

La salida se nos muestra en formato de fila:

Ejemplo#2: Convierta un objeto de lista a un encabezado CSV

Ahora veremos cómo convertir una lista en un encabezado CSV

En este ejemplo, tomaremos una variable después de cargar/importar el módulo CSV. Luego, usaremos la función Open () para abrir el archivo. El método de escritor CSV se utilizará para escribir/convertir el objeto de lista en un archivo CSV. Usando escritura (), escribiremos los datos de la lista en forma de filas a un archivo CSV. Nuevamente, utilizaremos la función Escritura () para escribir el encabezado de los datos de la lista.

El encabezado y los elementos de la lista son visibles en nuestro archivo CSV:

Método#2: convertir una lista en un archivo CSV usando el módulo PANDAS

Para usar este método, primero debemos convertir el objeto de lista en un marcador de datos, que luego se convertirá en un CSV externo. Este método es realmente útil cuando necesitamos escribir más de una lista o lista de listas a un .archivo CSV. Además, nos permite incluir automáticamente un índice de columna y nombres de columna en el archivo resultante.

Ejemplo#1: Uso de la función TO_CSV ()

Se puede crear un Pandas DataFrame a partir de una lista de listas, lo que le brinda acceso a funciones útiles como el método To_CSV (). El beneficio de emplear este método es que no se deben importar bibliotecas adicionales.

Archivo de salida:

Estos parámetros se pueden usar con esta función para modificar el archivo de salida:

  • El delimitador del archivo de salida se puede configurar utilizando el parámetro SEP.
  • Las columnas del archivo de salida se pueden especificar utilizando el parámetro de columnas.
  • Al usar el parámetro de codificación, se puede especificar la codificación requerida.
  • Podemos especificar nombres de columnas usando el argumento de encabezados.
  • Para especificar el índice de fila o los nombres de la columna para servir como índice, se pueden usar la etiqueta de índice y los parámetros del índice.

Método#3: convertir una lista en un archivo CSV usando el módulo Numpy

Las funcionalidades de Python y Machine Learning and Data Science se basan en Numpy. Las matrices numpy son utilizadas incluso Pandas para implementar características esenciales. El módulo Numpy proporcionó algunas funciones que podemos usar para escribir el objeto de lista a CSV. Este método es más efectivo cuando simplemente tiene datos numéricos. De lo contrario, requiere transformaciones de tipo de datos complejas, que no se recomiendan.

Ejemplo#1: Uso de la función SaveteExt ()

Usando la función SaveText () de Numpy, puede crear un archivo CSV a partir de una lista de listas. La matriz Numpy se pasará como una entrada a la función.

Archivo de salida:

En el guión de arriba,

  • Dado que todos los elementos eran números, establecemos el argumento de FMT como %D para especificar el formato como enteros.
  • La coma se especifica como el carácter delimitador.

Ejemplo#2: Usando el Numpy.función tofile ()

La función tofile () del módulo Numpy se usa típicamente para el almacenamiento de datos rápido en archivos de texto o archivos binarios. Se puede escribir una lista en un CSV utilizando la función tofile (). La salida, sin embargo, será una línea. Con esta función, puede especificar el formato de los datos y el carácter delimitador utilizando los parámetros de formato y SEP.

Archivo de salida:

Como se puede ver, en lugar de filas, todo está dispuesto en una sola línea. Es necesario convertir primero la lista en una matriz antes de usar la función tofile ().

Método#4: Convertir una lista a CSV sin importar módulos

Podemos usar la implementación estándar o básica de Python en lugar de importar cualquier biblioteca para crear un archivo CSV a partir de una lista de listas porque es simple y efectivo. Sin embargo, si es posible, debe confiar en las bibliotecas para completar la tarea para usted.

Ejemplo:
El objeto de archivo se abrirá primero. El siguiente paso es iterar sobre las filas y elementos de las filas y luego escribir todos los elementos en el archivo.

Archivo de salida:

Para crear un formato de archivo CSV, agregue una coma después de cada elemento. El personaje de Newline "\ n" debe colocarse después de cada fila.

Conclusión

En este tutorial, primero vimos la introducción al CSV y la lista de objetos en Pandas. Luego discutimos cómo la lista se puede convertir en un archivo CSV en Python. Explicamos cuatro métodos para crear un archivo CSV a partir de una lista o lista de listas. En el primer método, utilizamos el módulo CSV. En el segundo método, utilizamos el módulo PANDAS para convertir la lista en un marco de datos y luego en CSV. En el tercer método, utilizamos funciones SaveText () y Tofile () del módulo Numpy. En el último método, implementamos un ejemplo para crear CSV desde un objeto de lista sin importar un módulo.