📅  最后修改于: 2023-12-03 15:10:32.642000             🧑  作者: Mango
在数据处理过程中,我们经常需要更改数据框中的列类型。例如,将字符串列转换为浮点数列,或将整数列转换为日期列。Python 语言提供了多种方法来更改数据框列类型。在本文中,我们将介绍常用的几种方法。
pandas.DataFrame.astype() 方法可以更改数据框中的列类型。该方法接受一个字典参数,字典的键表示列名,字典的值表示数据类型。
以下是一个示例:
import pandas as pd
# 创建一个数据框
df = pd.DataFrame({'A': ['1', '2', '3'], 'B': ['4', '5', '6']})
# 将 A 列的数据类型从字符串更改为整数
df['A'] = df['A'].astype(int)
# 输出数据框
print(df)
输出:
A B
0 1 4
1 2 5
2 3 6
pandas.to_numeric() 方法可以将序列中的值转换为数字类型。该方法接受一个序列作为参数。
以下是一个示例:
import pandas as pd
# 创建一个数据框
df = pd.DataFrame({'A': ['1', '2', '3'], 'B': ['4', '5', '6']})
# 将 A 列的数据类型从字符串更改为整数
df['A'] = pd.to_numeric(df['A'])
# 输出数据框
print(df)
输出:
A B
0 1 4
1 2 5
2 3 6
pandas.to_datetime() 方法可以将字符串转换为日期/时间类型。该方法接受一个序列作为参数,还可以指定日期/时间格式。
以下是一个示例:
import pandas as pd
# 创建一个数据框
df = pd.DataFrame({'A': ['2020-01-01', '2020-01-02', '2020-01-03'], 'B': ['4', '5', '6']})
# 将 A 列的数据类型从字符串更改为日期类型
df['A'] = pd.to_datetime(df['A'])
# 输出数据框
print(df)
输出:
A B
0 2020-01-01 4
1 2020-01-02 5
2 2020-01-03 6
在 Python 中,可以使用 pandas、numpy 等库来更改数据框列类型。本文介绍了 pandas 的三种方法:pandas.DataFrame.astype()、pandas.to_numeric()、pandas.to_datetime()。不同方法适用于不同的转换场景。希望本文可以帮助你更好地处理数据。