Python Pandas返回DataFrame,其中value count高于设定的数字
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python Pandas返回DataFrame,其中value count高于设定的数字,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1825字,纯文字阅读大概需要3分钟。
内容图文
![Python Pandas返回DataFrame,其中value count高于设定的数字](/upload/InfoBanner/zyjiaocheng/806/58dad7237b0b4eee88a105deecfffc3e.jpg)
我有一个Pandas DataFrame,我想仅在客户编号超过设定次数时才返回DataFrame.
以下是DataFrame的示例:
114 2017-04-26 1 7507 34 13
115 2017-04-26 3 77314 41 14
116 2017-04-27 7 4525 190 315
117 2017-04-27 7 5525 67 94
118 2017-04-27 1 6525 43 378
119 2017-04-27 3 7415 38 27
120 2017-04-27 2 7613 47 10
121 2017-04-27 2 77314 9 3
122 2017-04-28 1 227 17 4
123 2017-04-28 8 4525 205 341
124 2017-04-28 1 7415 31 20
125 2017-04-28 2 77314 8 2
以下是该客户使用此代码发生的次数超过5次:
print(zip_data_df['Customers'].value_counts()>5)
7415 True
4525 True
5525 True
77314 True
6525 True
4111 True
227 True
206 False
7507 False
7613 False
4108 False
3046 False
2605 False
4139 False
4119 False
现在我预计如果我这样做了:
print(zip_data_df[zip_data_df['Customers'].value_counts()>5])
它会向我展示出现超过5次的客户的整个DataFrame,但是我得到了一个布尔错误.我意识到为什么它现在给我一个错误:一个DataFrame只是告诉我该客户编号是否超过5次,而另一个是每次客户编号出现时都会显示给我.它们的长度不匹配.但是我如何获得它以便数据框只返回客户发生超过5次的记录?
我确信有一些简单的答案我会忽略,但我感谢您能给我的任何帮助.
解决方法:
所以这里的问题是索引:value_counts()返回一个在’Customers’上编入索引的Series,而zip_data_df似乎在其他东西上编入索引.你可以这样做:
cust_counts = zip_data_df['Customers'].value_counts().rename('cust_counts')
zip_data_df = zip_data_df.merge(cust_counts.to_frame(),
left_on='Customers',
right_index=True)
从那里,您可以从zip_data_df中有条件地选择,如下所示:
zip_data_df[zip_data_df.cust_counts > 5]
内容总结
以上是互联网集市为您收集整理的Python Pandas返回DataFrame,其中value count高于设定的数字全部内容,希望文章能够帮你解决Python Pandas返回DataFrame,其中value count高于设定的数字所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。