我有两个数据帧,其中一年中不同的季度作为列,特定的位置作为行:
温度:
<表类>q_1 q_2 q_3 q_4 tbody><<tr>10 50 0 5 B6 0 30 1 C60 2 9 16 表类>
我不知道lookup
的最佳替代方案,但这可能有效。
DF_new = pd.DataFrame({'temp_wettest': temp.stack().loc[list(map(tuple,prec.idxmax(axis=1).reset_index().to_numpy()))].tolist(),
'temp_driest' : temp.stack().loc[list(map(tuple,prec.idxmin(axis=1).reset_index().to_numpy()))].tolist(),
'precip_warmest': prec.stack().loc[list(map(tuple,temp.idxmax(axis=1).reset_index().to_numpy()))].tolist(),
'precip_coolest': prec.stack().loc[list(map(tuple,temp.idxmin(axis=1).reset_index().to_numpy()))].tolist()})
如果你有Pandas版本<1.2.0, trylookup
:
DF_new = pd.DataFrame({'temp_wettest': temp.lookup(prec.index, prec.idxmax(axis=1)),
'temp_driest' : temp.lookup(prec.index, prec.idxmin(axis=1)),
'precip_warmest': prec.lookup(temp.index, temp.idxmax(1)),
'precip_coolest': prec.lookup(temp.index, temp.idxmin(1))
})
输出:
temp_wettest temp_driest precip_warmest precip_coolest
0 10 0 1 0
1 0 1 12 13
2 2 16 3 20