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

熊猫数据帧:将值分配给多个单独的元素

熊猫数据帧:将值分配给多个单独的元素

守候你守候我 2022-08-16 16:07:09
我有以下数据帧:           Well_ID  BOPDDate                    2020-01-01     101     12020-01-02     102     22020-01-03     102     32020-01-04     101     12020-01-05     103     22020-01-03     101     3我想将其重新格式化为:            101  102  1032020-01-01  1.0  NaN  NaN2020-01-02  NaN  2.0  NaN2020-01-03  3.0  3.0  NaN2020-01-04  1.0  NaN  NaN2020-01-05  NaN  NaN  2.02020-01-06  NaN  NaN  NaN2020-01-07  NaN  NaN  NaN2020-01-08  NaN  NaN  NaN2020-01-09  NaN  NaN  NaN我可以使用 for 循环获得:for well, date, bopd in zip(wellTest['Well_ID'].tolist(),wellTest.index.to_list(),wellTest['BOPD'].to_list()):    wellTestBr.loc[date, well] = bopd真的认为应该有更好的方法。
查看完整描述

2 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

您正在寻找 :pivot


df.reset_index().pivot('Date', 'Well_ID', 'BOPD')


Well_ID     101  102  103

Date

2020-01-01  1.0  NaN  NaN

2020-01-02  NaN  2.0  NaN

2020-01-03  3.0  3.0  NaN

2020-01-04  1.0  NaN  NaN

2020-01-05  NaN  NaN  2.0


查看完整回答
反对 回复 2022-08-16
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

您可以并且:set_indexunstack


df.set_index(['Well_ID'], append=True)['BOPD'].unstack()

输出;


Well_ID     101  102  103

Date                     

2020-01-01  1.0  NaN  NaN

2020-01-02  NaN  2.0  NaN

2020-01-03  3.0  3.0  NaN

2020-01-04  1.0  NaN  NaN

2020-01-05  NaN  NaN  2.0


查看完整回答
反对 回复 2022-08-16
  • 2 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号