dataframe只打印第一行_只标记DataFram中满足条件的第一行

该博客讲述了如何在Python的pandas DataFrame中创建一个新的列`hit_first`,该列用于标记满足特定条件(`abs(y)>0.9`)的第一行。通过示例代码展示了如何处理数据并设置新列,最终目标是突出显示数据帧中第一次出现条件为真的行。
摘要由CSDN通过智能技术生成

我有以下数据帧df,可以按如下方式创建:date_today = datetime.now().date()

days = pd.date_range(date_today, date_today + timedelta(19), freq='D')

x = np.arange(0,2*np.pi,0.1*np.pi) # start,stop,step

y = np.sin(x)

df = pd.DataFrame({'dates': days, 'vals': y, 'is_hit': abs(y)>0.9})

df = df.set_index('dates')

看起来像这样:

^{pr2}$

我想第一次标记is_hit条件为True的行,这样预期的新列hit_first将是:is_hit vals hit_first

dates

2019-03-27 False 0.000000e+00 False

2019-03-28 False 3.090170e-01 False

2019-03-29 False 5.877853e-01 False

2019-03-30 False 8.090170e-01 False

2019-03-31 True 9.510565e-01 True

2019-04-01 True 1.000000e+00 False

2019-04-02 True 9.510565e-01 False

2019-04-03 False 8.090170e-01 False

2019-04-04 False 5.877853e-01 False

2019-04-05 False 3.090170e-01 False

2019-04-06 False 1.224647e-16 False

2019-04-07 False -3.090170e-01 False

2019-04-08 False -5.877853e-01 False

2019-04-09 False -8.090170e-01 False

2019-04-10 True -9.510565e-01 True

2019-04-11 True -1.000000e+00 False

2019-04-12 True -9.510565e-01 False

2019-04-13 False -8.090170e-01 False

2019-04-14 False -5.877853e-01 False

2019-04-15 False -3.090170e-01 False

如何创建这个hit_first列?在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值