我有这个数据帧:
df = pandas.DataFrame({'A' : [data1|context1, data2|context2, data3|context3, data4|context4]})
结果:
A
0 data1|context1
1 data2|context2
2 data3|context3
3 data4|context4
我还有这个清单:
items = ['data1', 'data3']
我要获取数据帧行,这些行在列表中没有|的左边部分。如何仅按每行的左边部分过滤?我只知道如何按整行过滤,但不知道按部分过滤。你知道吗
结果应该是:
A
0 data2|context2
1 data4|context4
编辑:用pandas获得这个结果比在列表中获得值更有效?你知道吗
可以使用基于match的布尔掩码:
输出
语句
'^(?!{})'.format('|'.join(items))
变为^(?!data1|data3)
,这意味着既不以'data1'
开始,也不以'data3'
开始。如果您喜欢一行,您可以:使用
输出
这可以使用extract实现
输出:
相关问题 更多 >
编程相关推荐