python文本数据分析作业分享案例

作业需求:

分析两本类型不同的现代小说的词性分布,如武侠或侦探小说等.用一个类读入整本小说。用自然语言处理工具。初始化过程分析内容。分解词语并获取词性(如动词.形容词等).类对象取索引返回词和词性两项主要信息在调用类对象的函数中,实现词性的统计。用饼状图可视化个主要词性频率,对比两本小说的饼状

python文本数据分析作业分享案例_第1张图片
python文本数据分析作业分享案例_第2张图片

编辑

全部代码:

import jieba
import jieba.posseg
import matplotlib.pyplot as plt
import matplotlib
from pylab import mpl

mpl.rcParams['font.sans-serif'] = ['SimHei']  # 字体更改
matplotlib.rcParams.update({'font.size': 15})  # 字体大小
fig = plt.figure(figsize=(8, 8), dpi=80)

word_type = ["a", "d", "n", "p", "r", "u", "v", "y"]
word_type_chin = ["形容词", "副词", "名词", "介词", "代词", "助词", "动词", "语气词"]


class Text():
    def init(self):

        with open("yitian.txt", mode="r", encoding="utf8") as txt1:
            a = txt1.read()
        with open("baiyexing.txt", mode="r", encoding="gbk") as txt2:
            b = txt2.read()
        self.txt = [a, b]

        self.output = [[], []]
        self.flag = [[], []]
        self.word = [[], []]
        self.identify(self)
        return self.output[0], self.output[1]

    def identify(self):
        for x in range(0, 2):
            self.txt[x] = jieba.posseg.cut(self.txt[x])
            for text in self.txt[x]:
                self.output[x].append([text.word, text.flag])
                self.flag[x].append(text.flag)
            for t in range(0, 8):
                print(f"{word_type_chin[t]}: {self.flag[x].count(word_type[t])}")
                self.word[x].append(self.flag[x].count(word_type[t]))

    def pie(self):
        for x in range(0, 2):
            fig.add_subplot(1, 2, x + 1)
            plt.pie(self.word[x],
                    labels=word_type_chin,  # 设置饼图标签
                    # radius=1.2,
                    autopct="%d%%",
                    )
            if x == 0:
                text_type = "武侠"
            elif x == 1:
                text_type = "侦探"

            plt.title(f"{text_type}小说的词性分布")

        fig.show()


text_1, text_2 = Text.init(Text)
print(f"武侠小说:\n{text_1}")
print(f"\n侦探小说:\n{text_2}")

Text.pie(Text)

input("   >>> ENTER以继续 <<<   ")
python文本数据分析作业分享案例_第3张图片
python文本数据分析作业分享案例_第4张图片
python文本数据分析作业分享案例_第5张图片

编辑

数据+代码:

https://download.csdn.net/download/qq_38735017/87354408

你可能感兴趣的:(python实战100例,人工智能,python,自然语言处理)