在 Jupyter 中将 PySpark 数据帧打印为格式化表
Posted
技术标签:
【中文标题】在 Jupyter 中将 PySpark 数据帧打印为格式化表【英文标题】:Issue printing PySpark dataframe as formatted table in Jupyter 【发布时间】:2018-02-01 22:42:09 【问题描述】:我有一个 PySpark 数据框 (df),我想在我的 Jupyter 笔记本中将其打印为格式良好的表格。
根据post,我认为以下代码可以工作:
import pandas as pd
from IPython.display import display, html
pandas_df = df.toPandas()
display(HTML(pandas_df.to_html()))
很遗憾,这不起作用。我收到以下错误:
ERROR - failed to write data to stream: <__main__.UnicodeDecodingStringIO object at 0x7f75c7a8e750>
有人知道如何解决这个问题吗?
谢谢!
【问题讨论】:
【参考方案1】:尝试以下方法:
def printDF(inputDF):
newDF = inputDF.toPandas()
from IPython.display import display, HTML
return HTML(newDF.to_html())
您还可以移动 import 语句,使其全局导入,而不是每次调用函数时都导入它。希望这会有所帮助。
【讨论】:
以上是关于在 Jupyter 中将 PySpark 数据帧打印为格式化表的主要内容,如果未能解决你的问题,请参考以下文章
如何使用pyspark在jupyter笔记本中显示我的csv数据文件
如何在 jupyter 中像 pandas Dataframe 一样打印 Pyspark Dataframe