Pandas value_counts函数中变更排序方式

Pandas value_counts函数中变更排序方式

在本文中,我们将介绍Pandas的value_counts函数以及如何变更其默认的排序方式。

阅读更多:Pandas 教程

什么是value_counts函数

value_counts是Pandas中的一个函数,用于计算一个Series中每个唯一值的出现次数,并将结果按照出现次数从高到低进行排序。

我们可以通过下面的代码来创建一个示例数据,并使用value_counts函数进行计算:

import pandas as pd

data = pd.Series(['a', 'b', 'a', 'c', 'a', 'b', 'd'])
counts = data.value_counts()

print(counts)
Python

输出结果为:

a    3
b    2
c    1
d    1
dtype: int64
Python

默认排序方式

默认情况下,value_counts函数对结果按照出现次数从高到低进行排序。这意味着出现次数最多的值将排在最前面,而出现次数最少的值将排在最后面。

我们可以通过下面的代码来验证这点:

import pandas as pd

data = pd.Series(['a', 'b', 'a', 'c', 'a', 'b', 'd'])
counts = data.value_counts()

print(counts)
Python

输出结果为:

a    3
b    2
c    1
d    1
dtype: int64
Python

变更排序方式

如果我们希望对结果按照出现次数从低到高进行排序,或者按照字典序进行排序,那么我们需要变更value_counts函数的默认排序方式。

按照出现次数从低到高进行排序

要按照出现次数从低到高进行排序,我们可以通过在value_counts函数中传递一个布尔值参数来实现。将sort参数设置为True即可实现按照出现次数从低到高进行排序。

下面的代码演示了如何在value_counts函数中传递sort参数:

import pandas as pd

data = pd.Series(['a', 'b', 'a', 'c', 'a', 'b', 'd'])
counts = data.value_counts(sort=True)

print(counts)
Python

输出结果为:

d    1
c    1
b    2
a    3
dtype: int64
Python

按照字典序进行排序

要按照字典序进行排序,我们可以通过在value_counts函数中传递一个字符串参数来实现。将sort参数设置为’index’即可按照字典序进行排序,将sort参数设置为’None’则使用默认排序方式。

下面的代码演示了如何在value_counts函数中传递sort参数来实现按照字典序进行排序:

import pandas as pd

data = pd.Series(['a', 'b', 'a', 'c', 'a', 'b', 'd'])
counts = data.value_counts(sort='index')

print(counts)
Python

输出结果为:

a    3
b    2
c    1
d    1
dtype: int64
Python

总结

Pandas的value_counts函数是一个非常有用的函数,可以用来计算一个Series中每个唯一值的出现次数,并将结果按照出现次数从高到低进行排序。如果需要变更排序方式,我们可以在value_counts函数中传递sort参数来实现按照出现次数从低到高进行排序,或按照字典序进行排序。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册