从第三列为1的另一列中的最后一个值创建pandas df列

约翰尼斯·鲍尔(Johannes Bauer)

说,我有一个像这样的DataFrame:

import pandas as pd
import numpy as np
df =  pd.DataFrame({'data' : np.arange(10), 'trigger' : np.random.randint(0,2, size=10)})

我想获得第三列,该列在第i行中包含“数据”列的值,该列的最大索引小于i的“触发器”为1。

天真的实现是这样的:

lastdata = df.iloc[0]['data']
wanted = []
for _,row in df.iterrows():
    if row['trigger']:
        lastdata = row['data']
    wanted.append(lastdata)
df['wanted'] = wanted

是否有其他(有效的)方法可以在不遍历数据帧的情况下实现此目的?

迷恋

好了,你去:

df['wanted'] = pd.Series(df.index*df['trigger']).cummax().apply( lambda i:df.loc[i,'data'])

第一行在第一次触发发生之前使用data [0]。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果另一列中的某个值是离群值,如何在R中创建一个新的列,该列为1?

来自分类Dev

根据另一列中的匹配值和第三列中的第一个值的不同出现,对一列中的值求和

来自分类Dev

Pandas df-如果最后一列为空,则用数字复制最后一列

来自分类Dev

创建新列,按组包含另一列的最后一个值

来自分类Dev

如何通过检查2列中的值来将1 df的列映射为另一个df

来自分类Dev

PowerShell:列出CSV文件行,其中第三列和最后一列之间至少有一个值等于“ 0”或“ 1”

来自分类Dev

pandas:从一个df中搜索包含列表的另一个df列中的列值

来自分类Dev

根据熊猫数据框中另一列的最后一个值填充列

来自分类Dev

使用 for 循环创建一个列,其值 1:n 以与另一列匹配的间隔为条件

来自分类Dev

Pandas:当列值与另一个 DF 的列值匹配时提取 DF 的行

来自分类Dev

根据 Pandas 中另一列中相似值的分组创建一个新列

来自分类Dev

Pandas 根据另一列的非空值创建一个新列

来自分类Dev

如何创建一个新的 DF,其中最后一列乘以 3/2 过滤另一个 DF 的 ID #?

来自分类Dev

选择行中的最后一个值并将其放在另一列中

来自分类Dev

熊猫-创建一个新列,在另一列中填充观察值

来自分类Dev

根据df中的另一列值选择df pandas中的元素

来自分类Dev

根据pandas中另一列的状态创建一个新列

来自分类Dev

根据另一列的唯一性获取1列的pandas df中的所有值

来自分类Dev

在一个列中找到与另一列匹配的值,然后将该值放入第三列(Excel 2010)

来自分类Dev

pandas:使用与另一个df中的索引和列匹配的值填充df列

来自分类Dev

从另一个列更改df中的列

来自分类Dev

根据一列中的值(以另一列为条件)按顺序对数据进行排序

来自分类Dev

基于组的另一列中的值在一个列上创建值

来自分类Dev

将一个 df 中的每一列除以 Python 中另一个 df 中的每一列

来自分类Dev

如何使用x轴值为n减去1列且最后一列为因变量的pandas数据框绘制散点图?

来自分类Dev

我想在另一列下面附加一个 df 列并根据其他列分配行值

来自分类Dev

创建一个新列以标识两列是否相同,但在第三列中具有不同的值

来自分类Dev

在 Pandas 中创建一列,计算另一列中唯一值的数量

来自分类Dev

由另一列值分割在DF列

Related 相关文章

  1. 1

    如果另一列中的某个值是离群值,如何在R中创建一个新的列,该列为1?

  2. 2

    根据另一列中的匹配值和第三列中的第一个值的不同出现,对一列中的值求和

  3. 3

    Pandas df-如果最后一列为空,则用数字复制最后一列

  4. 4

    创建新列,按组包含另一列的最后一个值

  5. 5

    如何通过检查2列中的值来将1 df的列映射为另一个df

  6. 6

    PowerShell:列出CSV文件行,其中第三列和最后一列之间至少有一个值等于“ 0”或“ 1”

  7. 7

    pandas:从一个df中搜索包含列表的另一个df列中的列值

  8. 8

    根据熊猫数据框中另一列的最后一个值填充列

  9. 9

    使用 for 循环创建一个列,其值 1:n 以与另一列匹配的间隔为条件

  10. 10

    Pandas:当列值与另一个 DF 的列值匹配时提取 DF 的行

  11. 11

    根据 Pandas 中另一列中相似值的分组创建一个新列

  12. 12

    Pandas 根据另一列的非空值创建一个新列

  13. 13

    如何创建一个新的 DF,其中最后一列乘以 3/2 过滤另一个 DF 的 ID #?

  14. 14

    选择行中的最后一个值并将其放在另一列中

  15. 15

    熊猫-创建一个新列,在另一列中填充观察值

  16. 16

    根据df中的另一列值选择df pandas中的元素

  17. 17

    根据pandas中另一列的状态创建一个新列

  18. 18

    根据另一列的唯一性获取1列的pandas df中的所有值

  19. 19

    在一个列中找到与另一列匹配的值,然后将该值放入第三列(Excel 2010)

  20. 20

    pandas:使用与另一个df中的索引和列匹配的值填充df列

  21. 21

    从另一个列更改df中的列

  22. 22

    根据一列中的值(以另一列为条件)按顺序对数据进行排序

  23. 23

    基于组的另一列中的值在一个列上创建值

  24. 24

    将一个 df 中的每一列除以 Python 中另一个 df 中的每一列

  25. 25

    如何使用x轴值为n减去1列且最后一列为因变量的pandas数据框绘制散点图?

  26. 26

    我想在另一列下面附加一个 df 列并根据其他列分配行值

  27. 27

    创建一个新列以标识两列是否相同,但在第三列中具有不同的值

  28. 28

    在 Pandas 中创建一列,计算另一列中唯一值的数量

  29. 29

    由另一列值分割在DF列

热门标签

归档