↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Временно не работает,
как войти читайте здесь!

pskovoroda

Автор, Редактор, Иллюстратор

Фанфики

25 произведений» 
Отчаявшаяся кладоискательница
Гет, Макси, Закончен
31k 176 722 3
Ронни и его друзья. 1. Пенис енладжмент
Джен, Мини, Закончен
1.3k 0 46
Злой гений
Гет, Макси, Закончен
52k 198 934 5
Олли
Гет, Макси, Закончен
74k 326 489 2

Редактура

32 произведения» 
3000 дней невиновности
Гет, Макси, Закончен
66k 79 611 2
Контракт
Гет, Макси, Закончен
196k 217 2.3k 1
Гарри Поттер и Непогасший Маяк
Гет, Миди, Закончен
17k 12 338
Самый избранный из всех попаданцев
Гет, Макси, Заморожен
37k 33 229
В поисках места, что домом зовется
Гет, Макси, Закончен
184k 133 3.3k 6

Фанарт

12 работ» 

Подарки

7 подарков» 
ПодарокЭто просто квиддич
От Хэлен
ПодарокШалость удалась
От мозгомышка
ПодарокВ руках воды
От ansy

Награды

70 наград» 
10 лет на сайте 10 лет на сайте
23 мая 2024
9 лет на сайте 9 лет на сайте
23 мая 2023
12 макси 12 макси
14 сентября 2022
8 лет на сайте 8 лет на сайте
23 мая 2022
5000 комментариев 5000 комментариев
11 января 2022

Блог » Поиск

До даты
#скриптики
Искал что-нибудь для статистического анализа текста, но толком не нашёл. Кстати, если кто посоветует пригодный софт или сайт с автоматом на нём, буду признателен.

В общем, в итоге скачал Mystem и к этому допилил короткий скрипт на Перле:

use strict;
use warnings;
my %count;
while (<>) {
$count{$_}++ for /(?<={)[^|}]+/g;
}
my $sum = 0;
foreach my $str (sort keys %count) {
$sum ++;
}
$count {"Total dictionary"} = $sum;
printf "%-31s %s\\n", $_, $count{$_}
for sort { $count{$b} <=> $count{$a} || $a cmp $b} keys %count;

Ничего особенного, в общем-то, но если прогнать текст через Mystem, а результат — через скрипт (можно всё в один пайп засунуть), то в итоге получится список слов с числом повторений. В первой строке выводится общее число разных слов (активный словарный запас)

cat text.txt | mystem -e cp1251 | perl frequency.pl > out.stat

Выход Mystem выглядит примерно так:

он{он}продолжал{продолжать}завтрак{завтрак}

То, что нужно считать — в фигурных скобках, причём иногда бывает и так:

это{это|этот}

Первая строка в while находит все слова между { и } или между { и | и для каждого из этих слов делает инкремент счётчика в хэше. Собственно, на этом и всё. Цикл foreach считает число записей в хэше и затем добавляет ещё одним элементом. Последующий printf сортирует хэш по счётчику и печатает пару из ключа и значения.
Свернуть сообщение
-
Показать полностью
Показать 12 комментариев
#скриптики
Написал небольшой скрипт для переделки из Гугловского документа в ПФ (минимум форматирования + главы). Документ нужно сохранить в HTML, а потом запустить Перл

perl -p fanfics.pl index.html > out.html

скачать можно здесь
Показать 1 комментарий
ПОИСК
ФАНФИКОВ











Закрыть
Закрыть
Закрыть