我使用pandas=1.1.5
我想通過一個自定義的串列對一個基于索引的df進行排序。 自定義串列
- 可能沒有df的所有索引值 。
- 可能有不在 df 中的額外值 。
示例。公司AC不在有序串列中。 公司AA & C在有序串列中,但不在df索引中
公司AC不在有序串列中。
排序后 如何做到這一點?謝謝! uj5u.com熱心網友回復: 讓我們使用
標籤:||收入|成本||Firm AC| 1 |2 |
|B公司| 6 |3 |
|公司ZZ| 0 |10 |
Ordered_list= [Firm AA, Firm ZZ, Firm C, Firm B] 。
||收入|成本||公司ZZ| 0 |10 !
|B公司| 6 |3|
|Firm AC| 1 |2 |
sort_values與一個自定義的排序字典:# create dictionary with key as firm, value as order in the list
ordered_dict = {k: i for i, k in enumerate(Ordered_list)}.
# 用創建的字典按索引排序。
df.sort_index(key=lambda x: x.map(ordered_dict))
