按轴号访问pandas轴

时间:2016-10-13 17:19:08

标签: python pandas

考虑pd.Panel pnpd.DataFrame df

import pandas as pd
import numpy as np

pn = pd.Panel(np.arange(27).reshape(3, 3, 3), list('XYZ'), list('abc'), list('ABC'))

pn.to_frame().rename_axis('item', 1).unstack()

enter image description here

df = pd.DataFrame(np.arange(9).reshape(3, 3), list('abc'), list('ABC'))

df

enter image description here

我可以使用items访问pn的{​​{1}}轴,pn.items columns df轴{/ 1}}。

问题
但是,如何使用df.columnsitems轴编号为pn的{​​{1}}轴为0?使用尽可能多的接受参数minor_axis的方法,我想象有一种通过数字访问轴的直接方法。

我做了什么
自定义功能

2
axis=0

1 个答案:

答案 0 :(得分:2)

使用.axes返回索引轴标签列表以及列轴标签,然后您可以通过切片符号访问它。

pn.axes
#[Index(['X', 'Y', 'Z'], dtype='object'),
# Index(['a', 'b', 'c'], dtype='object'),
# Index(['A', 'B', 'C'], dtype='object')]

然后,您可以提供切片来检索对象:

pn.axes[0]
#Index(['X', 'Y', 'Z'], dtype='object')

df.axes[0]
#Index(['a', 'b', 'c'], dtype='object')