在问答中找不到这个,虽然觉得以前可能有人问过,所以如果是这样的话,请告诉我。
我有一个df,大约有10列和许多行。其中一列是标识符,比方说“站点”。数据没有很好的标签,而且只有每个站点的第一行有站点标识符," site“列中的以下行是NaN,直到下一个站点到达为止,在这种情况下,如果填充的话,同样只有第一行。例:
Site data1 data2
aa 2 3
NaN 5 6
NaN 2 3
bb 5 6
NaN 2 3
cc 5 6
NaN 2 3
NaN 2 3
NaN 2 3我想用前面的字符串填充nan值。df是非常大的,所以我不能手动为每一个。df中的其余数据应该保持不变。因此,预期产出:
Site data1 data2
aa 2 3
aa 5 6
aa 2 3
bb 5 6
bb 2 3
cc 5 6
cc 2 3
cc 2 3
cc 2 3发布于 2022-04-19 14:41:11
df = pd.DataFrame({'Site': ['aa', np.nan, np.nan, 'bb', np.nan, 'cc', np.nan, np.nan, np.nan],
'data1': [2, 5, 2, 5, 2, 5, 2, 2, 2], 'data2': [3, 6, 3, 6, 3, 6, 3, 3, 3]})
print(df.fillna(method='ffill'))填写“前方”方向
https://stackoverflow.com/questions/71926493
复制相似问题