【问题标题】:Python Term Frequency vectorizerPython 词频矢量化器
【发布时间】:2017-07-04 11:05:36
【问题描述】:

借助 Python 的 scikit-learn 包中的 TfidfVectorizer,我们可以轻松地将文档列表转换为具有 <term>-frequency-inverse-document-frequency 特征的数据集,其中 terms 是文档中出现的单词。

在 Python 中的任何地方是否有 TfidfVectorizer 的 TfVectorizer 类比,它会产生 <term>-frequency 特征,即我们不会通过逆文档频率对特征的值进行加权?

比起用其他编程语言编写的解决方案,我更喜欢 Python 解决方案,但如果您知道任何易于使用的 Java 实现,也可以提及。

【问题讨论】:

    标签: python scikit-learn tf-idf


    【解决方案1】:

    是的。它也在 scikit-learn 中,被称为 CountVectorizer

    import numpy as np
    from sklearn.feature_extraction.text import CountVectorizer
    
    data = ['this is sample 1', 'how about sample two', 'make three samples']
    vectorizer = CountVectorizer()
    
    transformed_data = vectorizer.fit_transform(data)
    
    print (zip(vectorizer.get_feature_names(), np.ravel(transformed_data.sum(axis=0))))
    

    输出:

    [(u'about', 1),
     (u'how', 1),
     (u'is', 1),
     (u'make', 1),
     (u'sample', 2),
     (u'samples', 1),
     (u'this', 1),
     (u'three', 1),
     (u'two', 1)]
    

    【讨论】:

      猜你喜欢
      • 2017-08-01
      • 1970-01-01
      • 2020-05-07
      • 2020-08-25
      • 1970-01-01
      • 2021-05-07
      • 1970-01-01
      • 1970-01-01
      • 2018-10-08
      相关资源
      最近更新 更多