2024-10-02 16:21:09 发布
网友
我试图获取一个布尔索引,以确定一列是否包含另一列中同一行的字符串:
a b boop beep bop zorp zorpfoo zip foo zip fa
在检查b列是否包含字符串时,我想得到:
现在我正在尝试这种方法,但速度很慢:
df.apply(lambda row: row['a'] in row['b'], axis=1)
有没有.str方法?在
from random import sample from string import lowercase from pandas import DataFrame df = DataFrame({ 'a': map(lambda x: ''.join(sample(lowercase, 2)), range(100000)), 'b': map(lambda x: ''.join(sample(lowercase, 5)), range(100000)) }) %time map(lambda (x, y): x in y, zip(df['a'], df['b'])) %time df.apply(lambda x: x[0] in x[1], axis=1)
在数据框应用(…,轴=1)非常慢!你应该避免使用它!在
相关问题 更多 >
编程相关推荐