我正在尝试加载一个 JSON 文件,该文件包含我的脚本所需的数据。它并不总是在 JSON 中完成,所以我以前从未加载过,所以我对正在发生的事情有点迷茫。
我遇到了一些错误,在 StackOverflow 上找到解决方案后,我现在找到了一种可以在我的 .JSON
中加载的方法:
data = [json.loads(line) for line in open('C:/filepath/data.json','r',encoding='utf8')]
#creates a list,but I need a dataframe
dataset = pd.DataFrame(data)
dataset
看起来像这样:
exp username email date items
ema 2_12_21_3_00_14 PM [{'item 1': '29'},{'item 2': '19'},{'item 3': '27'},{'item 4': '24'},{'item 5': '39'},{'item 6': '40'},{'item 7': '43'},{'item 8': '19'},{'item 9': '19'},{'item 10': '22'},{'item 11': '35'},{'item 12': '33'},{'item 13': '23'},{'item 14': '27'},{'item 15': '28'},{'item 16': '23'},{'item 17': '26'},{'item 18': '30'},{'item 19': '29'},{'item 20': '31'},{'item 21': '35'},{'item 22': '29'}]
这些项目应该是单独的列,每行都有自己的数据。我不确定为什么会这样。有什么办法可以保留这些单独的列或转换此数据框以获取这些列?
一些额外信息:
我之前遇到的错误是 UnicodeDecodeError: 'charmap' codec can't decode byte
和 ```JSONDecodeError: Extra data````
那只是使用方法
File = open('data.json')
dataset = json.load(File)
#charmap issue
File = open('data.json',encoding='utf8')
dataset = json.load(File)
#extra data issue
编辑:
这是 data
在通过 pd.DataFrame
Type Size Value
dict 5 {'exp':'ema','username':'','email':'','date':'2_12_21_3_00_14 PM',...
为简单起见,我只显示第一个条目,因为我的数据超过 6,000 个条目,并且在我的脚本中打印头部变得很奇怪。
我也可以点击 Value
部分,因为它是一本字典,它会打开一个元素表,其中列名与 dataset
相同,但处于水平方向。