Har*_*don 9 python type-hinting apache-spark apache-spark-sql pyspark
Spark 3.1 引入了 python 的类型提示(万岁!),但我很困惑为什么 toPandas 方法的返回类型是“DataFrameLike”而不是 pandas.DataFrame - 请参阅此处: https: //github.com/apache/spark/ blob/master/python/pyspark/sql/pandas/conversion.pyi
因此,如果我尝试在调用 toPandas 的结果的对象上使用任何 pandas df 方法,mypy 会抛出各种错误。例如
df = spark_df.toPandas()
df.to_csv(out_path, index=False)
Run Code Online (Sandbox Code Playgroud)
结果出现错误消息
error: "DataFrameLike" has no attribute "to_csv"
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
我相信这个问题已通过最近的提交(日期为 2021 年 12 月 22 日)解决: https: //github.com/apache/spark/commit/a70006d9a7b578721d152d0f89d1a894de38c25d
现在,当您使用.toPandas()并打印类型时,它实际上会给您 Pandas DataFrame。
要了解更多相关信息,由于您的链接已损坏,这里是DataFrameLike的源代码
因此,请确保将 pyspark 更新到最新版本。
| 归档时间: |
|
| 查看次数: |
1724 次 |
| 最近记录: |