在Python中循环以查找每个命运的最大值

2024-09-27 21:25:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python相当陌生。我与nycflights13 df合作

我的目标是确定每个命运最常见和最不常见的起源

+---------+--------------------+-----------+---------------------+------------+
| destiny | most_common_origin | max_count | least_common_origin |  min_count |
+---------+--------------------+-----------+---------------------+------------+
| MIA     | LGA                |      5781 | EWR                 |       2633 |
+---------+--------------------+-----------+---------------------+------------+

我成功地做到了这一点,但我在循环和绑定行时遇到了麻烦,因为有时我会得到一个系列

我的工作示例

from nycflights13 import flights

flights_to_MIA = flights[flights['dest']=='MIA']
flights_to_MIA.groupby(flights_to_MIA['origin']).size().reset_index(name='counts')

注意,我使用了size,然后reset.index使其成为df


Tags: to目标dfsizeindexcountorigincommon
1条回答
网友
1楼 · 发布于 2024-09-27 21:25:59

您可以选中agg+value_counts

s=df.groupby('dest').agg(most_common_origin=('origin',lambda x : x.mode()[0]),
                              max_count=('origin',lambda x : x.value_counts().sort_values().iloc[-1]),
                              least_common_origin=('origin',lambda x : x.value_counts().sort_values().iloc[[0]].index),
                              min_count=('origin',lambda x : x.value_counts().sort_values().iloc[0]))

相关问题 更多 >

    热门问题