Pandas DataFrame Mode 方法

PythonPythonBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

本实验将指导你如何使用 Pandas DataFrame 中的 mode() 方法。mode() 方法用于查找 DataFrame 中出现频率最高的值。

虚拟机提示

虚拟机启动完成后,点击左上角切换到 Notebook 标签页,以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,请随时向 Labby 寻求帮助。实验结束后请提供反馈,我们将及时为你解决问题。

导入必要的库

首先,使用 import 语句导入 Pandas 库:

import pandas as pd

创建 DataFrame

现在,使用 DataFrame() 构造函数创建一个 DataFrame。在这个示例中,我们将创建一个包含三列的 DataFrame,列名分别为 "A"、"B" 和 "C"。

df = pd.DataFrame({"A": [1, 2, 1], "B": [2, 2, 1], "C": [5, 2, 5]})

查找众数值

要查找 DataFrame 中每列的众数值,可以使用 mode() 方法:

df_mode = df.mode()
print(df_mode)

mode() 方法会返回一个包含每列众数值的 DataFrame。

指定轴

默认情况下,mode() 方法会沿着列轴(axis=0)查找众数值。如果你想沿着行轴查找众数值,可以指定 axis=1

例如,要沿着行轴查找众数值,可以使用以下代码:

df_mode = df.mode(axis=1)
print(df_mode)

仅包含数值列

如果你希望在众数计算中仅包含数值列,可以使用 numeric_only 参数。默认情况下,numeric_only 设置为 False。将其设置为 True 以仅包含数值列。

例如,要在众数计算中仅包含数值列,可以使用以下代码:

df_mode = df.mode(numeric_only=True)
print(df_mode)

包含空值

默认情况下,mode() 方法不会考虑空值。如果你希望在众数计算中包含空值,可以使用 dropna 参数。默认情况下,dropna 设置为 True。将其设置为 False 以包含空值。

例如,要在众数计算中包含空值,可以使用以下代码:

df_mode = df.mode(dropna=False)
print(df_mode)

总结

在本实验中,你学习了如何在 Pandas DataFrame 中使用 mode() 方法来查找最频繁出现的值。你还学习了如何指定轴、仅包含数值列以及包含空值。现在,你可以利用这些知识在自己的数据分析项目中查找众数值。