在以前不存在的情况下,我正在尝试制作一个空的PySpark数据框。我也有一个列名列表。是否可以在没有手动分配的情况下定义一个空的PySpark数据框?
我有一个列final_columns
的列表,可以用来从数据框中选择列的子集。但是,如果此数据框不存在,我想在final_columns
中创建一个具有相同列的空数据框。我想这样做而无需手动分配名称。
final_columns = ['colA', 'colB', 'colC', 'colD', 'colE']
try:
sdf = sqlContext.table('test_table')
except:
print("test_table is empty")
mySchema = StructType([ StructField("colA", StringType(), True),
StructField("colB", StringType(), True),
StructField("colC", StringType(), True),
StructField("colD", StringType(), True),
StructField("colE", DoubleType(), True) ])
sdf = sqlContext.createDataFrame(spark.sparkContext.emptyRDD(),schema=mySchema)
sdf = sdf.select(final_columns)