Python 删除dataframe列中某个项及其后续项的所有引用
我有一个列名为Python 删除dataframe列中某个项及其后续项的所有引用,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个列名为0的数据框。以下是我编写的代码,用于删除所有出现的字符串&\n': df.drop(df[(df[0] == ' & \n')].index, inplace=True) 这是成功的 我希望做的是删除紧跟在我在上面代码中删除的行之后的行 我想到的一个方法是获取我需要进行的所有删除的索引 listofremovals = df.index[df[0] == ' & \n'].tolist() for i in range(len(listofremovals)):
0
的数据框。以下是我编写的代码,用于删除所有出现的字符串&\n'
:
df.drop(df[(df[0] == ' & \n')].index, inplace=True)
这是成功的
我希望做的是删除紧跟在我在上面代码中删除的行之后的行
我想到的一个方法是获取我需要进行的所有删除的索引
listofremovals = df.index[df[0] == ' & \n'].tolist()
for i in range(len(listofremovals)):
listofremovals.append(listofremovals[i]+1)
listofremovals.sort()
然后df.drop(移动列表,inplace=True)
这很好,但应该有一个更简单的方法,我正在寻找。用于下一行,用|
按原稿链按位或,最后用~
反转掩码删除行,用:
df = pd.DataFrame({
0:['new',' & \n','a',' & \n', 'w','ee']
})
print (df)
0
0 new
1 & \n
2 a
3 & \n
4 w
5 ee
m = (df[0] == ' & \n')
m1 = m.shift(fill_value=False)
df = df[~(m | m1)]
print (df)
0
0 new
5 ee