pandas中groupby可以对数据进行分组处理。分组之后利用apply函数可以对组内元素进行更多操作。
1. to_list(),list()和values属性
to_list()和list()都可将特定series数据转换成list数据格式;values属性则可将其转换为array格式。
> 苹果["销量"].head().to_list()
[6, 7, 2, 3, 5]
> list(苹果["销量"].head())
[6, 7, 2, 3, 5]
>苹果["销量"].head().values
array([6, 7, 2, 3, 5])
2. 组内排序,取出前n个元素
> groups_var.apply(
lambda x: x.sort_values("销量", ascending=False).head(2).index.to_list())
产地
山东烟台 [9, 346]
山西临猗 [264, 272]
新疆阿克苏 [194, 332]
甘肃天水 [68, 256]
陕西洛川 [83, 74]
dtype: object