Aprender PySpark DataFrames: creación, esquema y operaciones

Módulo del curso de PySpark

PySpark
PySpark
Módulo del curso
Actualizado: 18/04/2026

Módulo: DataFrames: creación, esquema y operaciones

Este módulo forma parte del curso de PySpark. .

Los DataFrames son la API principal de PySpark para trabajar con datos estructurados. A diferencia de los RDDs, los DataFrames tienen un esquema definido y se benefician del optimizador Catalyst, que genera planes de ejecución más eficientes de forma automática.

Se pueden crear DataFrames desde múltiples fuentes: listas de tuplas Python, diccionarios, RDDs existentes o DataFrames de pandas. La definición explícita del esquema con StructType y StructField es recomendable en producción para evitar inferencias costosas y garantizar la corrección de tipos:

from pyspark.sql.types import StructType, StructField, StringType, IntegerType, DoubleType

schema = StructType([
    StructField("nombre", StringType(), nullable=False),
    StructField("edad", IntegerType(), nullable=True),
    StructField("salario", DoubleType(), nullable=True)
])

df = spark.createDataFrame([("Ana", 30, 45000.0), ("Luis", 25, 38000.0)], schema)
df.printSchema()
df.show()

Las operaciones básicas incluyen select para proyección de columnas, filter/where para filtrado, withColumn para añadir o transformar columnas, alias para renombrar, drop para eliminar y withColumnRenamed para cambios de nombre. Para agrupaciones se usa groupBy con funciones de agregación (count, sum, avg, min, max). La ordenación se realiza con orderBy/sort y la deduplicación con distinct y dropDuplicates.

Explora más sobre PySpark

Descubre más recursos de PySpark

Alan Sastre - Autor del curso

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, PySpark es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.