Rumah > pembangunan bahagian belakang > Tutorial Python > Mengira kekerapan perkataan dalam fail menggunakan python

Mengira kekerapan perkataan dalam fail menggunakan python

Jennifer Aniston
Lepaskan: 2025-03-06 11:59:11
asal
666 orang telah melayarinya

Tutorial ini menunjukkan kepada anda bagaimana untuk menentukan topik utama dokumen dengan cepat dengan menganalisis kekerapan perkataan menggunakan python. Kejadian perkataan secara manual adalah membosankan; Pendekatan automatik ini memudahkan proses.

Kami akan menggunakan fail teks sampel, test.txt (muat turun, tetapi jangan mengintip!), Untuk menggambarkan. Matlamatnya adalah untuk meneka subjek tutorial berdasarkan kekerapan perkataan.

Memahami ungkapan biasa

Proses ini menggunakan Ekspresi Biasa (REGEX). Jika tidak dikenali, regex adalah urutan watak yang menentukan corak carian untuk padanan rentetan (seperti "Cari dan Ganti"). Untuk menyelam yang lebih mendalam, rujuk kepada tutorial Regex yang berdedikasi.

Membina program

  1. Baca fail: Program ini bermula dengan membaca fail teks ke dalam rentetan:

    document_text = open('test.txt', 'r')
    text_string = document_text.read().lower()
    Salin selepas log masuk
  2. Ekspresi biasa: kata -kata penapis regex dengan 3 hingga 15 aksara:

    match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)
    Salin selepas log masuk
  3. kekerapan perkataan: Kamus menjejaki frekuensi perkataan:

    frequency = {}
    for word in match_pattern:
        count = frequency.get(word, 0)
        frequency[word] = count + 1
    Salin selepas log masuk
  4. output: Program kemudian mencetak setiap perkataan dan kekerapannya:

    frequency_list = frequency.keys()
    for word in frequency_list:
        print(word, frequency[word])
    Salin selepas log masuk

Program Lengkap

inilah kod python gabungan:

import re

frequency = {}
document_text = open('test.txt', 'r')
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

for word in match_pattern:
    count = frequency.get(word, 0)
    frequency[word] = count + 1

frequency_list = frequency.keys()
for word in frequency_list:
    print(word, frequency[word])
Salin selepas log masuk

Running Ini akan mengeluarkan senarai frekuensi perkataan. Petunjuk perkataan yang paling kerap di topik tutorial asal.

Counting Word Frequency in a File Using Python

mengendalikan fail teks yang lebih besar

untuk fail yang lebih besar, menyusun kamus kekerapan memudahkan mencari kata -kata yang paling kerap:

import re

frequency = {}
document_text = open('dracula.txt', 'r')  # Example: dracula.txt
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

for word in match_pattern:
    count = frequency.get(word, 0)
    frequency[word] = count + 1

most_frequent = dict(sorted(frequency.items(), key=lambda elem: elem[1], reverse=True))
most_frequent_count = most_frequent.keys()

for word in most_frequent_count:
    print(word, most_frequent[word])
Salin selepas log masuk
ini mengeluarkan senarai yang disusun, dengan kata -kata yang paling kerap muncul dahulu.

Counting Word Frequency in a File Using Python

tidak termasuk kata -kata biasa

untuk memperbaiki analisis, tidak termasuk kata -kata biasa seperti "," "dan," dan sebagainya, menggunakan senarai hitam:

Ini menyediakan analisis yang lebih fokus.
import re

frequency = {}
document_text = open('dracula.txt', 'r')
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)

blacklisted = ['the', 'and', 'for', 'that', 'which']

for word in match_pattern:
    if word not in blacklisted:
        count = frequency.get(word, 0)
        frequency[word] = count + 1

most_frequent = dict(sorted(frequency.items(), key=lambda elem: elem[1], reverse=True))
most_frequent_count = most_frequent.keys()

for word in most_frequent_count:
    print(word, most_frequent[word])
Salin selepas log masuk

Skrip Python yang dipertingkatkan ini menawarkan kaedah yang mantap untuk menganalisis teks dan mengenal pasti topik utama berdasarkan kekerapan perkataan. Ingatlah untuk menyesuaikan kriteria panjang dan perkataan panjang untuk memenuhi keperluan khusus anda. Counting Word Frequency in a File Using Python

Atas ialah kandungan terperinci Mengira kekerapan perkataan dalam fail menggunakan python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan