如何在 Pandas 系列中显示最常见值?

pandaspythonserver side programmingprogramming

在本教程中,我们将学习如何在 Python 的帮助下显示 Pandas 系列中最常见的值。我们将在本教程中使用 Pandas 库。

系列是 Pandas 中的一种数据结构,类似于 Excel 工作表或 SQL 表中的列。它是一种一维标记数据结构,可以容纳不同的数据类型,如整数、浮点数、字符串等。

最常见的值是系列中出现次数最多的值。用数学术语来说,它是数据的模式。

方法 1

在 Pandas 系列中显示最常见值的一种方法是使用 value_counts() 方法。它返回一个系列,其中每个唯一值的计数按降序排列。它包含系列中的原始值作为其索引。

语法

要使用 value_counts() 方法显示图像,您需要遵循以下语法 -

counts = s.value_counts()
print(counts.index[0])

我们在系列"s"上使用'value_counts()'方法来查找最常见的值。'counts.index[0]'将返回计数中第一个值的索引。然后我们将使用 print() 函数打印它。

示例

在此示例中,我们使用 Pandas 库的 Series() 函数创建 Pandas 系列。我们将一个随机整数列表传递给 Series() 函数,该函数返回一个系列,我们将其存储在"s"变量中。然后我们将使用 'counts.index[0]' 来获取该系列中出现频率最高的值。

然后我们将使用 print() 函数来显示出现频率最高的值。

import pandas as pd

# 创建一个包含一些重复值的系列
s = pd.Series([1, 2, 2, 3, 3, 3, 4])

# 使用 value_counts() 获取每个唯一值的计数
counts = s.value_counts()

# 打印出现频率最高的值
print(counts.index[0])

输出

3

示例

在此示例中,我们有一个名为"names"的人名列表。我们首先使用 pd.Series() 函数将列表"names"转换为 Pandas 系列数据结构。这个系列称为"word_series"。我们想从这个系列中找出最常见的名字。

"word_series"系列的value_counts() 方法用于获取列表中每个唯一名称的计数。我们将其返回值存储在"word_counts"变量中。

最后,我们使用 print() 函数访问"word_counts"系列索引的第一个元素,打印出出现频率最高的名称。

import pandas as pd

# 单词列表
names = ['Jessica Rodriguez', 'Emily Davis', 'Michael Chen', 'Samantha Lee', 'Michael Chen', 'David Brown', 'William Wilson', 'Emily Davis', 'Sarah Kim', 'Jessica Rodriguez', 'Michael Chen', 'Samantha Lee', 'Sarah Kim', 'John Smith', 'Jessica Rodriguez', 'Jessica Rodriguez']

# 根据单词列表创建一个系列
word_series = pd.Series(names)

# 使用 value_counts() 获取每个唯一单词的计数
word_counts = word_series.value_counts()

# 打印计数
print("最常见的名字是", word_counts.index[0])

输出

最常见的名字是 Jessica Rodriguez

方法 2

显示 pandas 系列中最常见值的另一种方法是使用 mode() 方法。value_counts() 方法和 mode() 方法之间的区别在于,mode() 仅在存在平局时返回最常见的值,而不是每个唯一值的全部计数。

语法

要使用 mode() 方法显示最常见的值,您需要遵循以下语法 -

mode = s.mode()[0]
print(mode)

我们对想要在其中找到最常见值的系列"s"使用"mode()"方法。其返回值中的第零个元素将是"s"的模式。然后我们将使用 print() 函数打印它。

示例

在此示例中,我们使用 Pandas 库的 Series() 函数创建 Pandas 系列。我们将一些重复的随机整数列表传递给 Series() 函数,该函数会从中创建一个系列数据结构,并将其存储在"s"变量中。然后我们将使用 's.mode()[0]' 来获取系列中出现频率最高的值。

最后,我们将使用 print() 函数来显示模式或出现频率最高的值。

import pandas as pd

# 创建一个包含一些重复值的系列
s = pd.Series([1, 2, 2, 3, 3, 3, 4])

# 使用 value_counts() 获取每个唯一值的计数
mode = s.mode()[0]

# 打印出现频率最高的值
print("给定系列的模式是", mode)

输出

给定系列的模式是 3

示例

在此示例中,我们使用出生年份具有某些重复值的人的样本数据重复。我们将这些数据作为列表传递给 Pandas Series() 函数,并将返回的系列存储在变量"s"中。然后我们将对 's' 使用 mode() 方法获取最常见的出生年份并将其存储在 'mode' 变量中。

最后,print() 显示样本数据中最常见的值。

import pandas as pd

# 出生年份的样本数据
year_of_birth = [1990, 1992, 1993, 1993, 1994, 1995, 1995, 1995, 1996, 1997, 1997, 1998, 1999, 2000, 2000, 2001, 2002, 2002]

# 创建一个包含一些重复值的 Series
s = pd.Series(year_of_birth)

# 使用 value_counts() 获取每个唯一值的计数
mode = s.mode()[0]

# 打印最常见的值
print("最常见的出生年份是", mode)

输出

最常见的出生年份是 1995

结论

我们学习了如何使用不同的方法在 Pandas 系列数据结构中显示最常见的值。我们还学习了如何使用 Pandas Series() 函数创建具有自定义数据的系列。当我们必须在数据集中找到最常出现的元素时,上面讨论的方法就派上用场了,这对数据分析师或处理数据的人来说非常有帮助。


相关文章