在 Pandas 中把对象转换为浮点型
在本教程中,我们将重点介绍在 Pandas 中把对象型列转换为浮点数。对象型列包含一个字符串或其他类型的混合,而浮点数包含十进制值。在本文中,我们将对以下 DataFrame 进行操作。
import pandas as pd
df = pd.DataFrame(
[["10.0", 6, 7, 8], ["1.0", 9, 12, 14], ["5.0", 8, 10, 6]],
columns=["a", "b", "c", "d"],
)
print(df)
print("---------------------------")
print(df.info())
输出:
a b c d
0 10.0 6 7 8
1 1.0 9 12 14
2 5.0 8 10 6
---------------------------
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 4 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 a 3 non-null object
1 b 3 non-null int64
2 c 3 non-null int64
3 d 3 non-null int64
dtypes: int64(3), object(1)
memory usage: 224.0+ bytes
None
注意列'a'
的类型,它是 object
类型。我们将使用 Pandas 中的 pd.to_numeric()
和 astype()
函数将这个对象转换为 float。
在 Pandas 中使用 astype()
方法将对象转换为 Float
Pandas 提供了 astype()
方法,用于将一列转换为特定类型。我们将 float
传递给该方法,并将参数 errors
设置为'raise'
,这意味着它将为无效值引发异常。例子:
import pandas as pd
df = pd.DataFrame(
[["10.0", 6, 7, 8], ["1.0", 9, 12, 14], ["5.0", 8, 10, 6]],
columns=["a", "b", "c", "d"],
)
df["a"] = df["a"].astype(float, errors="raise")
print(df.info())
输出:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 4 columns):
a 3 non-null float64
b 3 non-null int64
c 3 non-null int64
d 3 non-null int64
dtypes: float64(1), int64(3)
memory usage: 224.0 bytes
在 Pandas 中使用 to_numeric()
函数将对象转换为浮点型
Pandas 的 to_numeric()
函数可以用来将列表、系列、数组或元组转换为数字数据类型,也就是有符号、无符号的整型和浮点数类型。它还有 errors
参数来引发异常。下面是一个使用 to_numeric()
将对象类型转换为浮点类型的例子。
import pandas as pd
df = pd.DataFrame(
[["10.0", 6, 7, 8], ["1.0", 9, 12, 14], ["5.0", 8, 10, 6]],
columns=["a", "b", "c", "d"],
)
df["a"] = pd.to_numeric(df["a"], errors="coerce")
print(df.info())
输出:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 4 columns):
a 3 non-null float64
b 3 non-null int64
c 3 non-null int64
d 3 non-null int64
dtypes: float64(1), int64(3)
memory usage: 224.0 bytes
相关文章
在 Pandas DataFrame 中按索引删除列
发布时间:2024/04/21 浏览次数:183 分类:Python
-
本教程演示了如何在 pandas 中使用索引从 Dataframe 中删除列。
将 Pandas DataFrame 转换为 JSON
发布时间:2024/04/21 浏览次数:133 分类:Python
-
本教程演示了如何将 Pandas DataFrame 转换为 JSON 字符串。
在 Pandas 中加载 JSON 文件
发布时间:2024/04/21 浏览次数:97 分类:Python
-
本教程介绍了我们如何使用 pandas.read_json()方法将一个 JSON 文件加载到 Pandas DataFrame 中。
将 Pandas DataFrame 写入 CSV
发布时间:2024/04/21 浏览次数:174 分类:Python
-
本教程介绍了我们如何使用 pandas.DataFrame.to_csv()函数将 DataFrame 写入 CSV 文件。
将 NumPy 数组转换为 Pandas DataFrame
发布时间:2024/04/21 浏览次数:99 分类:Python
-
本教程介绍了如何使用 pandas.DataFrame()方法从 NumPy 数组生成 Pandas DataFrame。
比较 Pandas DataFrame 对象
发布时间:2024/04/21 浏览次数:62 分类:Python
-
本教程介绍了我们如何在 Python 中比较 Pandas DataFrame 对象。比较 DataFrames 对检查 DataFrames 之间的差异非常有帮助。