如何统计JSON数据集中指定属性的总出现次数?遍历数据集遇问题
统计JSON数据集funny属性总次数
要统计所有条目中votes下funny属性的总次数,只需遍历整个数据集并累加对应数值即可,以下是两种实用实现方式:
方式一:边读边累加(适合大数据量,节省内存)
无需把所有数据存入列表,读取每条数据时直接累加funny值,避免占用过多内存:
import json total_funny = 0 with open('yelp_reviews_test.json') as infile: for line in infile: review = json.loads(line) total_funny += review['votes']['funny'] print(f"funny属性总次数:{total_funny}")
方式二:基于已存储的列表求和
如果需要保留全量数据集的列表,可使用生成器表达式快速完成求和:
import json yelp_data = [] with open('yelp_reviews_test.json') as infile: for line in infile: yelp_data.append(json.loads(line)) # 遍历列表累加所有funny值 total_funny = sum(review['votes']['funny'] for review in yelp_data) print(f"funny属性总次数:{total_funny}")
两种方式都能得到所有条目的funny属性总出现次数,第一种无需额外存储全量数据,处理大文件时效率更高。
内容的提问来源于stack exchange,提问作者Ssangkal
相关产品推荐
相关产品推荐

