通常用于分析两个或两个以上,分组变量之间的关系,以交叉表形式进行变量间关系的对比分析;
从数据的不同维度,综合进行分组细分,进一步了解数据的构成、分布特征。
交叉计数函数: pivot_table(values,index,columns,aggfunc,fill_value)
参数说明: values:数据透视表中的值 index:数据透视表中的行 columns:数据透视表中的列 aggfunc:统计函数 fill_value:NA值的同一替换
#相当于excel中的数据透视表功能
import numpy
import pandas
data = pandas.read_csv(
'C:/Users/ZL/Desktop/Python/5.4/data.csv'
)
bins = [
min(data.年龄)-1, 20, 30, 40, max(data.年龄)+1
]
labels = [
'20岁以及以下', '21岁到30岁', '31岁到40岁', '41岁以上'
]
data['年龄分层'] = pandas.cut(
data.年龄,
bins,
labels=labels
)
ptResult = data.pivot_table(
values=['年龄'],
index=['年龄分层'],
columns=['性别'],
aggfunc=[numpy.size]
)
Out[2]:
size
年龄
性别 女 男
年龄分层
20岁以及以下 111 1950
21岁到30岁 2903 43955
31岁到40岁 735 7994
41岁以上 567 886