Вы можете сделать это в одной строке следующим образом:
Метод-1:
ID = `eee`
df.iloc[:,0].loc[df.iloc[:,0]==ID] = 0
Вывод :
C1 C2
0 aaa bbb
1 ccc ddd
2 0 fff
3 ggg eee hhh
Метод-2:
Используйте pandas.Dataframe.replace
метод.
df.iloc[:,0].replace(to_replace=ID, value=0, regex=False)
Выход :
C1 C2
0 aaa bbb
1 ccc ddd
2 0 fff
3 ggg eee hhh
Если выустановите regex=True
, который может корректировать строки на основе других вхождений ID
. Выход :
C1 C2
0 aaa bbb
1 ccc ddd
2 0 fff
3 0 hhh
Фиктивные данные
df = pd.DataFrame([['aaa','bbb'],['ccc','ddd'],['eee','fff'],['ggg eee','hhh']], columns=['C1','C2'])
print(df)
Выход :
C1 C2
0 aaa bbb
1 ccc ddd
2 eee fff
3 ggg eee hhh