pandas 转换数据类型 ValueError: invalid literal for int() with base 10: '3,305'
时间: 2023-11-22 13:47:56 浏览: 159
Pandas实现数据类型转换的一些小技巧汇总
当我们在使用 Pandas 进行数据分析时,经常需要对数据类型进行转换。在转换数据类型时,有时会遇到 ValueError: invalid literal for int() with base 10: '3,305' 这样的错误。这是因为数据中包含了逗号等非数字字符,无法直接转换为整型数据类型。下面是解决该问题的方法:
1. 首先,我们需要将数据中的逗号等非数字字符去掉,可以使用 Pandas 的 str.replace() 方法来实现:
```python
df['col_name'] = df['col_name'].str.replace(',', '')
```
2. 然后,我们可以使用 Pandas 的 astype() 方法将数据类型转换为整型:
```python
df['col_name'] = df['col_name'].astype(int)
```
需要注意的是,如果数据中包含空值 NaN,需要先将其填充或删除,否则会出现与上述类似的错误。
阅读全文