以下是一个示例代码,用于按产品和时间计算唯一ID的数量。
from collections import defaultdict
def calculate_unique_id_count(data):
unique_id_count = defaultdict(int)
for entry in data:
product = entry["product"]
timestamp = entry["timestamp"]
unique_id = entry["unique_id"]
unique_id_count[(product, timestamp)] += 1
return unique_id_count
# 示例数据
data = [
{"product": "A", "timestamp": "2022-01-01", "unique_id": 1},
{"product": "A", "timestamp": "2022-01-01", "unique_id": 2},
{"product": "B", "timestamp": "2022-01-02", "unique_id": 3},
{"product": "B", "timestamp": "2022-01-02", "unique_id": 4},
{"product": "B", "timestamp": "2022-01-03", "unique_id": 5},
{"product": "C", "timestamp": "2022-01-03", "unique_id": 6},
]
result = calculate_unique_id_count(data)
print(result)
输出结果为:
defaultdict(, {('A', '2022-01-01'): 2, ('B', '2022-01-02'): 2, ('B', '2022-01-03'): 1, ('C', '2022-01-03'): 1})
上述示例代码使用了一个defaultdict来存储按产品和时间计算的唯一ID数量。遍历数据列表,对于每个条目,提取产品、时间戳和唯一ID,并使用(product, timestamp)作为键存储在defaultdict中。每次遇到相同的键时,将唯一ID数量加一。最后,返回结果字典。
请注意,示例数据中的时间戳被表示为字符串,实际上可以根据需要进行解析和转换。