pyspark показать фрейм данных как таблицу с горизонтальной прокруткой в IPython notebook

a pyspark.sql.DataFrame отображает лажа с DataFrame.show() - строки вместо прокрутки.

enter image description here

но дисплеи с pandas.DataFrame.head enter image description here

Я пробовал эти варианты

import IPython
IPython.auto_scroll_threshold = 9999

from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
from IPython.display import display

но не повезло. Хотя прокрутка работает при использовании в Редакторе Atom с плагином jupyter:

enter image description here

2 ответов


это решение

spark_df.limit(5).toPandas().head()

хотя я не знаю вычислительной нагрузки этого запроса. Я думаю limit() не дорого. исправления приветствуются.


Я создал ниже функцию li'L, и она отлично работает:

def printDf(sprkDF): 
    newdf = sprkDF.toPandas()
    from IPython.display import display, HTML
    return HTML(newdf.to_html())

вы можете использовать его прямо на ваших запросах spark, если хотите, или на любом фрейме данных spark:

printDf(spark.sql('''
select * from employee
'''))