【Pandas】pandas Series to_numpy
Pandas2.2 Series
Conversion
方法 | 描述 |
---|---|
Series.astype | 用于将Series对象的数据类型转换为指定类型的方法 |
Series.convert_dtypes | 用于将 Series 对象的数据类型智能地转换为最佳可能的数据类型的方法 |
Series.infer_objects | 用于尝试推断 Series 中对象(object)数据类型列的最佳数据类型 |
Series.copy | 用于创建该对象的索引和数据的副本 |
Series.bool | 用于将布尔类型的 Pandas Series 对象转换为一个单一的布尔值的方法 |
Series.to_numpy | 用于将 Pandas 的 Series 对象转换为 NumPy 数组 |
pandas.Series.to_numpy
pandas.Series.to_numpy
方法用于将 Pandas 的 Series 对象转换为 NumPy 数组。这在数据科学、机器学习和数值计算中非常有用,因为 NumPy 提供了高效的多维数组对象和相关操作。
语法
Series.to_numpy(dtype=None, copy=False, na_value=None)
参数
dtype
(可选): 要转换成的数据类型。如果为None
,则推断数据类型。copy
(可选): 是否返回数据的副本。如果为False
并且不需要转换数据类型,则可能返回原始数据的视图,以节省内存。na_value
(可选): 用于替换 NaN/None/NaT 等缺失值的值。如果为None
,则保留缺失值。
返回值
- 返回一个 NumPy 数组。
示例及结果
示例 1: 基本用法
import pandas as pd
import numpy as np
# 创建一个 Pandas Series
s = pd.Series([1, 2, 3, 4, 5])
# 将 Series 转换为 NumPy 数组
array = s.to_numpy()
print(array)
结果
[1 2 3 4 5]
示例 2: 指定数据类型
# 创建一个包含浮点数的 Pandas Series
s = pd.Series([1.1, 2.2, 3.3, 4.4, 5.5])
# 将 Series 转换为 NumPy 数组,并指定数据类型为整数
array = s.to_numpy(dtype=int)
print(array)
结果
[1 2 3 4 5]
示例 3: 复制数据
# 创建一个 Pandas Series
s = pd.Series([1, 2, 3, 4, 5])
# 将 Series 转换为 NumPy 数组,并复制数据
array = s.to_numpy(copy=True)
# 修改原始 Series
s[0] = 10
# 打印 NumPy 数组和修改后的 Series
print("NumPy Array:", array)
print("Modified Series:", s)
结果
NumPy Array: [1 2 3 4 5]
Modified Series: 0 10
1 2
2 3
3 4
4 5
dtype: int64
示例 4: 替换缺失值
# 创建一个包含缺失值的 Pandas Series
s = pd.Series([1, 2, None, 4, 5])
# 将 Series 转换为 NumPy 数组,并用特定值替换缺失值
array = s.to_numpy(na_value=-1)
print(array)
结果
[ 1. 2. -1. 4. 5.]
总结
pandas.Series.to_numpy
方法提供了一种简便的方式来将 Pandas Series 转换为 NumPy 数组,这在数据处理和分析中非常有用。通过指定数据类型、是否复制数据和缺失值替换选项,可以灵活地控制转换过程。