擅长:python、mysql、java
<p>使用字典对项目进行排序:</p>
<pre><code>order_dict = {'PHD' : 0, 'MBA' : 1, 'Masters' : 2,'Bachelors':3, 'Others' : 4}
df.assign(key=df["Degree"].map(order_dict)).sort_values(["ID", "key"]).drop(
"key", axis=1
)
</code></pre>
<hr/>
<pre><code>print(df)
ID Degree
2 1 PHD
1 1 Masters
0 1 Bachelors
3 2 Bachelors
4 2 Others
5 3 PHD
6 3 Masters
</code></pre>
<p>如果您想要唯一,只需添加<code>drop_duplicates</code>和ID上的子集:</p>
<pre><code>print(df.assign(key=df["Degree"].map(order_dict)).sort_values(["ID", "key"]).drop(
"key", axis=1
).drop_duplicates(subset=['ID'],keep='first'))
</code></pre>
<hr/>
<pre><code> ID Degree
2 1 PHD
3 2 Bachelors
5 3 PHD
</code></pre>