6960

График частоты букв в русском языке

График частоты букв в русском языке Статистика, Русский язык, Научпоп, График, Человек наук

На первом месте – "О", она встречается в русскоязычных текстах чаще, чем 14 самых редких букв в сумме! Самая распространённая согласная – "Н", что для меня было неожиданно. А мягкий знак далеко не такой редкий, как я думал – он встречается чаще, чем целых 15 букв


На последнем месте грустит "Ё". Её нещадно вытесняет из письменности "Е", чтобы удержать своё второе место


Если вы читаете достаточно длинный текст, то его 50% составляют всего 7 букв!


Мой телеграм-канал
Вы смотрите срез комментариев. Показать все
1
DELETED
Автор поста оценил этот комментарий

Какая методика подсчета? Тупо валим все символы текста в кучу и считаем, или как?

раскрыть ветку (13)
0
Автор поста оценил этот комментарий

Да, всё так

Можно посчитать количество разных сочетаний символов, если интересно

раскрыть ветку (12)
0
DELETED
Автор поста оценил этот комментарий

Ну, на первую сотенку по популярности я бы взглянул =)


А на чем вы это делаете?

раскрыть ветку (11)
0
Автор поста оценил этот комментарий

Язык программирования python :)

раскрыть ветку (10)
1
Автор поста оценил этот комментарий

Я лет в 10-12 сам считал, брал разные по количеству символов тексты из разных источников, результаты были примерно такими же, также искал наиболее частые для русского языка сочетания символов. Был под впечатлением произведения "Золотой жук" Эдгара По, выводил закономерности) К слову потом поражал всех тем, что простые шифры, где один символ соответсвует одной букве алфавита щелкал как семечки. Эх, давно это было

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

При составлении азбуки Морзе тоже вручную считали частоты букв из книг, если я правильно помню :)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
А ещё при создании "Скрэббла" считали частоты букв на первой странице НЙ Таймс
0
DELETED
Автор поста оценил этот комментарий

Интересно. А как проверяется соответствие буквы? Ну, чтобы увеличить счетчик конкретной буквы/сочетания, нужно проверить текст текущего проверяемого символа на совпадение с заданным. По буквам если еще ладно, но сочетаний-то больше тысячи. Как это оптимально делается?

раскрыть ветку (6)
0
Автор поста оценил этот комментарий

>> больше тысячи
Конкретно: 1056, но это с учётом всяких странных типа "ЬЬ" и "ЪЪ"
Берётся динамический ассоциативный пустой массив, при каждом нахождении новой пары ему выдаётся новый ключ с именем этой пары и туда пишется +1, потом при новом нахождении - ещё +1 и так до упора. В конце отсортировываем массив по значениям. Все 1056 комбинаций вряд ли попадутся, я вообще ставлю на то, что будет не больше 800 в каком-нибудь "обычном" тексте, не специально подогнанном

0
Автор поста оценил этот комментарий

Точно также: берётся «окошко» длиной в два символа и постепенно проезжает по словам. Смотрим, какие 2 символа сейчас в окошке и увеличиваем их счётчик на единицу


Тысяча – это немного для компьютера :)

раскрыть ветку (4)
0
Автор поста оценил этот комментарий

А в каком-то наглядном виде, типа графика можно сочетания вывести?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да :) Сделаю следующим постом

0
DELETED
Автор поста оценил этот комментарий

Не, как именно проезжает-то? Есть какая-то сильно оптимизированная функция сравнения строки с каждым элементом массива, или как дела обстоят?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Тут не нужно слишком много оптимизировать, в любом случае понадобится линейное время от количества символов. И это неплохо: сортировать слова пришлось бы дольше


Сами строки, конечно, сравниваются не полностью. Например, если первый символ строк не совпадает, то дальше проверять нет смысла - понятно, что они не равны. Благодаря этому считать длинные подстроки будет даже быстрее, чем единичные символы

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку