首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查包含不同名称的数据集中是否存在单词'worm‘:

如何检查包含不同名称的数据集中是否存在单词'worm‘:
EN

Stack Overflow用户
提问于 2019-08-17 18:03:27
回答 2查看 37关注 0票数 0

我有一个有1854行106列的数据集,在它的第三列中有像"Worm.Win32.Zwr.c“这样的值(以及其他类型的恶意软件名称),我想检查在任何行中是否有像'worm'这样的单词,然后在同一行的目标列中插入1

代码语言:javascript
复制
for rows in malware_data:
    if ('worm' in malware_data[3]):
        malware_data.loc[rows]['target']=1

    else:
        malware_data.loc[rows]['target']=0
EN

回答 2

Stack Overflow用户

发布于 2019-08-17 18:18:08

您可以通过以下几种方式完成此操作:

1)通过创建布尔掩码来过滤包含单词“worm”的行:

代码语言:javascript
复制
mask = df.str.lower().str.contains('worm')

df.loc[mask, third_column].target = 1
df.loc[~mask, third_column].target = 0

你可以使用df.str.contains('(?i)worm')插入df.str.lower().str.contains('worm')

如果您不知道第三列的名称,可以使用:

代码语言:javascript
复制
third_column = df.columns[2]

2)按照@ArunPrabhath的建议,沿着DataFrame的第三列应用一个函数:

代码语言:javascript
复制
df.target = df[third_column].apply(lamda x: int('worm' in x.lower()))
票数 1
EN

Stack Overflow用户

发布于 2019-08-17 18:27:31

malware_data‘’target‘= malware_data3.apply(lamda行:1 if ('worm’in row) else 0)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57535257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档