在Pandas Dataframe中为一个或多个列更改数据类型

在Pandas Dataframe中为一个或多个列更改数据类型

在本教程中,我们将学习将一个或多个列的数据类型转换为另一种数据类型。我们将使用方法 DataFrame.astype() 方法。

我们必须传递来自 Python、Pandas或Numpy 中的任何数据类型来更改列元素的数据类型。我们还可以提供一个选定列的字典,以更改特定列元素的数据类型。让我们看看代码示例。

示例

# 导入pandas库
import pandas as pd
# 创建DataFrame
data_frame = pd.DataFrame({'No': [1, 2, 3], 'Name': ['Tutorialspoint', 'Mohit', 'Sharma'], 'Age': [25, 32, 21]})
# 将所有列的数据类型更改为str
data_frame = data_frame.astype(str)
# 使用data_frame.dtypes方法检查数据类型
print(data_frame.dtypes)

输出

所有列的数据类型都更改为str对象。如果运行上述程序,将得到以下结果。

No     object
Name   object
Age    object
dtype: object

现在,让我们尝试将Age列的数据类型从int更改为str。我们必须创建指定列名和所需数据类型的字典。

示例

# 导入pandas库
import pandas as pd
# 创建DataFrame
data_frame = pd.DataFrame({'No': [1, 2, 3], 'Name': ['Tutorialspoint', 'Mohit', 'Sharma'], 'Age': [25, 32, 21]})
# 创建包含列名和数据类型的字典
data_types_dict = {'Age': str}
# 通过将字典给astype方法,我们将更改Age列的数据类型为str
data_frame = data_frame.astype(data_types_dict)
# 使用data_frame.dtypes方法检查数据类型
print(data_frame.dtypes)

输出

如有输出结果,只有 Age 列的数据类型从int更改为str。请查看以下结果。

No      int64
Name   object
Age    object
dtype: object

结论

如果在跟随本教程时遇到任何困难,请在评论部分提到它们。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程