En este artículo, veremos cómo leer archivos CSV en Dataframe. Para ello utilizaremos Pyspark y Python.
Archivos utilizados:
Leer archivo CSV en DataFrame
Aquí vamos a leer un solo CSV en un marco de datos usando spark.read.csv y luego crearemos un marco de datos con estos datos usando .toPandas().
Python3
from pyspark.sql import SparkSession spark = SparkSession.builder.appName( 'Read CSV File into DataFrame').getOrCreate() authors = spark.read.csv('/content/authors.csv', sep=',', inferSchema=True, header=True) df = authors.toPandas() df.head()
Producción:
Aquí, pasamos nuestro archivo CSV authors.csv. En segundo lugar, pasamos el delimitador utilizado en el archivo CSV. Aquí el delimitador es la coma ‘, ‘. A continuación, establecemos el atributo inferSchema como True , esto pasará por el archivo CSV y adaptará automáticamente su esquema en PySpark Dataframe. Luego, convertimos PySpark Dataframe a Pandas Dataframe df usando el método toPandas() .
Leer varios archivos CSV
Para leer varios archivos CSV, pasaremos una lista de Python de las rutas de los archivos CSV como tipo de string .
Python3
from pyspark.sql import SparkSession spark = SparkSession.builder.appName('Read Multiple CSV Files').getOrCreate() path = ['/content/authors.csv', '/content/book_author.csv'] files = spark.read.csv(path, sep=',', inferSchema=True, header=True) df1 = files.toPandas() display(df1.head()) display(df1.tail())
Producción:
Aquí, importamos author.csv y book_author.csv presentes en el mismo directorio de trabajo actual con un delimitador como coma ‘ , ‘ y la primera fila como encabezado.
Leer todos los archivos CSV en el directorio
Para leer todos los archivos CSV en el directorio, usaremos * para considerar cada archivo en el directorio.
Python3
from pyspark.sql import SparkSession spark = SparkSession.builder.appName( 'Read All CSV Files in Directory').getOrCreate() file2 = spark.read.csv('/content/*.csv', sep=',', inferSchema=True, header=True) df1 = file2.toPandas() display(df1.head()) display(df1.tail())
Producción:
Esto leerá todos los archivos CSV presentes en el directorio de trabajo actual, teniendo el delimitador como coma ‘ , ‘ y la primera fila como encabezado.