如何替换“.”在数据框中,如果它是单元格中的唯一值,如果它是十进制数的一部分,则不替换它?
这是数据框
id |
---|
2.2222 |
. |
. |
3.2 |
1.0 |
我尝试过这个,但它删除了所有小数
df = pd.DataFrame({'id':['2.2222','.','.','3.2','1.0']})
df['id'] = df['id'].str.replace('.','',regex=False)
不想要的结果:
id |
---|
22222 |
32 |
10 |
这就是想要的结果:
id |
---|
2.2222 |
3.2 |
1.0 |
您可以使用
.loc
进行替换:
df.loc[df['id'] == '.', 'id'] = ''