如何在Python中打印整个Pandas DataFrame
数据可视化是一种技术,它使用视觉线索,如图形、图表、地图和其他许多东西来提供数据的洞察力。这很有用,因为它有助于直观和容易地理解大量的数据,从而做出更好的决定。当我们使用一个打印的大量数据集时,那么它就会被截断。 在这篇文章中,我们将看到如何在不截断的情况下打印整个pandas数据框架或系列。
默认情况下,如果长度超过默认长度,则不打印完整的数据框,输出被截断,如下图所示。
输出:
有 4种方法来打印整个pandas数据框架:
- 使用to_string()方法
- 使用pd.option_context()方法
- 使用pd.set_options()方法
- 使用pd.to_markdown()方法
方法1:使用to_string()
虽然这种方法是最简单的,但对于非常巨大的数据集(以百万计)来说,这种方法并不可取,因为它将整个数据帧转换为一个字符串对象,但对于大小为数千的数据帧来说,这种方法非常有效。
语法:
代码:
输出:
方法2:使用pd.option_context()
Pandas允许通过option_context()方法和set_option()方法改变设置。这两个方法都是相同的,但有一点不同的是,后一个方法是永久性地改变设置,而前一个方法只在上下文管理器范围内进行。
语法 : pandas.option_context(*args)
代码:
输出:
解释:
上面的代码使用了某些选项参数,比如’display.max_rows‘,它的默认值是10,如果数据帧超过10行,它就会被截断,我们要做的是把它的值变成None,即现在显示所有的行。同样,’display.max_columns‘的默认值是10,我们也将它设置为None。
display. precision = 3表示小数点后显示3个值,这里所有的值都是1个值,因此它不影响这个例子。
方法3:使用pd.set_option()
这个方法与pd.option_context()方法类似,并且接受与方法2相同的参数,但与pd.option_context()不同的是,它的_范围和效果是针对整个脚本的,即所有的数据帧设置都被永久地改变。
要明确地重置数值,必须使用pd.reset_option(‘all’)方法来恢复变化。
语法 : pandas.set_option(pat, value)
代码:
输出:
方法4:使用to_markdown()
这个方法与to_string()方法类似,因为它也是将数据框转换为字符串对象,并为其添加样式和格式。
语法 : DataFrame.to_markdown(buf=None, mode=’wt’, index=True,, **kwargs)
代码:
输出: