Перейти к содержимому

Анализатор частоты символов

Анализируйте и визуализируйте распределение частоты символов в любом тексте.

Об этом инструменте

Анализатор частоты символов — это инструмент, который показывает, как часто каждый символ встречается в любом тексте, отображая результаты в виде интерактивной гистограммы и подробной статистики. Понимание распределения символов ценно для криптографии, лингвистики, сжатия данных и анализа текста, где закономерности использования символов могут раскрыть важную информацию о структуре языка или возможных схемах кодирования.

Использование инструмента простое: просто вставьте или введите текст в поле ввода, и анализатор мгновенно рассчитает и отобразит частоту каждого символа, включая буквы, цифры, пробелы и пунктуацию. Результаты представлены визуально в виде столбчатой диаграммы, отсортированной по частоте, наряду с таблицей, показывающей точные подсчёты и проценты, что облегчает выявление доминирующих символов и закономерностей.

Этот инструмент особенно полезен для лингвистов, изучающих языковые закономерности, программистов, работающих с алгоритмами сжатия или кодирования символов, и всех, кто интересуется анализом текста и криптографией. Анализатор обрабатывает текст на любом языке и предоставляет как визуальные, так и числовые сведения, помогая вам понять состав и структуру ваших данных с первого взгляда.

Часто задаваемые вопросы

Реализация кода

from collections import Counter

def char_frequency(text, case_sensitive=False, include_spaces=True, include_numbers=True):
    if not case_sensitive:
        text = text.lower()
    if not include_spaces:
        text = "".join(c for c in text if not c.isspace())
    if not include_numbers:
        text = "".join(c for c in text if not c.isdigit())
    freq = Counter(text)
    total = sum(freq.values())
    return [
        {"char": ch, "count": cnt, "percent": cnt / total * 100}
        for ch, cnt in freq.most_common()
    ]

text = "Hello, World! Hello Python."
for entry in char_frequency(text)[:5]:
    print(f"'{entry['char']}': {entry['count']} ({entry['percent']:.1f}%)")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.