如何使用Pandas将特定JSON数据读取为指定格式的DataFrame
解决JSON转指定格式DataFrame的问题
你的JSON结构是单个字典对象,直接用pd.read_json()会把每个键作为DataFrame的列,所以才会出现所有键值对挤在同一行的情况。可以用以下两种方法处理:
方法一:先读为字典再构造DataFrame
import pandas as pd import json # 读取JSON文件为字典 with open(PATH_TO_DATA, 'r') as f: data_dict = json.load(f) # 将键值对转换成目标格式的列表,再生成DataFrame data_list = [{"Sentence": key, "Label": value} for key, value in data_dict.items()] data_df = pd.DataFrame(data_list)
方法二:借助Series快速转换
import pandas as pd # 读取为Series,再重置索引并重命名列 data_series = pd.read_json(PATH_TO_DATA, typ='series') data_df = data_series.reset_index().rename(columns={'index': 'Sentence', 0: 'Label'})
两种方法最终都会生成符合要求的DataFrame结构:
| Sentence | Label |
|---|---|
| Text1 | 4 |
| Text2 | 1 |
| TextN | 123 |
内容的提问来源于stack exchange,提问作者Setu Kumar Basak
相关产品推荐
相关产品推荐

