En este artículo, vamos a verificar si Pyspark DataFrame o Dataset está vacío o no.
Al principio, vamos a crear un marco de datos
Python3
# import modules from pyspark.sql import SparkSession from pyspark.sql.types import StructType, StructField, StringType # defining schema schema = StructType([ StructField('COUNTRY', StringType(), True), StructField('CITY', StringType(), True), StructField('CAPITAL', StringType(), True) ]) # Create Spark Object spark = SparkSession.builder.appName("TestApp").getOrCreate() # Create Empty DataFrame with Schema. df = spark.createDataFrame([], schema) # Show schema and data df.printSchema() df.show(truncate=False)
Producción:
Verificar que el marco de datos esté vacío o no
Tenemos múltiples formas por las cuales podemos verificar:
Método 1: estáVacío()
La función isEmpty del DataFrame o Dataset devuelve verdadero cuando el DataFrame está vacío y falso cuando no lo está. Si el marco de datos está vacío, la invocación de «isEmpty» podría generar una NullPointerException.
Nota: llamar a df.head() y df.first() en DataFrame vacío devuelve java.util.NoSuchElementException: next en excepción de iterador vacío.
Python3
print(df.head(1).isEmpty) print(df.first(1).isEmpty) print(df.rdd.isEmpty())
Producción:
True True True
Método 2: contar()
Calcula el recuento de todas las particiones de todos los Nodes.
Código:
Python3
print(df.count() > 0) print(df.count() == 0)
False True
Publicación traducida automáticamente
Artículo escrito por deepanshu_rustagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA