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

Пароль

 
Войти при помощи

pskovoroda

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

Фанфики

25 произведений» 
Отчаявшаяся кладоискательница
Гет, Макси, Закончен
24k 168 628 2
Ронни и его друзья. 1. Пенис енладжмент
Джен, Мини, Закончен
955 0 37
Злой гений
Гет, Макси, Закончен
43k 194 830 5
Олли
Гет, Макси, Закончен
67k 326 467 2

Редактура

32 произведения» 
3000 дней невиновности
Гет, Макси, Закончен
60k 78 588 2
Контракт
Гет, Макси, Закончен
183k 208 2.2k 1
Гарри Поттер и Непогасший Маяк
Гет, Миди, Закончен
16k 12 317
Самый избранный из всех попаданцев
Гет, Макси, Заморожен
35k 32 222
В поисках места, что домом зовется
Гет, Макси, Закончен
168k 131 3.1k 6

Фанарт

12 работ» 

Подарки

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

Награды

69 наград» 
9 лет на сайте 9 лет на сайте
23 мая 2023
12 макси 12 макси
14 сентября 2022
8 лет на сайте 8 лет на сайте
23 мая 2022
5000 комментариев 5000 комментариев
11 января 2022
30 000 читателей 30 000 читателей
22 декабря 2021

Блог » Поиск

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

В общем, в итоге скачал 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 комментарий
ПОИСК
ФАНФИКОВ









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