Kelimelerin Sıklığını Python ile Analiz Etme

Giriş: Kelime Sıklığı Nedir?

Kelime sıklığı, bir metin içerisindeki belli bir kelimenin kaç kez geçtiğini ifade eder. Bu metin analizinde önemli bir rol oynar çünkü, göz önüne alındığında, kelime sıklığı, metnin ana temalarını veya konusu ile ilgili belirli kelimelerin önemini anlamamıza yardımcı olabilir. Özellikle, sosyal bilimler, edebiyat, pazarlama ve veri madenciliğinde kelime sıklığı analizi yaygın bir uygulamadır.

Python, verileri analiz etmek için güçlü bir dil olarak, kelime sıklığı analizi için çeşitli kütüphaneler ve yöntemler sunar. Bu yazıda, Python kullanarak kelime sıklığı hesaplama sürecini adım adım inceleyeceğiz. Öncelikle, uygun kütüphaneleri kullanarak bir metni nasıl okuyacağımızı ve ardından kelimeleri nasıl analiz edeceğimizi öğrenmek için gerekli adımları atacağız.

Kelime sıklığı analizi, tam metin dökümanlarını incelerken genellikle ilk adım olan metin ön işleme aşaması ile başlar. Metin ön işleme, verileri temizlemeyi, uygun bir formata sokmayı ve analiz için kullanılacak hale getirmeyi içerir. Özellikle durak kelimelerin çıkarılması, küçük harfe dönüştürme, noktalama işaretlerinin kaldırılması ve kelimelerin köklerine indirilmesi gibi işlemler kritik öneme sahiptir.

Python ile Kelime Sıklığı Hesaplama

Peki, kelime sıklığını Python’da nasıl hesaplayabiliriz? İşte bunun için izlenmesi gereken adımlar:

1. Gerekli Kütüphaneleri Yükleme: İlk olarak, gerekli kütüphaneleri yüklememiz gerekiyor. Python’da kelime sıklığı analizi için collections, re (regex) ve nltk gibi kütüphaneleri kullanabiliriz. Aşağıdaki kod parçacığında bu kütüphaneleri nasıl kullanacağımızı göreceğiz:

import re
from collections import Counter
import nltk
nltk.download('punkt')

Yukarıdaki kodda, regex ile metin temizliği yapma işlemlerini, Counter ile kelime sayma işlemlerini ve nltk kütüphanesini kullanarak kelimeleri tokenize etme sürecini gerçekleştireceğiz.

2. Metni Okuma ve Temizleme: Metni okumak ve temizlemek için bir fonksiyon tanımlamalıyız. Bu fonksiyon, metnin içinden noktalama işaretlerini kaldıracak ve kelimeleri küçük harflerle standart hale getirecek. Örnek bir metin okuma ve temizleme işlemi şöyle olabilir:

def clean_text(text):
    text = re.sub(r'[^	ext]', '', text) # Noktalama işaretlerini kaldır
    text = text.lower() # Küçük harflere dönüştür
    return text

Bu fonksiyonda metin içerisindeki her türlü özel karakter ve noktalama işaretleri temizlenirken, metin küçük harflere dönüştürülerek analizlerde tutarlılık sağlanır. Temizlenen metin, kelimelerin sıklık analizine hazır hale gelecektir.

Kelimeleri Sayma ve Analiz Etme

Şimdi metni temizledikten sonra kelimeleri sayma aşamasına geçebiliriz. Kelimeleri saymak için daha önce bahsettiğimiz Counter kütüphanesinden yararlanacağız. Tokenize işlemi ile kelimeleri bir liste haline getirip daha sonra bu liste üzerinde Counter fonksiyonu ile analiz yapacağız. Aşağıda bu süreci gerçekleştiren bir örnek kod bulunmaktadır:

def count_words(text):
    words = nltk.word_tokenize(text) # Kelimeleri tokenize et
    word_counts = Counter(words) # Kelimelerin sıklığını hesapla
    return word_counts

Yukarıdaki kodda, nltk.word_tokenize fonksiyonu ile metin içerisindeki kelimeler tekrar ayrıştırılır ve Counter fonksiyonu kelimelerin sıklığını hesaplar. Sonuç, her bir kelimenin metin içerisinde kaç kez geçtiğini gösteren bir sözlük olarak dönecektir.

3. Sonuçları Görselleştirme: Kelime sıklığını analiz ettikten sonra, elde ettiğimiz sonuçları görselleştirmek de önemlidir. Özellikle en sık geçen kelimeleri görmek, metnin genel yapısını anlamak için bize yardımcı olur. Bunun için matplotlib kütüphanesini kullanarak basit bir çubuk grafik oluşturabiliriz:

import matplotlib.pyplot as plt

def plot_word_counts(word_counts):
    most_common = word_counts.most_common(10) # En sık geçen 10 kelimeyi al
    words, counts = zip(*most_common) # Kelime ve frekansları ayır

    plt.bar(words, counts)
    plt.xticks(rotation=45)
    plt.title('En Sık Geçen Kelimeler')
    plt.ylabel('Frekans')
    plt.show()

Bu fonksiyon, en sık geçen 10 kelimeyi alır ve bunların frekanslarını çubuk grafik halinde gösterir. Görselleştirme, veriyi anlamlandırmakta çok önemli bir adımdır ve Python ile oldukça kolay bir şekilde yapılabilir.

Kelimelerin Sıklığı ile İlgili İpuçları ve En İyi Uygulamalar

Kelimelerin sıklığını analiz ederken, dikkat etmeniz gereken bazı önemli noktalar ve ve en iyi uygulamalar şunlardır:

1. Durak Kelimeleri Çıkarma: Analiz sonuçlarınızı etkileyebilecek durak kelimeleri, yani “ve”, “bir”, “bu” gibi önemsiz kelimeleri çıkarmayı unutmamalısınız. Bu kelimeleri çıkarmak, daha anlamlı ve bilgi verici sonuçlar almanızı sağlar.

2. Kök Kelime Analizi: Kelime köklerini analiz etmek, benzer kelimeleri bir araya getirme konusunda faydalı olabilir. Örneğin, “yazılım”, “yazılımcı” ve “yazılıyor” gibi türevleri kök haline getirerek daha net bir analiz yapmak mümkündür.

3. Veri Görselleştirme: Sonuçları analiz ederken, şemalar ve grafikler kullanmak, verilerinizi daha etkili bir şekilde sunmanıza yardımcı olur. Matplotlib ve seaborn gibi kütüphanelerle görselleştirmeyi çeşitlendirebilir ve daha anlamlı hale getirebilirsiniz.

Sonuç

Kelime sıklığı analizi, metin analizi ve veri madenciliği alanında oldukça faydalı bir tekniktir. Python gibi güçlü bir dili kullanarak, metinler içerisindeki kelimelerin sıklığını hızlı bir şekilde analiz edebiliriz. Yukarıda bahsedilen adımlarla, temizleme, sayma ve görselleştirme aşamalarını kolayca gerçekleştirebiliriz.

Unutmayın ki, kelime sıklığı analizi sadece bir başlangıçtır. İleri düzey analiz teknikleri ve doğal dil işleme yöntemlerini kullanarak daha derinlemesine analizler yapmak mümkün. Python’un sunduğu kütüphanelerle, her seviyede geliştirici için uygun ve zengin bir analiz süreci oluşturabilirsiniz. Şimdi kendi verilerinizi analiz etmeye başlayın ve kelime sıklığını keşfedin!

Elde ettiğiniz önemli bilgileri başkalarıyla paylaşmayı unutmayın! Programlama ve veri bilimi alanında sürekli olarak öğrenmek ve paylaşmak, bu yolculuğun en eğlenceli kısmıdır.

Scroll to Top