如何根据同一列中的以前值在列中生成值?

时间:2016-11-14 17:18:07

标签: python pandas

这是我的数据框

df=pd.Dataframe([{'RegionName':'Alabama', 'State':'Alabama'},
                {'RegionName':'Auburn', 'State':np.NaN},
                {'RegionName':'Florence', 'State':np.NaN},
                {'RegionName':'Arizona', 'State':'Arizona'},
                {'RegionName':'Flagstaff', 'State':np.NaN},
                {'RegionName':'Tempe', 'State':np.NaN}])

现在'州'奥本'的列和佛罗伦萨'应该是阿拉巴马州的弗拉格斯塔夫'和'坦佩'应该是亚利桑那州'。我如何用熊猫做到这一点?

1 个答案:

答案 0 :(得分:0)

你只想转发填写

df.ffill()

enter image description here

对评论的回复

pd.concat([d.iloc[1:] for _, d in df.ffill().groupby('State')])

enter image description here