用于带词汇的Python单词袋编码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用于带词汇的Python单词袋编码相关的知识,希望对你有一定的参考价值。

我正在尝试在我的ML模型中实现新的列。如果在已抓取数据的文本中找到specific单词,则应创建一个数字列。为此,我创建了一个虚拟脚本进行测试。

import pandas as pd

bagOfWords = ["cool", "place"]
wordsFound = ""

mystring = "This is a cool new place"
mystring = mystring.lower()

for word in bagOfWords:
    if word in mystring: 
        wordsFound = wordsFound + word + " "

print(wordsFound)
pd.get_dummies(wordsFound)

输出为

    cool place
0   1

这意味着有一个句子“ 0”和一个“ cool place”条目。这是不正确的。期望是这样的:

    cool place
0   1    1
答案

找到了一个不同的解决方案,因为我找不到任何前进的方向。它是一种简单的直接热编码。为此,我为每个单词输入我需要在数据框中添加新列并直接创建编码。

vocabulary = ["achtung", "suchen"]

for word in vocabulary:
    df2[word] = 0

    for index, row in df2.iterrows():
        if word in row["title"].lower():
            df2.set_value(index, word, 1)

以上是关于用于带词汇的Python单词袋编码的主要内容,如果未能解决你的问题,请参考以下文章

如何确定可以从一袋字母和一袋单词python中组成的单词的数量和集合

python必学英语单词

spaCy:词汇中的单词

NLP⚠️学不会打我! 半小时学会基本操作 3⚠️ 词袋模型

NLP⚠️学不会打我! 半小时学会基本操作 3⚠️ 词袋模型

匹配词汇单词和短语