Ⅰ 【函数】 collections.Counter()
Python标准库collections里的counter()函数是一个计数器工具,用于统计可迭代对象中元素出现的次数,返回一个字典。counter()可以接受任何可迭代对象作为参数,如列表、元组、字符串、字典等,元素为字典的键,各元素出现的次数为字典的值,可以是任意整数,包括零和负数。
创建Counter()函数可以使用列表、字符串、映射关系或关键字参数。当访问不存在的键时,返回值为0。如果参数是字典,Counter()还可以根据字典的值进行排序。
可以通过访问Counter字典来获取元素,就像使用dict那样访问Counter元素(值)。
Counter()提供了多种用法:
1. 按照计数降序返回前n项组成的list,使用most_common(n)方法,n默认为全部。
2. 计数相减,使用subtract()方法,传入可迭代对象或映射。
3. 更新Counter(),传入可迭代对象或映射,相同键的值相加。
4. Counter间的数学集合操作,如并集、交集和差集。
实例:文本词频统计。
在电商数据分析中,可以使用Counter()来构建用户-行为-购买转化率视图,如浏览、加购、删除、购买、收藏、点击等行为,并统计转化率。在电商数据分析场景中,需要对数据进行分组聚合操作,使用groupby()函数对数据进行分组,并应用自定义函数来计算所需指标,如add_user_type_count()方法。
源码实现中,使用Counter()统计各行为类别对应的次数,并将结果合并到原始数据框中,为后续数据分析提供基础。
更多详细代码和源码参考:
Python Counter()计数工具
Python Counter()的实现