在我的项目中,我使用 Flask 我得到一个 JSON(通过 REST API),其中包含我应该转换为 Pandas Dataframe 的数据。JSON 看起来像:{ "entity_data":[ {"id": 1, "store": "a", "marker": "a"} ]}我得到 JSON 并提取数据:params = request.jsonentity_data = params.pop('entity_data')然后我将数据转换为熊猫数据框:entity_ids = pd.DataFrame(entity_data)结果如下所示: id marker store0 1 a a这不是列的原始顺序。我想像在字典中一样更改列的顺序。帮助?
3 回答
慕妹3146593
TA贡献1820条经验 获得超9个赞
只需添加列名称参数。
entity_ids = pd.DataFrame(entity_data, columns=["id","store","marker"])
喵喔喔
TA贡献1735条经验 获得超5个赞
假设您有权访问 JSON 发送方,您可以在 JSON 本身中发送订单。
喜欢
`{
"order":['id','store','marker'],
"entity_data":{"id": [1,2], "store": ["a","b"],
"marker": ["a","b"]}
}
然后创建columns指定的DataFrame 。正如 Chiheb.K. 所说
import pandas as pd
params = request.json
entity_data = params.pop('entity_data')
order = params.pop('order')
entity_df=pd.DataFrame(data,columns=order)
如果您不能在 JSON 中明确指定顺序。看到这个答案,指定object_pairs_hook在 JSONDecoder得到一个OrderedDict,然后创建DataFrame
添加回答
举报
0/150
提交
取消