📜  Python中的 pandas.crosstab()函数(1)

📅  最后修改于: 2023-12-03 15:19:26.229000             🧑  作者: Mango

Python中的 pandas.crosstab()函数

pandas.crosstab()函数是一个用于计算交叉表(也称为列联表)的功能强大的函数。交叉表是用于统计分组数据的特殊数据表格。它显示了两个或多个分类变量之间的关系。它可以用于理解数据集中不同变量之间的关系。

函数定义

pandas.crosstab(index, columns, values=None, rownames=None, colnames=None, aggfunc=None, margins=False, margins_name: str = 'All', dropna: bool = True, normalize=False)

  • index:pandas对象
  • columns:pandas对象
  • values:pandas对象,可选
  • rownames:序列,可选
  • colnames:序列,可选
  • aggfunc:函数,可选
  • margins:bool型,可选,默认为False
  • margins_name:字符串,可选,默认为'All'
  • dropna:bool型,可选,默认为True
  • normalize:bool型,可选,默认为False
用途

pandas.crosstab()用于计算交叉表并返回结果。该函数接受许多参数,其中最重要的是index和columns。这些参数用来指定要计数的数据列或分类变量。用户还可以使用values参数指定要使用的列,并使用aggfunc参数指定用于执行计数的聚合函数。

示例

下面是一个示例,演示如何使用pandas.crosstab()来创建交叉表。

import pandas as pd

# 创建一个DataFrame
data = {
    'Gender': ['Male', 'Female', 'Male', 'Female', 'Male', 'Male', 'Female', 'Female'],
    'Region': ['North', 'North', 'South', 'North', 'South', 'North', 'South', 'South']
}
df = pd.DataFrame(data)

# 使用crosstab()函数创建交叉表
result = pd.crosstab(index=df['Gender'], columns=df['Region'])

# 打印结果
print(result)

输出:

Region  North  South
Gender              
Female      2      2
Male        3      2

在上面的示例中,我们使用pd.crosstab()创建了一个交叉表,该表显示了性别和地区之间的关系。此表告诉我们,在我们的数据集中,有2个女性和2个男性在北部,而有3个男性和2个女性在南部。

总结

pandas.crosstab()函数是一个强大的函数,用于计算交叉表。它可以让用户了解数据中不同变量之间的关系。使用该函数,用户可以指定要计数的数据列或分类变量,并指定要使用的聚合函数来进行计数。