如何根据条件替换基于先前值的列值,以及如何从数据框中选择行

我有两个X1和X2列的数据框

第一件事:在X2中,我的值为0和1,如果在X2中值为1(当此值从1变为零时),则在接下来的20行中应为1而不是零。

例如 :

X2=(0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

desired X2=(0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)

第二件事情:如果X1=0X2=1再从数据框中选择行,直到X2值保持1我想这段代码,但它选择只有一行。

df1=df[(df['X1'] == 0) & (df['X2'] ==1)]
生态危害

编辑以包括两个部分:

# First Thing:
df['X2'] = df['X2'].replace({0: np.nan}).ffill(limit=20).fillna(0)

# Second Thing:
df.loc[(df['X1'] == 0) & (df['X2'] == 1), 'new X2'] = 1
df.loc[(df['X2'] == 0), 'new X2'] = 0
df['new X2'] = df['new X2'].ffill()
df.loc[df['new X2'] == 1] # Selected Rows

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在数据框中选择基于列值相似的行

如何根据条件用NaN替换数据框列值?

如何根据另一个数据框中的日期时间条件从数据框中选择列的值?

如何根据数据框中的先前值创建列

如何根据一列中的条件从多索引数据框中选择行

如何根据范围表中的值从数据框中选择行

如何根据条件替换熊猫数据框中的值?

如何基于大于行值的条件选择列值

如何基于列值从DataFrame中选择行?

如何检查同一数据框列中是否存在重复值,以及如何根据频率通过删除行来应用条件(条件)?

如何根据列值从 DataFrame 中选择行?

如何根据列值从 df 中选择行组合?

如何根据“标识符列”和熊猫数据框中的附加条件替换值?

根据存储在不同数据框中的行和列标签从熊猫数据框中选择值

根据列值选择数据框的行

Pandas:如何根据特定列上特定值的条件选择数据框中的行

根据行条件从熊猫数据框中选择列

如何根据条件对熊猫数据框的行值进行排序?

如何根据另一个数据框条件替换数据框列中的值

根据重复的值从分组的数据框中选择行

如何根据条件从数据框列名称填充列值?

如何基于列值的“或”运算符选择数据框中的行

根据两列的函数在 Pandas 数据框中选择列值最大的行

根据最大列值从列表中选择数据框

根据R中的动态值从数据框中选择列

根据列值从列表中选择数据框

如何根据具有一系列值的条件替换 pd 数据框列中的值?

如何在熊猫数据框中基于多列值条件排除行?

如何根据条件更新数据框值?