PySpark:读取 pyspark 框架中的 csv 数据。为啥它在框架中显示特殊字符?除了使用熊猫之外,以表格形式显示的任何方式[重复]
Posted
技术标签:
【中文标题】PySpark:读取 pyspark 框架中的 csv 数据。为啥它在框架中显示特殊字符?除了使用熊猫之外,以表格形式显示的任何方式[重复]【英文标题】:PySpark: Read the csv data in pyspark frame. Why does it show special characters in frame? Any way to show in a tabular form except using pandas [duplicate]PySpark:读取 pyspark 框架中的 csv 数据。为什么它在框架中显示特殊字符?除了使用熊猫之外,以表格形式显示的任何方式[重复] 【发布时间】:2021-10-11 11:00:45 【问题描述】:我正在使用 pyspark 读取 CSV 文件。在将 CSV 读入 pyspark 数据框后,它会显示我在 jupyter notebook 上显示数据时标题中有特殊字符。谁能指导我如何在不看到这些特殊字符的情况下显示数据?此外,如图所示,数据未对齐,如何以表格形式显示数据,而不是这样(不使用 pandas)
py_df = spark.read.option('header', 'true').csv("E:\Data files\Amazon e-commerce data.csv")
【问题讨论】:
【参考方案1】:只需在您的show()
中尝试truncate = False
py_df = spark.read.option('header', 'true').csv("E:\Data files\Amazon e-commerce data.csv").show(truncate=False)
它只会显示 20 行,如果您想查看更多行,请将 n=1000
放入 show()
中的 1000 行
【讨论】:
【参考方案2】:你有太多的列不能放在一行上,所以行换行。您可以在显示前使用.select()
限制显示的列数:
py_df.withColumn("Double the Price", py_df["price"] * 2).select(["price", "Double the Price").show(n=2)
也许 jupyter notebook 对渲染 pandas 数据帧有更好的支持?如果是这种情况,您可以尝试将 spark 数据框的顶部转换为 pandas 数据框:
py_df.withColumn("Double the Price", py_df["price"] * 2).limit(100).toPandas()
【讨论】:
以上是关于PySpark:读取 pyspark 框架中的 csv 数据。为啥它在框架中显示特殊字符?除了使用熊猫之外,以表格形式显示的任何方式[重复]的主要内容,如果未能解决你的问题,请参考以下文章
无法读取 pyspark 中的 mongodb 数据(json)
通过 pyspark 中的 UDF 读取文本文件返回意外输出