分析コードをまとめていく.テキスト内の名詞と形容詞の比率編


前回に続いて,コードをまとめる.

今回はテキスト内の名詞と形容詞の比率にフォーカスをして分析をする.

import matplotlib.pyplot as plt
import nltk

def plot_noun_adj_ratio(text):
    """
    テキスト内の名詞と形容詞の比率を円グラフでプロットする関数
    """
    tokens = nltk.word_tokenize(text)
    pos_tags = nltk.pos_tag(tokens)
    noun_count = sum(1 for word, tag in pos_tags if tag.startswith('NN'))
    adj_count = sum(1 for word, tag in pos_tags if tag.startswith('JJ'))

    labels = ['Nouns', 'Adjectives']
    sizes = [noun_count, adj_count]
    colors = ['#ff9999','#66b3ff']
    explode = (0.1, 0)  # "explode" the 1st slice

    plt.figure(figsize=(8, 8))
    plt.pie(sizes, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%',
            shadow=True, startangle=140)
    plt.axis('equal')
    plt.title('Noun vs Adjective Ratio')
    plt.show()

# 名詞と形容詞の比率のプロット
plot_noun_adj_ratio(processed_text)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です