python pandas将str改为int
时间: 2024-10-01 22:08:59 浏览: 20
在Pandas中,如果你想将字符串类型的数值转换为整数(int),你可以使用`astype()`函数。假设你有一个Series或DataFrame,其一列是字符串形式的数字,例如:
```python
import pandas as pd
data = {
'numeric_column': ['1', '2', '3', '4.5', '5']
}
df = pd.Series(data)
# 将字符串转为整数,如果遇到非数字会报错
df_int = df.astype(int)
```
对于包含小数的部分,如`'4.5'`,上述操作会抛出异常,因为它们无法直接转换为整数。在这种情况下,你需要先清理数据,确保只有纯数字字符:
```python
def clean_and_convert(s):
return int(float(s)) if s.replace('.', '', 1).isdigit() else None
df['numeric_column'] = df['numeric_column'].apply(clean_and_convert)
df_int = df[df['numeric_column'].notnull()].astype(int)
```
这样只会保留可以转换为整数的字符串。