具有一个日期和三个不同值的数据框:我怎样才能得到中间的那个?

Posted

技术标签:

【中文标题】具有一个日期和三个不同值的数据框:我怎样才能得到中间的那个?【英文标题】:Dataframe with one date and three distinct values: how can I get the one in the middle? 【发布时间】:2021-10-23 09:22:33 【问题描述】:

我在这里遇到了一个问题。我有一个数据框,其中包含两个应用程序的每日下载量。然而,我每天都有 3 个不同的下载量:付费下载量(最高值)、自然下载量(最小值)和其他(中间值)。

它们没有标签,所以我唯一知道的是我需要对这三个值进行排序并获得中间的那个。原始数据集如下所示:

id date downloads
100 2018-01-05 2000
100 2018-01-05 45000
100 2018-01-05 44000
110 2018-01-05 3000
110 2018-01-05 7000
110 2019-01-05 8000
100 2018-01-06 9000
100 2019-01-06 77000
100 2020-01-06 75000
110 2018-01-06 1000
110 2019-01-06 6000
110 2020-01-06 9000

我需要的最终结果是这样的:

id date downloads
100 2018-01-05 44000
110 2018-01-05 7000
100 2018-01-06 75000
110 2018-01-06 6000

你们能帮我解决这个问题吗?

谢谢!

【问题讨论】:

【参考方案1】:

使用groupbynth 取第二个元素:

df.groupby(['id', 'date'], as_index=False).nth(1)

【讨论】:

以上是关于具有一个日期和三个不同值的数据框:我怎样才能得到中间的那个?的主要内容,如果未能解决你的问题,请参考以下文章

我怎样才能得到一个值的二进制表示[重复]

jquery怎样把日期控件输入的日期写入span,绑定日期控件的输入框不输入任何内容?

我们怎样才能得到一个情节箱线图背后的不同统计数据?

我需要从 sql 中选择具有不同值的列

Pandas:合并具有不同索引和缺失值的两个数据框

如何匹配和合并两个具有完全不同值的数据框,数据框列中的数字除外?