Audience Ad
Audience1 Audience4.Ad1.image
Audience2 Audience1.Ad4.image
Audience3 Audience7.Ad1.image
Audience4 Audience2.Ad3.image
Audience5 Audience9.Ad1.image
Audience6 Audience4.Ad2.image
Audience7 Audience5.Ad1.image
Audience8 Audience7.Ad3.image
Audience9 Audience8.Ad1.image
Audience10 Audience9.Ad1.image
这是一些示例数据。我想做的是查看广告栏,如果它包含观众栏中的任何内容,则将其替换为零。 对我来说,这里最困难的部分是左边可能会说audence1,右边可能会说audence2,所以它们不一样。如果他们是我知道如何实现这一点,但不幸的是,他们不是
因此,预期结果如下所示
Audience Ad
Audience1 Ad1.image
Audience2 Ad4.image
Audience3 Ad1.image
Audience4 Ad3.image
Audience5 Ad1.image
Audience6 Ad2.image
Audience7 Ad1.image
Audience8 Ad3.image
Audience9 Ad1.image
Audience10 Ad1.image
我想这样做的方式是通过使用for循环遍历观众栏,然后如果我发现观众栏中的任何元素都包含在广告栏中,则将其删除
这就是我试图解决这个问题的方法,但我被困在return语句中的内容上(当然,如果其余逻辑正确的话):
def replace(text):
for i in df['Audience']:
if i in text:
return ???
df['Ad'] = df['Ad'].apply(replace)
任何帮助都将不胜感激
可以将^{} 与^{} 一起使用
不匹配的示例:
与^{} 、^{} 一起使用^{} 方法:
Audience
转换为^{Ad
列使用列表理解从} 删除术语
Ad
列表中删除术语,然后^{[y for y in x if y not in aud]
是一个list comprehension.split
的列表。这将遍历每个值并检查它是否在aud
列表中。是的,那么它就不包括在新的列表中了李>'.'.join()
从列表的元素创建一个字符串给定一个10e6行的样本数据集(
df = pd.concat([pd.DataFrame(data)]*1000000)
):Wall time: 16.9 s
Wall time: 27.7 s
df[Audience]
中唯一单词的数量,因为这些单词被连接成一个字符串李>备选案文2:
data
相关问题 更多 >
编程相关推荐