Python, заменяя определенное слово на другие данные - PullRequest
0 голосов
/ 01 ноября 2018

У меня проблема с заменой моих данных. У меня большой набор данных. допустим, у меня есть 15 атрибутов, 15-й атрибут - Label. Я хочу изменить, если данные содержат botnet, он изменит все данные на «1». например данные botnet are here или we are looking for botnet, обе данные заменят на «1»

Я уже пробовал использовать замену

x = "botnet is here and im looking for botnet"

tags = ['botnet']

for tag in tags:
    x = x.replace(tag,'')
print(x)

Этот код только заменяет слово "ботнет". Но что мне нужно, если данные содержат botnet, то он изменит все предложения на "1"

Ответы [ 3 ]

0 голосов
/ 01 ноября 2018

Вы должны присвоить строковое значение переменной тегов вместо списка.
Итерируйте x, а не теги.
Попробуйте этот код.

x = "botnet is here and im looking for botnet"
tags='botnet'
for tag in x.split():
    if tag==tags:
        x=tag.replace(tag,'1')
print(x)

вывод этого кода.

1
0 голосов
/ 01 ноября 2018

Попробуйте это:

label = ['botnet is here' , 'im looking for botnet', 'just a test']
tags='botnet'
for x in label:
    if tags in x:
        label[label.index(x)]='1'
print(label)

вывод: заменяются только предложения, содержащие 'ботнет'

['1', '1', 'just a test']
0 голосов
/ 01 ноября 2018
for tag in tags:
    if tag in x:
        x = "1"
        break
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...