pyspark 检查DataFrame 是否为空有如下代码中的5种方法,对于版本小于3.3.0时,建议适用方法2或方法3;而对于版本大于3.3.0时,方法4中的 isEmpty函数最方便
from pyspark.sql import SparkSession
spark = SparkSession.builder.master('local[2]')\
.appName("local_test") \
.getOrCreate()
df_empty = spark.createDataFrame([], 'a STRING')
# 方法1
df_empty.rdd.isEmpty()
# 方法2
len(df_empty.take(1)) == 0 # method 2
# 方法3
len(df_empty.head(1)) == 0 # method 3
# 方法4, 只适用于spark版本 > 3.3.0
df_empty.isEmpty()
# 方法5 数据量大时可能效率很慢
df_empty.count() == 0