我有一个看起来像这样的数据框:
company Amazon Apple Yahoo
name
A 0 130 0
C 173 0 0
Z 0 0 150
它是使用以下代码创建的:
import pandas as pd
df = pd.DataFrame({'name' : ['A', 'Z','C'],
'company' : ['Apple', 'Yahoo','Amazon'],
'height' : [130, 150,173]})
df = df.pivot(index="name", columns="company", values="height").fillna(0)
我要做的是name
根据预定义的列表对行(带有索引)进行排序["Z", "C", "A"]
。结果:
company Amazon Apple Yahoo
name
Z 0 0 150
C 173 0 0
A 0 130 0
我该如何实现?
你可以使用预定义的顺序设置指标reindex
像
In [14]: df.reindex(["Z", "C", "A"])
Out[14]:
company Amazon Apple Yahoo
Z 0 0 150
C 173 0 0
A 0 130 0
但是,如果按字母顺序排列,则可以使用 sort_index(ascending=False)
In [12]: df.sort_index(ascending=False)
Out[12]:
company Amazon Apple Yahoo
name
Z 0 0 150
C 173 0 0
A 0 130 0
如下所示,您需要将其分配给一些变量
In [13]: df = df.sort_index(ascending=False)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句