当dataframe的一列中同时存在数值和字符串,如何将字符串全部替换为0
时间: 2024-02-16 18:05:34 浏览: 133
数据结构的字符串替换
4星 · 用户满意度95%
您好,可以使用 Pandas 库中的 `.loc` 方法和字符串判断来实现:
```python
import pandas as pd
# 创建一个示例 dataframe
df = pd.DataFrame({'A': ['foo', 1, 'bar', 2, 'baz', 'spam']})
print(df)
# 使用 loc 方法和字符串判断将字符串替换为 0
df.loc[df['A'].apply(lambda x: isinstance(x, str)), 'A'] = 0
print(df)
```
这里使用了 `.apply()` 方法和 lambda 表达式来判断每个元素是否为字符串。如果是字符串,则将其替换为 0。
执行结果如下:
```
A
0 foo
1 1
2 bar
3 2
4 baz
5 spam
A
0 0
1 1
2 0
3 2
4 0
5 0
```
希望能帮到您!
阅读全文