如何将pandas系列或索引转换为Numpy数组?

2024-04-19 17:36:44 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

要获取NumPy数组,应该使用values属性:

In [1]: df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=['a', 'b', 'c']); df
   A  B
a  1  4
b  2  5
c  3  6

In [2]: df.index.values
Out[2]: array(['a', 'b', 'c'], dtype=object)

这将访问数据的存储方式,因此无需进行转换。
注意:此属性也可用于许多其他熊猫的对象。

In [3]: df['A'].values
Out[3]: Out[16]: array([1, 2, 3])

要将索引作为列表获取,请调用tolist

In [4]: df.index.tolist()
Out[4]: ['a', 'b', 'c']

同样,对于列。

如果处理的是多索引数据帧,则可能只提取多索引的一个名称的列。你可以这样做

df.index.get_level_values('name_sub_index')

当然name_sub_index必须是FrozenListdf.index.names的元素

可以使用df.index访问索引对象,然后使用df.index.tolist()获取列表中的值。类似地,您可以对序列使用df['col'].tolist()

相关问题 更多 >