如何使用Pandas显示数据框架的所有行

如何使用Pandas显示数据框架的所有行

在这篇文章中,我们将讨论如何在Python中使用Pandas显示数据框架的所有行。

当你试图打印一个超过预定义行和列数的大数据框架时,结果将被截断。请看下面的例子,以便更好地理解。

# importing numpy library
import pandas as pd
 
# importing diabetes dataset from sklearn
from sklearn.datasets import load_diabetes
 
# Loading diabetes dataset
data = load_diabetes()
 
# storing as data frame
dataframe = pd.DataFrame(data.data, columns=data.feature_names)
 
# printing data frame
print(dataframe)

输出:

如何使用Pandas显示数据框架的所有行

在上面的输出中,你可以看到总的行数是442,但它只显示了10行。这是由于pandas库的默认设置是只显示10行(默认的行数可能会因系统不同而改变)。现在我们来看看如何使用pandas来显示数据框中的所有行。

方法1:使用to_string()

这种方法是显示数据框中所有行的最简单的方法,但对于非常巨大的数据集(以百万计)来说,这种方法并不可取,因为它将整个数据框转换为一个字符串。虽然这种方法对于规模在几千人的数据集来说效果不错。

语法 :

DataFrame.to_string()

代码:

# Display all rows from data frame using pandas
# importing numpy library
import pandas as pd
 
# importing iris dataset from sklearn
from sklearn.datasets import load_iris
 
# Loading iris dataset
data = load_iris()
 
# storing as data frame
dataframe = pd.DataFrame(data.data,columns = data.feature_names)
 
# Convert entire data frame as string and print
print(dataframe.to_string())

输出:

如何使用Pandas显示数据框架的所有行

在这里,在输出中,你可以看到它显示了数据框架的所有行。但是这种方法对于大的数据框架来说是不可取的,因为它把整个数据框架转换成了一个字符串,所以可能会出现内存错误。

方法2:使用set_option()

Pandas提供了一个操作系统来定制行为和显示。这个方法允许我们配置显示,以显示一个完整的数据框,而不是一个截断的数据框。pandas提供了一个函数set_option()来显示数据框的所有行。display.max_rows表示pandas在显示数据框的时候所要显示的最大行数。

max_rows的默认值是10。如果设置为’None’,那么它意味着数据框架的所有行。设置display.max_rows的值为None,并将其传递给set_option,这将显示数据框架中的所有行。

语法 :

pandas.set_option('display.max_rows', None)

代码:

# Display all rows from data frame using pandas
# importing numpy library
import pandas as pd
 
# importing iris dataset from sklearn
from sklearn.datasets import load_iris
 
# Loading iris dataset
data = load_iris()
 
# Default value of display.max_rows is 10 so at max
# 10 rows will be printed. Set it None to display
# all rows in the dataframe
pd.set_option('display.max_rows', None)
 
# storing the dataset as data frame
dataframe = pd.DataFrame(data.data,columns = data.feature_names)
 
# printing data frame
print(dataframe)

输出:

如何使用Pandas显示数据框架的所有行

方法3:使用to_markdown()

这个方法将数据框转换为字符串对象,并为数据框添加样式和格式化。这与to_string()方法相同,但添加了样式和格式。to_markdown()将显示数据框中带有样式和格式的所有行。

语法 :

DataFrame.to_markdown()

代码:

# Display all rows from data frame using pandas
# importing numpy library
import pandas as pd
 
# importing iris dataset from sklearn
from sklearn.datasets import load_iris
 
# Loading iris dataset
data = load_iris()
 
# storing the dataset as data frame
dataframe = pd.DataFrame(data.data, columns=data.feature_names)
 
# Convert entire data frame as markdown and print
print(dataframe.to_markdown())

输出:

如何使用Pandas显示数据框架的所有行

方法4:使用option_context()

这个方法与set_option()方法相同。两个方法都是一样的,唯一的区别是set_option()是永久性地改变设置,而option_context()只在其范围内进行。这个方法也使用display.max_rows作为参数,我们让它等于None来显示数据框的所有行。因此,在将display.max_rows的值设置为None并将其传递给option_context后,我们就可以看到数据框中的所有行。其语法与set_option()方法相同。

语法 :

with pandas.option_context('display.max_rows', None,):
   print(dataframe)

代码:

# Display all rows from data frame using pandas
# importing numpy library
import pandas as pd
 
# importing iris dataset from sklearn
from sklearn.datasets import load_iris
 
# Loading iris dataset
data = load_iris()
 
# storing the dataset as data frame
dataframe = pd.DataFrame(data.data, columns=data.feature_names)
 
# The scope of these changes
# are local with systems to with statement.
with pd.option_context('display.max_rows', None,):
    print(dataframe)

输出:

如何使用Pandas显示数据框架的所有行

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程