比如一个dataframe有很多列,包括'id', 'date', 'location', 'sales', 'amount', 'type'
我想返回每天sales最大的那一行。我现在做的是
df.groupby(['date'], as_index=False).agg({'sales': max})但是这个只能返回date和sales,没有id, location, amount, type这类信息。
这么能得到每天sales最大的完整的行?
1个回答
只用groupby和agg估计做不到。我觉得你可以对date和sales排序,然后对date去重,只保留每个date的最后一行也就是sales最大的一行
df.sort_values(['date', 'sales']).drop_duplicates(['date'], keep='last')SofaSofa数据科学社区DS面试题库 DS面经
				太6了,原来不需要用groupby啊,多谢!
				- 
             robin_he
           
				
          
          2019-05-22 13:05
			
    
  相关讨论
  随便看看