WPROWADZENIE
Czy kiedykolwiek zastanawiałeś się, które litery w języku polskim są najczęściej używane? A może chcesz sprawdzić, czy Twój ulubiony autor ma swój unikalny „alfabetyczny odcisk palca”? Dzięki prostemu programowi w języku Python możesz w kilka sekund przeanalizować dowolny tekst, zobaczyć wyniki w czytelnej formie i wyeksportować je do dalszej analizy.
Nasz program to narzędzie idealne dla uczniów, studentów, analityków danych, a także dla każdego, kto jest po prostu ciekawy języka. Wystarczy wkleić dowolny fragment tekstu – od krótkiego zdania po całą powieść – a program zajmie się resztą.
Zasada działania
Na początku program prosi użytkownika o wpisanie tekstu. Jego długość jest ograniczona tylko pamięcią RAM, więc może być baaarrrdzo długi 🤩
Po wprowadzeniu tekstu trzeba jeszcze zdecydować, czy wyniki mają być wyeksportowane do pliku CSV, a następnie narzędzie przystępuje do pracy. Wyniki prezentowane są na trzy sposoby, aby dać Ci pełny obraz analizowanego materiału:
- Szczegółowa tabela: W konsoli wyświetlona zostaje przejrzysta tabela, która pokazuje, ile razy każda litera polskiego alfabetu (od „a” do „ż”) pojawiła się w Twoim tekście.
- Wykres graficzny: Program generuje czytelny diagram kolumnowy. Na osi poziomej znajdują się wszystkie litery alfabetu, a wysokość słupków odpowiada liczbie ich wystąpień. Dzięki temu możesz błyskawicznie zorientować się, które litery dominują w tekście.
- Eksport do pliku CSV: Jeśli chcesz zachować wyniki na później lub przeprowadzić bardziej zaawansowaną analizę, program oferuje opcję eksportu danych do pliku CSV. Taki plik można łatwo otworzyć w dowolnym arkuszu kalkulacyjnym, takim jak Microsoft Excel czy Google Sheets.
To proste, ale potężne narzędzie otwiera drzwi do fascynującego świata analizy tekstu i pokazuje, jak wiele informacji można wydobyć ze zwykłych słów.
Poniżej znajduje się kod w języku Python:
KOD W JĘZYKU PYTHON
pip install matplotlib pandas
import string
import matplotlib.pyplot as plt
import pandas as pd
import os
def analizator_tekstu():
alfabet = 'aąbcćdeęfghijklłmnńoópqrsśtuvwxyzźż'
liczniki = {litera: 0 for litera in alfabet}
print("Analizator częstotliwości liter w tekście")
print("-" * 40)
tekst_uzytkownika = input("Wpisz tekst do analizy: ")
decyzja_eksport = input("Czy chcesz wyeksportować wyniki do pliku CSV? (tak/nie): ").lower()
print("\nAnalizowanie tekstu...")
for znak in tekst_uzytkownika.lower():
if znak in liczniki:
liczniki[znak] += 1
print("Analiza zakończona.")
print("\n## Tabela wystąpień liter ##")
print("-" * 30)
print(f"{'Litera':<10} | {'Liczba wystąpień':<20}")
print("-" * 30)
for litera, ilosc in liczniki.items():
print(f"{litera:<10} | {ilosc:<20}")
print("-" * 30)
wszystkie_litery = list(liczniki.keys())
wszystkie_ilosci = list(liczniki.values())
print("\nGenerowanie wykresu...")
plt.figure(figsize=(18, 8))
plt.bar(wszystkie_litery, wszystkie_ilosci, color='skyblue')
plt.title('Częstotliwość występowania liter w tekście (wszystkie litery alfabetu)')
plt.xlabel('Litery')
plt.ylabel('Liczba wystąpień')
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.xticks(rotation=60, ha='right', fontsize=10)
plt.tight_layout()
print("Wyświetlanie wykresu. Zamknij okno z wykresem, aby kontynuować.")
plt.show()
if decyzja_eksport == 'tak':
print("\n## Eksport wyników ##")
try:
dane_do_eksportu = {litera: [litera, liczniki[litera]] for litera in alfabet}
df = pd.DataFrame(dane_do_eksportu, index=['Litera', 'Liczba wystąpień'])
df.index.name = "Opis wiersza"
nazwa_pliku = 'analiza_tekstu.csv'
df.to_csv(nazwa_pliku, sep=';', encoding='utf-8-sig')
with open(nazwa_pliku, 'a', encoding='utf-8-sig') as plik:
plik.write(f'\n\nAnalizowany tekst:\n"{tekst_uzytkownika}"')
print(f"\n✅ Sukces! Wyniki zostały pomyślnie zapisane w pliku '{nazwa_pliku}'")
print(f"Plik znajduje się w katalogu: {os.path.abspath(nazwa_pliku)}")
except Exception as e:
print(f"\n❌ Wystąpił błąd podczas zapisu pliku: {e}")
else:
print("\nZakończono program bez eksportowania danych (zgodnie z wcześniejszą decyzją).")
if __name__ == '__main__':
analizator_tekstu()⬆️⬆️⬆️ Zobacz w Google Colaboratory
JAK DZIAŁA PROGRAM?
Działanie programu można opisać w kilku prostych krokach, które wykonuje on po uruchomieniu.
- Krok 1: Przygotowanie i pobranie danych Na samym początku program przygotowuje sobie listę wszystkich liter polskiego alfabetu. Następnie prosi użytkownika o wpisanie tekstu do analizy oraz o podjęcie decyzji, czy finalne wyniki mają zostać zapisane do pliku.
- Krok 2: Analiza tekstu Program przechodzi przez cały wprowadzony tekst, znak po znaku. Każdą napotkaną literę (ignorując jej wielkość) zlicza, dodając jeden do odpowiedniego licznika przypisanego do tej litery.
- Krok 3: Prezentacja wyników w tabeli Po zakończeniu zliczania program wyświetla w konsoli czytelną tabelę, w której obok każdej litery alfabetu znajduje się liczba jej wystąpień w tekście.
- Krok 4: Wizualizacja danych Korzystając ze zebranych danych, program tworzy diagram kolumnowy. Na wykresie umieszczone są wszystkie litery alfabetu, a wysokość słupków odzwierciedla ich policzoną częstotliwość.
- Krok 5: Eksport do pliku (opcjonalnie) Jeśli na początku użytkownik wyraził taką chęć, program tworzy plik w formacie CSV. Zapisuje w nim dane o liczbie wystąpień poszczególnych liter oraz, dla kontekstu, oryginalny tekst, który był analizowany. Na końcu informuje użytkownika o pomyślnym zapisaniu pliku.

Dodaj komentarz