我正在尝试通过for循环从json数据对象创建具有所需属性的数据框。但是,当我尝试打印数据框内容时,即使循环成功运行,它也显示为空。
当我尝试打印时,我发现很奇怪
table['h_timezone'].head()
输出为:
PST
PST
CST
但是当我尝试打印表格的内容时。它说空的数据框或0行和2列。
顺便说一句,我的文件有10,000个json对象/事务,我在下面的for循环中跟踪40列的赋值过程。
有人可以帮我解决这个问题吗?我在代码中到底在做什么错?另外,有没有有效的流程来完成这项工作?
import pandas as pd
import json
data = pd.read_json(open('sample.json'), lines=True)
columns = ['h_timezone','h_apptimestamp']
table= pd.DataFrame(columns = columns)
for i in range(0,len(data)):
table['h_timezone'].loc[i] = data.loc[i]['header']['timeZone']
table['h_apptimestamp'].loc[i]=data.loc[i]['header']['applicationTimestamp']
table.count()
table.head()
预期产量
h_timezone h_apptimestamp
PST 09-09-2018 01:20:20
CST 10-09-2018 01:30:30
我的输出如下:
table.count()
h_timezone 0
h_apptimestamp 0
table.head()
h_timezone h_apptimestamp