如何在 Pandas 数据框中执行不同值的累加总和 - python

我有一个这样的数据框:

id    date         company    ......
123   2019-01-01        A
224   2019-01-01        B
345   2019-01-01        B
987   2019-01-03        C
334   2019-01-03        C
908   2019-01-04        C
765   2019-01-04        A
554   2019-01-05        A
482   2019-01-05        D

而且我想获取“公司”列随时间的唯一值的累积数量。因此,如果公司在以后出现,则不会再计算在内。

我的预期输出是:

date            cumulative_count
2019-01-01      2
2019-01-03      3
2019-01-04      3
2019-01-05      4

我试过了:

df.groupby(['date']).company.nunique().cumsum()

但是,如果同一家公司在不同的日期出现,则此重复计算。

参考方案

使用duplicated + cumsum + last

m = df.duplicated('company')
d = df['date']

(~m).cumsum().groupby(d).last()
date
2019-01-01    2
2019-01-03    3
2019-01-04    3
2019-01-05    4
dtype: int32

如何在 Pandas 数据框中执行字符串的左,右和中 - python

在熊猫数据框中,如何应用一种excel left('state',2)只接受前两个字母。理想情况下,我也想学习如何在数据框中使用左,右和中间。因此,对于此特定示例,需要一个等效而不是一个“技巧”。data = {'state': ['Auckland', 'Otago', 'Welling…

python :安装 python 后,如何导入 Pandas - python

我已经安装了 python 。现在,当我尝试跑步时import pandas as pd 我收到以下错误Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> import pandasFile ImportError: …

Python Pandas检查数据框是否不为空 - python

我有一个if语句,它在其中检查数据框是否为空。我的操作方式如下:if dataframe.empty: pass else: #do something 但实际上我需要:if dataframe is not empty: #do something 我的问题是-是否有一种.not_empty()方法可以实现这一目标?我还想问一下第二个版本在性能方面是否更好…

Python Pandas:按分组分组,平均? - python

我有一个像这样的数据框:cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6 我想计算每个集群每个组织的平均时间。预期结果:cluster mean(time) 1 15 ((8+6)/2+23)/2 2 54 (74+34)/2 3 6 我不知道如何在熊猫中做到这一点,有人可以帮忙吗? 参考方案 如…

如何更改索引和转置 Pandas - python

我是 Pandas 的新手,正在尝试在日期框架上进行一些转换,但到达了封闭路径。我的数据框是: entity_name request_status dcount 0 entity1 0 1 1 entity1 1 6 2 entity1 2 13 3 entity2 1 4 4 entity2 2 7 我需要此数据框如下所示:index 0 1 2 ent…