pandas.series.array 属性有什么作用?
pandasserver side programmingprogramming更新于 2025/10/11 16:52:17
“.array” 是 Pandas 系列属性之一。它将返回一个包含系列中存储的值的 Pandas ExtensionArray。“.array”用于获取底层数据的零拷贝引用。
生成的数组与 NumPy 数组不同,它是一个 ExtensionArray,并且根据系列中存在的数据(dtype)具有不同的数组类型。
示例 1
import pandas as pd # 创建包含数值的 Pandas 系列 s1 = pd.Series([1,2,3,4]) print(s1) print(s1.array)
解释
"s1"是使用长度为 4 的整数值创建的 Pandas 系列对象。我们将 Pandas 数组属性应用于该系列对象 s1。
输出
0 1 1 2 2 3 3 4 dtype: int64 <PandasArray> [1, 2, 3, 4] 长度:4,dtype: int64
生成的 ExtensionArray 是针对系列对象"s1"创建的。可以从上面的输出块中看到,该块是 PandasArray。
示例 2
import pandas as pd
# 创建日期
date = pd.date_range("2021-06-01", periods=5, freq="M")
# 创建包含日期序列的 pandas Series
s2 = pd.Series(date)
print(s2)
print(s2.array)
解释
我们取一个包含日期时间序列值的 Series,并使用 Series 属性".array"获取一个 ExtensionArray。
输出
输出
0 2021-06-30 1 2021-07-31 2 2021-08-31 3 2021-09-30 4 2021-10-31 dtype: datetime64[ns] <DatetimeArray> ['2021-06-30 00:00:00', '2021-07-31 00:00:00', '2021-08-31 00:00:00', '2021-09-30 00:00:00', '2021-10-31 00:00:00'] Length: 5, dtype: datetime64[ns]
在下面的示例中,我们可以看到使用"array"属性创建的 DatatimeArray。此 DatatimeArray 是 ExtensionArray 的一种类型,适用于 Pandas 中的 DateTime 数据类型。
对于任何其他第三方数据类型,数组类型将仅为 ExtensionArray。

