熊猫:用于输入优先级,可消除重复值

时间:2018-10-18 16:19:19

标签: python pandas

我有一个这样的大熊猫日期框架:

     FRUITS     COLOURS  
0     apple      red  
1     berry      black         
2     apple      green     
3     grapes     green    
4     apple      black          
5     grapes     red  
6     tomato     black
7     tomato     green  

请记住颜色红色>绿色>黑色的优先顺序,我想消除水果中所有重复的条目

所需的输出应为:

     FRUITS    COLOURS  
0     apple     red    
1     berry     black         
2     grapes    red  
3     tomato    green     

1 个答案:

答案 0 :(得分:2)

您可以通过将COLOUR设置为有序分类,然后排序并删除重复的FRUITS来设置顺序:

df['COLOURS'] = pd.Categorical(df['COLOURS'], categories=['red','green','black'],ordered=True)

df.sort_values('COLOURS').drop_duplicates('FRUITS').sort_index()

   FRUITS COLOURS
0   apple     red
1   berry   black
5  grapes     red
7  tomato   green