前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python | 统计频次

python | 统计频次

作者头像
努力在北京混出人样
发布2018-05-14 14:38:58
1.2K0
发布2018-05-14 14:38:58
举报
文章被收录于专栏:祥子的故事祥子的故事

自定义函数计算每个类型出现的次数


统计词频

方案一

代码语言:javascript
复制
def get_counts(sequence):
    counts = {}
    for x in sequence:
        if x in counts:
            counts[x] += 1
        else:
            counts[x] = 1
    return counts

方案二

代码语言:javascript
复制
from collections import defaultdict

def get_counts2(sequence):
    counts = defaultdict(int) 
    for x in sequence:
        counts[x] += 1
    return counts

方案三:dataframe格式的value_counts()

代码语言:javascript
复制
tz_counts = frame['tz'].value_counts()
tz_counts[:10]

从效率上来说,我更推荐方案二

案例思路来源

似乎感觉到这是某个案例的拓展。对了,是判断一个元素是否在一个列表中。引入字典模式,就可用在计算频次上。

代码语言:javascript
复制
def check(x,L):
    if x in L:
        return True
    else:
        L.append(x)

统计top N类型

方案一:自定义函数

代码语言:javascript
复制
def top_counts(count_dict, n):
    value_key_pairs = [(count, tz) for tz, count in count_dict.items()]
    value_key_pairs.sort()
    return value_key_pairs[-n:]

方案二:用函数

代码语言:javascript
复制
from collections import Counter
counts = Counter(time_zones)
counts.most_common(n)

未完待续

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年10月09日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 统计词频
    • 方案一
      • 方案二
        • 方案三:dataframe格式的value_counts()
        • 案例思路来源
        • 统计top N类型
          • 方案一:自定义函数
            • 方案二:用函数
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档