如何使用 Pandas 的 astype方法将数据类型转换为int64

如何使用 Pandas 的 astype方法将数据类型转换为int64

参考:pandas astype int64

在数据处理和分析中,经常需要对数据的类型进行转换,以满足数据处理的需求。PandasPython 的一个强大的数据处理库,它提供了丰富的数据结构和数据操作功能。本文将详细介绍如何使用 Pandasastype 方法将数据类型转换为 int64

1. 简介

在 Pandas 中,astype 方法用于转换数据帧(DataFrame)或者序列(Series)中的数据类型。当我们需要将数据列的类型转换为整数类型 int64 时,astype 方法非常有用。这种类型转换常见于数据清洗过程中,例如,将数字型字符串转换为整数类型,或者在处理缺失值后将浮点数转换为整数。

2. 基本用法

使用 astype 方法将数据类型转换为 int64 非常简单。以下是基本的语法结构:

DataFrame或Series.astype('int64')

这里,DataFrame或Series 是你要转换的 Pandas 数据帧或序列。

3. 示例代码

示例 1: 将整个 DataFrame 的数据类型转换为 int64

import pandas as pd

data = {'column1': ['1', '2', '3'], 'column2': ['4', '5', '6']}
df = pd.DataFrame(data)
df = df.astype('int64')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 2: 将特定列的数据类型转换为 int64

import pandas as pd

data = {'column1': ['1', '2', '3'], 'column2': ['4.0', '5.1', '6.2']}
df = pd.DataFrame(data)
df['column1'] = df['column1'].astype('int64')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 3: 处理带有缺失值的列

import pandas as pd

data = {'column1': ['1', '2', None], 'column2': ['4.0', '5.1', '6.2']}
df = pd.DataFrame(data)
df['column1'] = df['column1'].astype('float').astype('int64', errors='ignore')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 4: 将多个列的数据类型转换为 int64

import pandas as pd

data = {'column1': ['1', '2', '3'], 'column2': ['4', '5', '6'], 'column3': ['7', '8', '9']}
df = pd.DataFrame(data)
df = df.astype({'column1': 'int64', 'column2': 'int64', 'column3': 'int64'})
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 5: 将 Series 的数据类型转换为 int64

import pandas as pd

s = pd.Series(['1', '2', '3'])
s = s.astype('int64')
print(s)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 6: 处理浮点数和整数混合的列

import pandas as pd

data = {'column1': [1.0, 2.5, 3.1], 'column2': [4, 5, 6]}
df = pd.DataFrame(data)
df['column1'] = df['column1'].astype('int64')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 7: 转换时忽略错误

import pandas as pd

data = {'column1': ['1', 'two', '3'], 'column2': ['4', '5', '6']}
df = pd.DataFrame(data)
df['column1'] = df['column1'].astype('int64', errors='ignore')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 8: 使用字典同时转换多列为不同类型

import pandas as pd

data = {'column1': ['1', '2', '3'], 'column2': ['4.0', '5.1', '6.2'], 'column3': ['7', '8', '9']}
df = pd.DataFrame(data)
df = df.astype({'column1': 'int64', 'column2': 'float', 'column3': 'int64'})
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 9: 将日期时间字符串转换为 int64 时间戳

import pandas as pd

data = {'date': ['2021-01-01', '2021-01-02', '2021-01-03']}
df = pd.DataFrame(data)
df['date'] = pd.to_datetime(df['date']).astype('int64')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

示例 10: 处理包含负数的列

import pandas as pd

data = {'column1': ['-1', '-2', '-3'], 'column2': ['4', '5', '6']}
df = pd.DataFrame(data)
df['column1'] = df['column1'].astype('int64')
print(df)

Output:

如何使用 Pandas 的 astype方法将数据类型转换为int64

4. 总结

在本文中,我们详细介绍了如何使用 Pandas 的 astype 方法将数据类型转换为 int64。我们通过多个示例展示了如何在不同情况下进行类型转换,包括处理整个 DataFrame、特定列、带有缺失值的列以及多种数据类型的列。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程