Python Pandas用上面的单元格替换了包含字符串的单元格

时间:2019-02-27 04:01:07

标签: python pandas replace

我试图用上面的单元格替换包含某些字符串的单元格:

尝试下面的代码,但是花费的时间太长并导致错误:

    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]

是否有更好的方法来实现这一目标?谢谢。

1 个答案:

答案 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