我的数据框如下:
code:
df =
Car measurements Before After
amb_temp 30.268212 26.627491
engine_temp 41.812730 39.254255
engine_eff 15.963645 16.607557
avg_mile 0.700160 0.733307
cor_mile 0.761483 0.787538
预期输出:
modified_df =
index amb_temp_Before amb_temp_after engine_temp_Before engine_temp_after ...
0 30.268212 26.627491 41.812730 39.254255 ...
当前输出:
print(df.pivot(columns='index',value=['Before','After']))
amb_temp engine_temp amb_temp
0 30.268212 NaN NaN NaN NaN 26.627491 NaN NaN NaN NaN
1 NaN NaN NaN 41.81273 NaN NaN NaN NaN 39.254255 NaN
2 NaN NaN NaN NaN 15.963645 NaN NaN NaN NaN 16.607557
3 NaN NaN 0.70016 NaN NaN NaN NaN 0.733307 NaN NaN
4 NaN 0.761483 NaN NaN NaN NaN 0.787538 NaN NaN NaN
你可以通过一些堆叠来做到这一点:
tmp = df.set_index("Car measurements").stack()
tmp.index = ["_".join(i) for i in tmp.index]
result = tmp.to_frame().T
不过,为什么你想这样做,我无法理解,因为原始数据框更容易分析。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)