我想选择数据框中 A 列(字符串)不以 B 列(字符串)开头的所有行。我使用了
df[not df['A'].str.startswith(df['B']) ]
但它显示的不是 bool 值。
例如:
A B
1. abcdef abc
2. ab cd
3. ef g
那么需要的输出是:
例如:
A B
1. ab cd
2. ef g
请帮忙。
最佳答案
你可以这样做:
In [250]: data={'A': ['abcdef', 'ab', 'ed'],
...: 'B': ['abc', 'cd','g']}
...: df = pd.DataFrame(data)
In [251]: df
Out[251]:
A B
0 abcdef abc
1 ab cd
2 ed g
In [248]: df[~df.A.str.contains('|'.join(df.B))]
Out[248]:
A B
1 ab cd
2 ed g
关于python - Pandas : select row where column A does not begin with column B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61718616/