背景介绍
在数据处理领域,统计信息的提取与计算是常见的基础任务。CSV文件的三列数据统计与JSON对象的键值统计,分别涉及数据解析、统计计算和结果输出三个核心环节。通过本篇技术博客,我们将学习如何实现这两个典型数据处理任务。
思路分析
CSV文件统计信息
- 数据解析
使用csv模块读取包含用户姓名、年龄和性别三列的CSV文件,确保列名正确无误且数据格式一致。 -
统计计算
计算每个列的总和、平均值和最大值,输出结果格式为”平均年龄”,确保结果准确且符合示例要求。 -
输出格式
通过多行输出,将统计信息以表格形式呈现,提升可读性。
JSON对象键值统计
-
数据处理
使用json模块读取包含键值对象的输入,确保键值类型正确。 -
统计计算
统计键的数量和值的数量,输出结果时保留原始类型(如布尔值、整数)。 -
输出格式
通过多行输出,将统计结果以键值对形式呈现,便于后续分析。
代码实现
1. CSV文件统计信息
import csv
def csv_statistics(file_path):
with open(file_path, 'r', newline='\n') as csvfile:
reader = csv.reader(csvfile)
fields = next(reader) # 获取列名
counts = {
'name': 0,
'age': 0,
'gender': 0
}
for row in reader:
name, age, gender = row[0], row[1], row[2]
counts[name] += 1
counts[age] += 1
counts[gender] += 1
print(f"姓名 | 年龄 | 性别 | 平均年龄")
for item in counts:
print(f"{item} | {counts[item]}")
2. JSON对象键值统计
import json
def json_statistics(json_input):
data = json_input
counts = {
"name": 0,
"age": 0,
"isStudent": 0
}
for key, value in data.items():
counts[key] += 1
print(f"name | age | isStudent")
for item in counts:
print(f"{item} | {counts[item]}")
总结
通过本篇博客的学习,我们不仅掌握了数据处理的基本方法,还深入理解了统计计算的核心思想。无论是CSV文件的统计信息还是JSON对象的键值统计,都需要关注数据的结构、计算的准确性以及输出的格式。这些实践不仅提升了编程能力,也帮助我们在数据处理领域建立扎实的基础。