📜  pandas 将 float 转换为 int - Python (1)

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

Pandas 将 float 转换为 int - Python

在数据分析或机器学习中,我们经常需要将浮点数转换为整数,因为整数更加容易处理,而且可以减小空间占用。Pandas是一个强大的数据处理库,支持从浮点数转换为整数。

使用 astype() 方法

Pandas中的astype()方法用于在Pandas DataFrame和Series中进行类型转换。下面的示例演示了如何使用astype()方法将浮点数转换为整数。

import pandas as pd

# 创建一个包含浮点数的Series
s = pd.Series([1.0, 2.0, 3.0, 4.0])

# 将Series中的浮点数转换为整数
s_int = s.astype(int)

# 打印转换后的Series
print(s_int)

输出:

0    1
1    2
2    3
3    4
dtype: int32

可以看到,astype()方法将浮点数转换为整数,并返回一个新的Series。

处理 NaN

在进行浮点数转换为整数时,如果存在NaN(Not a Number),则会出现错误。下面的示例演示了如何处理NaN。

import numpy as np
import pandas as pd

# 创建一个包含浮点数和NaN的Series
s = pd.Series([1.0, 2.0, np.nan, 4.0])

# 将Series中的浮点数和NaN转换为整数
s_int = s.fillna(0).astype(int)

# 打印转换后的Series
print(s_int)

输出:

0    1
1    2
2    0
3    4
dtype: int32

在这个示例中,我们使用fillna()方法将NaN替换为0,然后再使用astype()方法将浮点数和0转换为整数。

结论

在数据分析或机器学习中,将浮点数转换为整数是一个常见的任务。Pandas中的astype()方法可以轻松地完成这个任务,并且可以处理NaN。