重复B列中的值,直到python中的A列中发生更改 [英] Repeat the value in column B until there is change occur in column A in python

查看:63
本文介绍了重复B列中的值,直到python中的A列中发生更改的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是python的新手,有一个查询.我需要在B列中重复该值,直到A列中发生更改.

I'm new to python and have a query. I need the value repeated in column B until a change occur in column A.

以下是示例数据:

A   B
18  1
18  0
18  0
24  2
24  0
24  0
24  0
10  3
10  0
10  0

我想要我的输出

Column A  Column B
18         1
18         1
18         1
18         1
24         2
24         2
10         3
10         3
10         3
10         3

请帮助我.谢谢

推荐答案

您可以使用另一种不依赖于Column A的解决方案- replace 0值,并按

Another solution which dont depends of Column A - replace 0 values by NaN, use forward filling by ffill and last cast to int:

df['Column B'] = df['Column B'].replace(0,np.nan).ffill().astype(int)
print (df)
   Column A  Column B
0        18         1
1        18         1
2        18         1
3        18         1
4        24         2
5        24         2
6        10         3
7        10         3
8        10         3
9        10         3

这篇关于重复B列中的值,直到python中的A列中发生更改的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆