改进 PySpark DataFrame.show 输出以适合 Jupyter notebook

cls*_*udt 18 python pandas apache-spark pyspark jupyter

在 Jupyter notebook 中使用 PySpark,DataFrame.show与 Pandas DataFrames 的显示方式相比,Spark 的输出技术含量较低。我想“嗯,它可以完成工作”,直到我得到这个:

在此处输入图片说明

输出未调整为笔记本的宽度,因此线条以丑陋的方式环绕。有没有办法自定义这个?更好的是,有没有办法获得 Pandas 风格的输出(pandas.DataFrame不明显转换为)?

Kyl*_*ron 15

现在这是可能的本身设置为星火2.4.0spark.sql.repl.eagerEval.enabledTrue

在此处输入图片说明

  • 在我自己的数据集上,这似乎对我不起作用,该数据集有很多列。`spark.conf.set("spark.sql.repl.eagerEval.enabled",True)` 后跟 `df.limit(10)` (2认同)

use*_*806 14

在玩弄了我的包含很多列的表格之后,我决定最好的方法是使用以下方法来感受数据:

df.show(n=5, truncate=False, vertical=True)
Run Code Online (Sandbox Code Playgroud)

这将它垂直显示而不会被截断,并且是我能想到的最干净的视图。

  • 对我来说,代码的输出比水平视图更好,因为它没有隐藏任何列。 (3认同)
  • 太棒了。 (2认同)

Lui*_*raz 10

您可以使用 html magic 命令。通过检查输出单元来检查 CSS 选择器是否正确。然后在下面进行相应的编辑并在单元格中运行它。

%%html
<style>
div.output_area pre {
    white-space: pre;
}
</style>
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

11706 次

最近记录:

5 年,3 月 前