我有一个使用Python的带有病人ID号的数据框,每个记录代表一个不同的约会。 在每次约会中,一个特征(dx)都记录为0或1。我想创建一个新的特征,该特征将dx特征相加,但仅适用于该患者。

patient_ID   |   dx   |   
 29847            0
 29847            1
 29847            0
 29847            1
 29847            1

我可以用一个简单的groupby语句获取组的总和:

df.groupby(['patient_ID])['dx'].sum()

但是我想将枚举值作为一项新功能,仅考虑当前和以前的记录:

patient_ID   |   dx   |   dx_enum
 29847            0         0
 29847            1         1
 29847            0         1
 29847            1         2
 29847            1         3

我想这将需要一个for循环和一个groupby语句的组合,但是到目前为止还没有成功。 感谢您的任何帮助,您可以提供!

#1楼 票数:0 已采纳

如果我明白你的意思,可以通过执行groupby然后调用transform并传递cumsum函数来添加列:

In [44]:

df['dx_enum'] = df.groupby('patient_ID')['dx'].transform(pd.Series.cumsum)
df
Out[44]:
   patient_ID  dx  dx_enum
0       29847   0        0
1       29847   1        1
2       29847   0        1
3       29847   1        2
4       29847   1        3

Transform返回与原始df对齐的序列,因此您可以将其添加为列,请参阅文档: http : //pandas.pydata.org/pandas-docs/stable/groupby.html#transformation

  ask by DKA translate from so

未解决问题?本站智能推荐:

1回复

在Python中按多个条件对数据进行分组

我想我有一个简单的问题,但我没有找到用简单的词在谷歌上搜索它的方法。 我有一个这样的原始数据集: 我有一个方法表来将这些原始数据整合成有用的东西。 看起来像: 所以,最后我想得到一个这样的表: 我最初的想法是做这样的事情:对于方法表中的每一行,对于方法表中的每个账户数,原始数据中的总和值。 两个问题
3回复

用变量存储分组数据

我对熊猫有一个一般性的问题。 我有一个名为d的DataFrame,其中包含有关公园的大量信息。 所有唯一的公园名称都存储在名为parks的数组中。 还有另一列带有位置ID的列,我想遍历parks数组并打印与该park名称相关的唯一位置ID计数。 给了我24824的计数。 给我的位置
3回复

Python每天按分钟分组

我有超过 30 天的日志数据。 我希望对数据进行分组,以查看 24 小时内总事件数最少的 15 分钟窗口。 数据格式如下: 2021-04-26 19:12:03, 上传 2021-04-26 11:32:03, 下载 2021-04-24 19:14:03, 下载 2021-04-22 1:9:
3回复

如何在python中对这个数据框进行分组?

我有这个问题: 如何操作我的数据框 df 以获得 df2? 我想总结时间列中与订单号对应的所有值。 我想使用时间最长的工作字段,特别是我想保留其余的数据。 新的数据框有 3 个订单,旧的有 5 个订单。
1回复

Python熊猫分组问题

我在这里做错了还是这里有错误。 df2是df1的副本/切片。 但是当我尝试按A列对其进行分组并从C列获取分组的最后一个值的那一刻,创建新列'NewMisteryColumn'时,df1也获得了一个新的'NewMisteryColumn' df2中的最终结果是正确的。 对于如何做到这一
1回复

根据Python中的列相似性对数据框进行分组

我在列名称组中有一个具有共同点的数据框: Sample1.Feature1 | Sample1.Feature2 | ... | Sample99.Feature1 | Sample99.Feature 2 我想重新排序为 |样本1 ...................
1回复

计算熊猫中可能的分组

我不知道如何以有效的方式计算熊猫列中可能的组。 我想将客户购买中重复次数最多的产品分类。 例如: 客户 产品 1 甲、乙 2 乙、丙、丁 3 甲、乙、丙 4
1回复

基于之前和之后单词的python单词分组

我正在尝试创建单词组。 首先,我数所有单词。 然后按字数确定前10个字。 然后,我想基于前10个单词创建10个单词组。每个组由位于该顶部单词之前和之后的所有单词组成。 我将调查结果存储在这样的python pandas数据框中 我还将答案列另存为字符串。 我正在使用以下代码在一