我试图用上面的单元格替换包含某些字符串的单元格:
尝试下面的代码,但是花费的时间太长并导致错误:
row, col = df.shape
for i in range(1,row):
if df.iloc[i,0] == "string":
df.iloc[i,0] = df.iloc[i-1,0]
是否有更好的方法来实现这一目标?谢谢。
答案 0 :(得分:3)
这类问题的一般结构是df.loc [cond,col] = ...
使用@meW的设置,
df = pd.DataFrame({'col': ['Elephant', 'Grass', 'Parameter', 'Root']})
df.loc[df.col.eq('Parameter'), 'col'] = df.col.shift(1)
col
0 Elephant
1 Grass
2 Grass
3 Root