zoukankan      html  css  js  c++  java
  • 【机器学习】sklearn库的学习之TF-IDF算法,python,超简单!

    Sklearn库的学习之TF-IDF算法:

    # coding:utf-8
    import jieba
    import jieba.posseg as pseg
    import os
    import sys
    from sklearn import feature_extraction
    from sklearn.feature_extraction.text import TfidfTransformer
    from sklearn.feature_extraction.text import CountVectorizer
     
    if __name__ == "__main__":
        corpus=["我 喜欢 超级 赛亚人",#第一类文本切词后的结果,词之间以空格隔开
    		"他 喜欢 哪吒",#第二类文本的切词结果
    		"一切 困难 我们 都 能 战胜 奥力给",#第三类文本的切词结果
    		"今天 又 是 元气满满 的 一天"]#第四类文本的切词结果
        vectorizer=CountVectorizer()#该类会将文本中的词语转换为词频矩阵,矩阵元素a[i][j] 表示j词在i类文本下的词频
        transformer=TfidfTransformer()#该类会统计每个词语的tf-idf权值
        tfidf=transformer.fit_transform(vectorizer.fit_transform(corpus))#第一个fit_transform是计算tf-idf,第二个fit_transform是将文本转为词频矩阵
        word=vectorizer.get_feature_names()#获取词袋模型中的所有词语
        weight=tfidf.toarray()#将tf-idf矩阵抽取出来,元素a[i][j]表示j词在i类文本中的tf-idf权重
        for i in range(len(weight)):#打印每类文本的tf-idf词语权重,第一个for遍历所有文本,第二个for便利某一类文本下的词语权重
            print(u"-------这里输出第",i,u"类文本的词语tf-idf权重------")
            for j in range(len(word)):
                print(word[j],weight[i][j])
    

    运行结果:

    -------这里输出第 0 类文本的词语tf-idf权重------
    一切 0.0
    一天 0.0
    今天 0.0
    元气满满 0.0
    哪吒 0.0
    喜欢 0.48693426407352264
    困难 0.0
    奥力给 0.0
    我们 0.0
    战胜 0.0
    赛亚人 0.6176143709756019
    超级 0.6176143709756019
    -------这里输出第 1 类文本的词语tf-idf权重------
    一切 0.0
    一天 0.0
    今天 0.0
    元气满满 0.0
    哪吒 0.7852882757103967
    喜欢 0.6191302964899972
    困难 0.0
    奥力给 0.0
    我们 0.0
    战胜 0.0
    赛亚人 0.0
    超级 0.0
    -------这里输出第 2 类文本的词语tf-idf权重------
    一切 0.4472135954999579
    一天 0.0
    今天 0.0
    元气满满 0.0
    哪吒 0.0
    喜欢 0.0
    困难 0.4472135954999579
    奥力给 0.4472135954999579
    我们 0.4472135954999579
    战胜 0.4472135954999579
    赛亚人 0.0
    超级 0.0
    -------这里输出第 3 类文本的词语tf-idf权重------
    一切 0.0
    一天 0.5773502691896257
    今天 0.5773502691896257
    元气满满 0.5773502691896257
    哪吒 0.0
    喜欢 0.0
    困难 0.0
    奥力给 0.0
    我们 0.0
    战胜 0.0
    赛亚人 0.0
    超级 0.0
  • 相关阅读:
    iOS API 概述
    iOS开发的一些奇巧淫技3
    iOS开发的一些奇巧淫技1&2
    iOS-一键拨号
    iOS层次架构
    简单block 和 代理
    iOS开发-单例GCD
    简单的归档、接档
    通知中心与本地通知
    安装linux centos 7.7 遇到 DRM:Pointer to TMDS table invalid
  • 原文地址:https://www.cnblogs.com/helenlee01/p/12617456.html
Copyright © 2011-2022 走看看