函数中的Python垃圾邮件过滤器函数列名
大家好,我正在尝试建立一个垃圾邮件过滤器,现在我再也找不到了 我想创建一个函数,显示某个单词是否为垃圾邮件的概率 这是我的职责:函数中的Python垃圾邮件过滤器函数列名,python,pandas,function,filter,spam,Python,Pandas,Function,Filter,Spam,大家好,我正在尝试建立一个垃圾邮件过滤器,现在我再也找不到了 我想创建一个函数,显示某个单词是否为垃圾邮件的概率 这是我的职责: 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
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行中的word以这种方式访问列名
如果我这样做:
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
它工作得很好,但我需要更改第3行和第4行中的单词make
有人能帮忙吗?非常感谢。注意:
train\u set。word
表示在train\u set
中存在一个名为word
的列,但实际上它不包含任何名为word
的列
替换:
与:
注:
train\u set.word
表示在train\u set
中存在一个名为word
的列,但实际上它不包含任何名为word
的列
替换:
与:
您是否可以使用[]访问它,如下所示:
tot_word = train_set[word].sum()
您是否可以使用[]访问它,如下所示:
tot_word = train_set[word].sum()
你有没有理由把它显式格式化为字符串,而不是随便写
train\u set[word]
?@IvoMerchiers没有。你有没有理由把它显式格式化为字符串,而不是随便写train\u set[word]
?@IvoMerchiers没有。
tot_word = train_set[word].sum()