Python 将行值转换为下一行,但保持某些列值不变
我有以下数据帧:Python 将行值转换为下一行,但保持某些列值不变,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有以下数据帧: date forecast_price pool_price forecast_ail ail 1 2019-09-03 11:00:00 34.90 35.5 9964 9970 2 2019-09-03 12:00:00 34.95 36.6 10074 10078 3 2019-0
date forecast_price pool_price forecast_ail ail
1 2019-09-03 11:00:00 34.90 35.5 9964 9970
2 2019-09-03 12:00:00 34.95 36.6 10074 10078
3 2019-09-03 13:00:00 34.94 37.7 10130 10135
4 2019-09-03 14:00:00 50.90 NaN 9000 NaN
5 2019-09-03 15:00:00 60.95 NaN 10000 NaN
6 2019-09-03 16:00:00 70.94 NaN 12000 NaN
我想将第1行到第3行的内容复制到第3行到第6行,但我希望第4行到第6行的forecast_price和forecast_ail列值保持不变。我该怎么做呢
预期产出:
date forecast_price pool_price forecast_ail ail
1 2019-09-03 11:00:00 34.90 35.5 9964 9970
2 2019-09-03 12:00:00 34.95 36.6 10074 10078
3 2019-09-03 13:00:00 34.94 37.7 10130 10135
4 2019-09-03 14:00:00 50.90 35.5 9000 9970
5 2019-09-03 15:00:00 60.95 36.6 10000 10078
6 2019-09-03 16:00:00 70.94 37.7 12000 10135
我想你是想把它复制到第4到第6行 您可以使用:
df.loc[[4,5,6],['pool_price','ail']]=df.loc[[1,2,3],['pool_price','ail']]
为什么要复制?标准是什么?或者您只是想硬编码它?如果硬编码,那么
df.iloc[3:6[2,4]]=df.iloc[:3[2,4]].值