Здравствуйте, я пытаюсь создать спам-фильтр, но теперь я не могу это сделать.
Я хотел бы создать функцию, которая показывает мне вероятность того, что определенное слово является спамом или нет.
таблица из моего фрейма данных
Это моя функция:
def P_E_S(word):
if word in train_set.columns:
tot_word = train_set.word.sum()
tot_word_spam = train_set.word[(train_set.type == 'spam')].sum()
P_word_spam = tot_word_spam / tot_word
return P_word_spam
else:
return 1
проблема в том, что я не могу получить доступ к именам столбцов таким образом с слово в строках 3 и 4.
Если я выполняю такую функцию:
def P_E_S(word):
if word in train_set.columns:
tot_word = train_set.make.sum()
tot_word_spam = train_set.make[(train_set.type == 'spam')].sum()
P_word_spam = tot_word_spam / tot_word
return P_word_spam
else:
return 1
Она отлично работает, но мне нужно изменить слово make в строках 3 и 4.
Может кто-нибудь поможет? Большое вам спасибо.