我想用另一個值替換一個或多個特定值。
資料
ID Date hi hello
AA Q4.2022 1 0
BB Q4.2022 1 1
CC Q4.2022 HI111 1
期望的
ID Date hi hello
AA Q4.2022 1 0
BB Q4.2022 1 1
CC Q4.2022 1
正在做
我使用了這個陳述句,但是,這會洗掉所有值
df['hi'] = df['hi'].str.replace('HI111','')
任何建議表示贊賞。
uj5u.com熱心網友回復:
也許,數字是 int 型別;那么您可以嘗試to_numeric isna并在以下位置使用它mask:
df['hi'] = df['hi'].mask(pd.to_numeric(df['hi'], errors='coerce').isna(), '')
或者如果您也想將數字的型別更改為字串,您可以使用to_numeric fillna:astype(str)
df['hi'] = (pd.to_numeric(df['hi'], errors='coerce').fillna('')
.astype(str).str.split('.').str[0])
輸出:
ID Date hi hello
0 AA Q4.2022 1 0
1 BB Q4.2022 1 1
2 CC Q4.2022 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/434714.html
下一篇:逐行將NaN替換為列值
