Python Pyspark:Jupyter笔记本中的spark数据帧列宽配置
我在Jupyter笔记本中有以下代码:Python Pyspark:Jupyter笔记本中的spark数据帧列宽配置,python,apache-spark,pyspark,spark-dataframe,jupyter-notebook,Python,Apache Spark,Pyspark,Spark Dataframe,Jupyter Notebook,我在Jupyter笔记本中有以下代码: import pandas as pd pd.set_option('display.max_colwidth', 80) my_df.select('field_1','field_2').show() 我想增加列宽,以便可以看到字段_1和字段_2的完整值。我知道我们可以对熊猫数据帧使用pd.set\u选项('display.max\u colwidth',80),但对spark数据帧似乎不起作用 有没有办法像熊猫数据框那样增加spark数据框的列宽?
import pandas as pd
pd.set_option('display.max_colwidth', 80)
my_df.select('field_1','field_2').show()
我想增加列宽,以便可以看到字段_1
和字段_2
的完整值。我知道我们可以对熊猫数据帧使用pd.set\u选项('display.max\u colwidth',80)
,但对spark数据帧似乎不起作用
有没有办法像熊猫数据框那样增加spark数据框的列宽?谢谢 我认为您不能设置特定的宽度,但这将确保您的数据无论大小都不会被截断
my_df.select('field_1','field_2').show(10, truncate = False)
这会给你你想要的
import pandas as pd
pd.set_option('display.max_colwidth', 80)
my_df.select('field_1','field_2').limit(100).toPandas()
以下两种方法都会奏效
my_df.select('field1','field2').show(10,False)
my_df.select('field1','field2').show(False)
只需在show()中的逗号后添加0或False,如下所示:
my_df.select('field1','field2').show(10,0)
or
my_df.select('field1','field2').show(10,False)
最棒的是,您是否尝试将其注册为临时表,然后使用SQL上下文将其显示为表?我遇到了一个错误:show()遇到了一个意外的关键字参数“truncate”,如果我使用上面的代码。有什么想法吗?嗯,在不使用truncate=part的情况下尝试,例如
show(False)
I然后得到错误:Py4JError:调用o105.showString时出错。Trace:…每次使用它时,我都会指定要显示的记录数(show(5,truncate=False)
),但是api文档说其他方法也可以。也许这样试试?我的_df是熊猫数据帧还是火花数据帧?你能展示一下它是如何创建的吗数据很大,我无法将其转换为AndAs()。我需要在pyspark data frameYes中执行此操作,但当您执行show()时,所有内容也将进入您的笔记本。如果数据很大,则必须限制其显示。这就是为什么要放在这里。限制(100),这样只有前100条记录才会显示在笔记本上。您可以删除它,然后获得所有记录。