以下是一个将JSON数据按列分组的解决方法的代码示例:
import json
from collections import defaultdict
# 示例JSON数据
json_data = '''
{
"data": [
{
"name": "John",
"age": 30,
"gender": "male"
},
{
"name": "Alice",
"age": 25,
"gender": "female"
},
{
"name": "Bob",
"age": 35,
"gender": "male"
},
{
"name": "Eve",
"age": 28,
"gender": "female"
}
]
}
'''
# 将JSON数据解析为Python对象
data = json.loads(json_data)['data']
# 创建字典来按列分组
grouped_data = defaultdict(list)
# 按列将数据分组
for item in data:
grouped_data['name'].append(item['name'])
grouped_data['age'].append(item['age'])
grouped_data['gender'].append(item['gender'])
# 打印分组结果
for column, values in grouped_data.items():
print(f"{column}: {values}")
运行上述代码将输出以下结果:
name: ['John', 'Alice', 'Bob', 'Eve']
age: [30, 25, 35, 28]
gender: ['male', 'female', 'male', 'female']
这个代码示例使用Python的json模块将JSON数据解析为Python对象。然后,它使用collections模块中的defaultdict类来创建一个字典,其中每个键都对应一个列名。在遍历数据时,将每个项目的值添加到相应的列中。最后,按列打印分组结果。