为了账号安全,请及时绑定邮箱和手机立即绑定

熊猫改变列的顺序

熊猫改变列的顺序

蓝山帝景 2021-09-25 10:10:53
在我的项目中,我使用 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"])


查看完整回答
反对 回复 2021-09-25
?
喵喔喔

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


查看完整回答
反对 回复 2021-09-25
  • 3 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信