pandas 计数 value_counts()

 

在pandas里面常用value_counts确认数据出现的频率。

 

1. Series 情况下:

pandas 的 value_counts() 函数可以对Series里面的每个值进行计数并且排序。

import pandas as pd
df = pd.DataFrame({'区域' : ['西安', '太原', '西安', '太原', '郑州', '太原'], 
                  '10月份销售' : ['0.477468', '0.195046', '0.015964', '0.259654', '0.856412', '0.259644'],
                  '9月份销售' : ['0.347705', '0.151220', '0.895599', '0236547', '0.569841', '0.254784']})
print(df)

 

统计每个区域出现多少次:

print(df['区域'].value_counts())

每个区域都被计数,并且默认从高到低排序。

 

 

如果想升序排列,设置参数 ascending = True:

print(df['区域'].value_counts(ascending=True))

 

 

如果想得出计数占比,可以加参数 normalize=True:

print(df['区域'].value_counts(normalize=True))

 

注:空值默认剔除掉的。value_counts()返回的结果是一个Series数组,可以跟别的数组进行计算。

 

 

2. DataFrame 情况下:

import pandas as pd
df = pd.DataFrame({'区域1' : ['西安', '太原', '西安', '太原', '郑州', '太原'],
                   '区域2' : ['太原', '太原', '西安', '西安', '西安', '太原']})
print(df.apply(pd.value_counts))

区域2中没有郑州,所以是NaN。

 

 

来自:曹骥 

posted @   做梦当财神  阅读(71785)  评论(2编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示