如何使用.createDataFrame()读取标头



我正在从Google API读取一些数据。返回的数据看起来是这样的:

print(data)
[['col1', 'col2', 'col3'], ['543', '15197', '49877729'], ['9288', '285985', '29762969'], ['13709', '28146', '94968440'], ['1', '98480', '154381985'], ['586', '137709', '74962864'] ...]

第一行是标题名称。然后,我将上面的内容转换为Spark df,如下所示:

spark_df = (
spark
.createDataFrame(data, header=True)
)

这给出了这个错误:

TypeError:createDataFrame((获得了意外的关键字参数"header">

如何解决此问题?我在这里看到了公认的答案如何将Pyspark Dataframe Headers设置为另一行?但肯定可以避免这种循环吗?第二个答案暗示了header的论点,但对我来说是错误的

您可以尝试使用第一个列表项作为模式(第二个参数(,并使用列表的其余部分作为数据:

df = spark.createDataFrame(data[1:], data[0])

最新更新