将Agg count与range count合并成一个函数,统计某一区间内数据的数量,并进行聚合计数。以下是Python示例代码:
def count_range(data, r_min, r_max):
'''
统计某一区间内数据的数量
:param data: 待统计数据,可以是列表或其他数据结构
:param r_min: 区间最小值
:param r_max: 区间最大值
:return: 区间内的数量
'''
count = 0
for item in data:
if r_min <= item <= r_max:
count += 1
return count
def agg_count_with_range_count(data, ranges):
'''
统计某一区间内的数据数量,同时进行聚合计数
:param data: 待统计数据,可以是列表或其他数据结构
:param ranges: 区间范围,为列表,每个元素是一个元组,表示区间的最小值和最大值
:return: 返回一个字典,键为区间范围,值为区间内的数量和聚合计数
'''
result = {}
for r_min, r_max in ranges:
count = count_range(data, r_min, r_max)
result[(r_min, r_max)] = (count, sum(1 for item in data if r_min <= item <= r_max))
return result
其中,函数count_range
用于计算某一区间内数据的数量,函数agg_count_with_range_count
用于统计某一区间内的数据数量,并进行聚合计数,返回一个字典,键为区间范围,值为区间内的数量和聚合计数。使用时,可以将待统计数据和区间范围传入函数即可。