我想把我的输出保存在一个json文件中。我有一个包含100行和20个项目列的dataframe,有一个列名ID
。在代码的某些部分,我定义了函数
def function1(dataframe, ID):
df_sum = dataframe.sum()
df_sum = df_sum .sort_values(ascending=False)
df_sum = pd.DataFrame(df_sum , columns=['num_%s'%ID])
result_sum = df_sum .to_json(orient='columns')
return result_sum
然后,我的代码
^{pr2}$输出是(num在id的列表[0,1,…,99]中)
{"num_1":{"item1":4}}
{"num_2":{"item19":6,"item20":4,"item18":4}}
...
{"num_99":{"item18":5,"item21":4,"item20":1}}
现在,我添加json dump函数,方法如下
for num in list(dataframe.['ID'].values):
...some code lines, to drop and merge columns, which create the...
...dataframe df_aux
values = function1(df_aux, ID)
print(values)
with open('data.json', 'w') as outfile:
json.dump(values, outfile)
但是前面的代码,只返回最后一个结果。当我打开data.json
文件时,它只出现"{"num_99":{"item18":5,"item21":4,"item20":1}}"
我需要将所有值保存在一个json文件中。我是python新手。如有任何提示,我们将不胜感激。谢谢!在
您只得到最后一行,因为每次for循环的迭代都会覆盖值。在
您可以声明一个名为
values
的数组并附加每个值。像这样:相关问题 更多 >
编程相关推荐