📌  相关文章
📜  将列字符串转换为 int pandas - Python (1)

📅  最后修改于: 2023-12-03 15:09:34.537000             🧑  作者: Mango

将列字符串转换为 int pandas - Python

在 Pandas 中,将列字符串转换为 int 主要可以通过 astype() 方法来完成。

假定我们有一个 DataFrame 如下所示:

import pandas as pd

df = pd.DataFrame({
    'age': ['25', '33', '41', '27'],
    'salary': ['35000', '50000', '75000', '42000']
})

print(df)

输出:

  age salary
0  25  35000
1  33  50000
2  41  75000
3  27  42000

其中 agesalary 都是 str 类型,我们需要将它们转换为 int 数值类型,那么就可以使用 Pandas 提供的 astype() 方法,代码如下所示:

df['age'] = df['age'].astype(int)
df['salary'] = df['salary'].astype(int)
print(df.dtypes)

输出:

age        int32
salary     int32
dtype: object

可以看到,现在 agesalary 都变为了 int 类型。

值得注意的是,当 DataFrame 中包含非数字的字符串时,转换为 int 类型会出现错误。这时需要使用 to_numeric() 方法,将非数字的字符串转换为 NaN 或者指定错误值。具体用法请参考 Pandas 官方文档。

以上就是如何将列字符串转换为 int 类型的方法,通过 Pandas 中的 astype() 方法,可以将 DataFrame 中的任何列转换为任意类型。