您现在的位置是:群英 > 开发技术 > Python语言
Python里怎么样做数据透视表?
Admin发表于 2021-12-29 18:30:501350 次浏览

    Python里怎么样做数据透视表?在我们工作中经常会遇到需要做数据透视表,它能很快的帮我们收集我们想要的数据,而在用Python里的Pandas可以实现,虽然不如Excel方便,但是效果也还不错,接下来我们一起了解看看吧。

    1.groupby + agg

    不够直观,不好看

    对贷款年份,贷款种类创建数据透视

train_data.groupby(['year_of_loan', 'class']).agg(d_roat =('isDefault', 'mean'))

    2. crosstab

pandas.crosstab(index, columns,values, rownames=None, colnames, 
				aggfunc, margins, margins_name, dropna, normalize)

    主要用到的参数:

    index:选哪个变量做数据透视表的行

    columns:选哪个变量做数据透视表的列

    values:要聚合的值

    aggfunc:使用的聚合函数

    margins:是否添加汇总列/行

    margins_name:汇总行/列的名字

    例子

    对贷款年份,贷款种类创建数据透视

pd.crosstab(train_data['year_of_loan'], train_data['class'], train_data['loan_id'], 
                                                            aggfunc='count',margins = True, margins_name = '合计')


    可以直接看出交叉组合之后违约比例

pd.crosstab(train_data['year_of_loan'], train_data['class'], train_data['isDefault'], aggfunc='mean')

    3.groupby + pivot

train_data.groupby(['year_of_loan', 'class'],
                                 as_index = False)['isDefault'].mean().pivot('year_of_loan', 'class', 'isDefault')

    pivot_table

pandas.pivot_table(data, values, index, columns, aggfunc, fill_value, 
					margins, dropna, margins_name, observed, sort)

    常用参数与crosstab一致

    例子

    实现同样的数据透视表

pandas.pivot_table(data, values, index, columns, aggfunc, fill_value, 
					margins, dropna, margins_name, observed, sort)

pd.pivot_table(train_data[['year_of_loan', 'class', 'isDefault']],
			   values='isDefault', index=['year_of_loan'], columns=['class'], 
			   aggfunc='mean')

    总结

    以上就是Python里实现数据透视表的几种方法,有些展现效果不是很好,有些数据显示的很清晰,有需要的朋友可以参考了解看看,本文代码有一定的参考价值。最好,想要了解更多可以继续浏览群英网络其他相关的文章。

文本转载自脚本之家

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2022-07-19 17:37:08 
摘要:本文主要介绍了Go 语言的 :=的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
2022-12-01 16:14:54 
摘要:php parse_ini_string()乱码的解决办法:1、输入文件路径;2、在提供的编码方式数组中,匹配文件的编码方式;3、通过“iconv($encoding, 'UTF-8', $contents);”方式转为“UTF-8”编码即可。
2022-08-24 16:47:11 
摘要:本篇文章带大家聊聊Nginx与php-fpm的通信机制,介绍一下两种通信方式的不同,看看Nginx 与 php-fpm 的结合要怎么配置,分析一下应用中如何选择通信方式,希望能够给大家提供帮助!
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部