假设我有一个数据帧。dataframe有三列foo1、foo2、foonname,共有4000行。每5行foonname中就有一个值'blah'。我想遍历dataframe,当foonname等于'blah'时,foo1的下4个值(那些没有填充blah值的值)被设置为foo1的值,其中foonname等于'blah'
我可以通过以下步骤来实现这一点:
i = 0
while i is <= len(dataframe):
if dataframe[fooName].values[i] = 'blah':
x = i + 5
dataframe['foo1'][i:x] = dataframe['foo1'].values[i]
else:
i = i + 1
return dataframe
这是可行的,但速度很慢。有没有什么方法可以做到这一点,但更有效的方式
IIUC那么以下应该可以
因此可以用
NaN
替换不满足条件的行,然后调用ffill
来向前填充值相关问题 更多 >
编程相关推荐