crosstab交叉表_透视图和交叉表

本文介绍了在数据分析中,数据透视表作为常见工具的作用,重点讲述了pandas库中的crosstab函数,用于行和列索引的数据汇总。内容包括设置index、columns、values、aggfunc等参数,以及如何处理缺失值和计算分组频率。
摘要由CSDN通过智能技术生成

透视图和交叉表

在数据分析中,数据透视表是常见的工具之一,需要根据行或列对数据进行各个维度数据的汇总,在pandas中,提供了相关函数解决此类问题

透视图相关函数

pivot_table(data,index,colums,values,aggfunc,fill_value,margins,margins_name=)
  • index: 行索引
  • colums: 列索引
  • values: 分组的字段,只能为数值型变量
  • aggfunc: 聚合函数
  • fill_value: 缺失值填充方法
  • margins: 是否需要总计

513805cb4aff6cef72c8e6898c6702fa.png
import pandas as pd
import numpy as np
import os
os.chdir('G:jupyterNotebookNetwordFile')

df=pd.read_csv('vgsales.csv',dtype={'Year':float})

pd.pivot_table(data=df,index='Year',values='Global_Sales',
               aggfunc=np.mean,margins=True,margins_name='总计求均值')

pd.pivot_table(data=df,index='Year',columns='Genre',values='Global_Sales',
               aggfunc=np.mean,margins=True,margins_name='总计求均值')

pd.pivot_table(data=df,index='Year',columns='Genre',values='Global_Sales',
               aggfunc=np.mean,margins=True, fill_value=0,margins_name='总计求均值')

pd.pivot_table(data=df,index='Year',columns='Genre',values='NA_Sales',
               aggfunc=[np.sum,np.median],margins=True, fill_value=0,margins_name='总计求均值').head(10)

pd.pivot_table(data=df,index=['Year','Platform'],columns='Genre',values='NA_Sales',
               aggfunc=np.mean,margins=True, fill_value=0,margins_name='总计求均值').head(10)

交叉表

:计算分组频率、次数

pd.crosstab(index=df['Platform'],columns=df=['Genre'],margins=True)

pd.crosstab(index=df['Platform'],columns=df=['Genre'],margins=True
             values=df['NA_Sales'],aggfunc=np.sum )

pd.crosstab(index=df['Platform'],columns=df=['Genre'],normalize='all',#标准化
             margins=True)

pd.crosstab(index=df['Platform'],columns=df=['Genre'],normalize='index',#标准化
             margins=True)

pd.crosstab(index=df['Platform'],columns=df=['Genre'],normalize='columns',#标准化
             margins=True)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值