想象一下,我们有一个像这样的模拟pandas
数据帧:
x = [1, 1000, 1001]
y = [200, 300, 400]
cat = ['first', 'second', 'third']
df = pd.DataFrame(dict(speed = x, price = y, award = cat))
数据帧df
如下所示:
speed price award
0 1 200 first
1 1000 300 second
2 1001 400 third
如果我们想查看列的类型,则执行df.dtypes
并给出以下输出:
speed int64
price int64
award object
dtype: object
我的问题是:是否有获取此输出但列名按字母顺序排列的信息?所需的输出将是这样的:
award object
price int64
speed int64
dtype: object
P.D。我知道该怎么做,首先对df
进行排序,以使列以字母顺序(df.sort_index(axis=1, inplace=True)
)出现,然后执行dtypes
。但宁愿以更有效的方式做同样的事情。
答案 0 :(得分:3)
在Series.sort_index
之后使用DataFrame.dtypes
:
print (df.dtypes.sort_index())
award object
price int64
speed int64
dtype: object
或之前的DataFrame.sort_index
:
print (df.sort_index(axis=1).dtypes)