我的 Pandas 系列是通过对具有“var”和“month”列的 DataFrame 应用 groupby 操作并对相应数据应用 sum 得到的,如下所示(“var”和“month”是下面的索引): var monthX Feb -0.061575 Jan 1.366478Y Feb -1.310896Z Apr 0.053076 Feb 1.292415 Mar 0.375144P Feb 1.241288 Mar 0.613453我想要从上面的 DataFrame 创建的 JSON 格式,如下所示:'data':[{'label': 'X', 'data': ['Jan': 1.366478, 'Feb': -0.061575]}, ... ]我知道基本的 pandas.to_json()在这里可能不起作用。可能列表理解、lambda 函数等的组合可以在这里工作?我能想到的最接近的是:dict = {k: df[k].to_dict() for k in df.index.levels[0]}这种产生{'X': {'Feb': -0.06157474257929787, 'Jan': 1.366478487212244},'Y': ...}任何帮助表示赞赏。
2 回答
潇潇雨雨
TA贡献1833条经验 获得超4个赞
对我来说,我找到的解决方案是在一段代码下面(假设 group_data 保存已经按 DataFrame 上的数据分组的数据)。
group_dict = {k: group_data[k].to_dict() for k in group_data.index.levels[0]}
group_list = []
for k, v in group_dict.items():
dict = {'label': k, 'data': v}
group_list.append(dict)
BIG阳
TA贡献1859条经验 获得超6个赞
'data':[{'label': 'X', 'data': ['Jan': 1.366478, 'Feb': -0.061575]}, ... ]
这是一个无效的 json。内部列表没有意义
添加回答
举报
0/150
提交
取消