如何打印Pyspark数据帧像熊猫数据帧在jupyter



当我使用df.show()查看jupyter笔记本中的pyspark数据帧时

它告诉我:

+---+-------+-------+-------+------+-----------+-----+-------------+-----+---------+----------+-----+-----------+-----------+--------+---------+-------+------------+---------+------------+---------+---------------+------------+---------------+---------+------------+
| Id|groupId|matchId|assists|boosts|damageDealt|DBNOs|headshotKills|heals|killPlace|killPoints|kills|killStreaks|longestKill|maxPlace|numGroups|revives|rideDistance|roadKills|swimDistance|teamKills|vehicleDestroys|walkDistance|weaponsAcquired|winPoints|winPlacePerc|
+---+-------+-------+-------+------+-----------+-----+-------------+-----+---------+----------+-----+-----------+-----------+--------+---------+-------+------------+---------+------------+---------+---------------+------------+---------------+---------+------------+
|  0|     24|      0|      0|     5|   247.3000|    2|            0|    4|       17|      1050|    2|          1|    65.3200|      29|       28|      1|    591.3000|        0|      0.0000|        0|              0|    782.4000|              4|     1458|      0.8571|
|  1| 440875|      1|      1|     0|    37.6500|    1|            1|    0|       45|      1072|    1|          1|    13.5500|      26|       23|      0|      0.0000|        0|      0.0000|        0|              0|    119.6000|              3|     1511|      0.0400|
|  2| 878242|      2|      0|     1|    93.7300|    1|            0|    2|       54|      1404|    0|          0|     0.0000|      28|       28|      1|      0.0000|        0|      0.0000|        0|              0|   3248.0000|              5|     1583|      0.7407|
|  3|1319841|      3|      0|     0|    95.8800|    0|            0|    0|       86|      1069|    0|          0|     0.0000|      97|       94|      0|      0.0000|        0|      0.0000|        0|              0|     21.4900|              1|     1489|      0.1146|
|  4|1757883|      4|      0|     1|     0.0000|    0|            0|    1|       58|      1034|    0|          0|     0.0000|      47|  

如何获得像熊猫数据帧一样的格式化数据帧,以更有效地查看数据?

您可以使用将pyspark数据帧直接转换为pandas数据帧的功能。同样的命令是-

df.limit(10).toPandas()

这应该会直接产生pandas数据帧的结果,您只需要安装pandas包。

您必须使用以下代码

from IPython.display import display
import pandas as pd
import numpy as np
d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)
display(df)

正如@sat在他们的回答中提到的,你可以使用:

df.toPandas()

或者最好限制:

df.limit(10).toPandas()
# where 10 is the number of rows

将您的数据帧转换为pandas数据帧。

然而,如果你想在pyspark中查看你的数据,你可以使用:

df.show(10,truncate=False)

如果您想单独查看数据帧的每一行,请使用:

df.show(10, vertical=True)

此外,您还可以使用找到记录的总数

df.count()

最新更新