[ x ] запретить сбор данных ...
В начало :: Карта сайта :: Быстрый поиск
Авторский сайт ТехСтоп Екб Ру :: Инфоблог
Погода :: Трасса :: Авто :: Радио
Компьютер :: Программы :: Спутники
Электрика :: Диагностика :: Сервис и ТО
Любой пользователь компьютера, периодически сталкивается с проблемой обработки текста большой базы данных / или, многострочного офисного Excel документа ... В частности, интересуют вопросы, ответы на которые - нельзя получить стандартными средствами обработки текстовых данных : ...
# Как получить список уникальных / не повторяющихся значений ? ...
# Как подсчитать количество повторяющихся значений в столбце ? ...
# Как подсчитать количество повторений ? ...
# Как посчитать количество одинаковых ячеек ? ...
Ну, и - в том же духе ... Ладно, бы - это я, такой привередливый ... В крайнем случае, до 10 тысяч - могу и ручками посчитать ... Так - нет, же ... Это проблема известная, пусть и не часто встречаемая, но когда приспичит - хоть по компьютеру молотком колоти - он умнее не станет ... Я считаю, что это проблема разработчиков, напихавших всякой хрени в офисный пакет, из которой - 99% пользователей Microsoft Office - никогда не использовали встроенные функции, и понятия не имеют, как их использовать вообще ... А, те - что работают и часто применяются - порой оставляют желать лучшего в прямом смысле этого слова ... Лучшей функциональности ...
Посмотрите, сами - язык сломаешь : ДАТАКУПОНДО (Купондо - это, что за место?) ; ДЛСТР ... ; ДСТАНДОТКЛП (Дуст от клопов?) ... Это только на букву Д и таких примеров / весь список вставки функций - более 440 позиций ... Выговорить трудно - не то, что / запомнить и понять, как работает функция ... Да, при вводе - всплывают подсказки, ну - а толку ? ...
Категории функций, в основном - работают со значениями элементов / индексов (а не с их количеством), и не решают насущных задач ... Финансовые (гроши я и в уме посчитаю), статистика / логика и аналитика (тоже - пусть мозг занимается, главное - не мешать ему в этом), математические (эти - реально могут пригодиться для облегчения расчетов с цифрами) ... Текстовые ... Давайте рассмотрим внимательно ... Специально убил время, чтобы поближе узнать потенциальные возможности обработки текста ...
Задача : в колонке / столбце таблицы Excel - более 400000 (тысяч) строчек / слов - и надо подсчитать, сколько раз повторяются уникальные слова из общего массива текстовых данных ... Сделаем сортировку от А до Я, что дальше ? А, ничего, сиди / считай вручную ... Текстовые функции Excel предлагают для обработки текста : ...
UNICODE - возвращает число / код знака первого символа в тексте ...
БАТТЕКСТ - преобразование числа в текст ...
ДЛСТР - длина строки, количество знаков в строке (иногда применимо для тупого сравнения) ...
ЗАМЕНИТЬ - замена части строки текста ...
ЗНАЧЕН - преобразование текста в число ...
КОДСИМВ - возвращает число / код знака первого символа в тексте ...
ЛЕВСИМВ - возвращает число символов / знаков от начала строки ...
НАЙТИ - возвращает позицию искомой строки в тексте ...
ПЕЧСИМВ - удаление всех непечатаемых символов / знаков из текста ...
ПОВТОР - повтор текста заданное число раз ...
ПОДСТАВИТЬ - замена части строки текста ...
ПОИСК - возвращает позицию искомой строки в тексте / поиск слева направо ...
ПРАВСИМВ - возвращает число символов / знаков от конца строки ...
ПРОПИСН - конвертация всех букв текста в прописные ...
ПРОПНАЧ - конвертация первой буквы каждого слова текста в прописные, остальные - в строчные ...
ПСТР - возвращает заданное количество знаков / символов текста с указанной позиции ...
РУБЛЬ - преобразование текста в число, денежный формат ...
СЖПРОБЕЛЫ - сжать пробелы / удалить все лишние пробелы в тексте, кроме одиночных между словами ...
СИМВОЛ - возвращает символ с заданным кодом ...
СОВПАД - проверка идентичности двух строк текста ; возвращает : ИСТИНА / ЛОЖЬ
СТРОЧН - конвертация всех букв текста в строчные ...
СЦЕПИТЬ - объединение / коннектация нескольких строк текста в одну ...
Т - проверка содержимого ячейки на соответствие : текст ? или нет ...
ТЕКСТ - преобразование / форматирование числа в текст ...
ФИКСИРОВАННЫЙ - преобразование / форматирование числа в текст, с заданным числом десятичных знаков ...
ЧЗНАЧ - преобразование текста в число без учета языкового стандарта ...
ЮНИСИМВ - возвращает знак / символ Unicode, соответствующий числу / коду знака ...
Не густо ... Первое, что бросается в глаза : вернуть код первого символа ... Бред ...Зачем ? А, если - мне нужен третий / или, восьмой ? ... Если сильно не придираться - есть функция сравнения строк СОВПАД () щелкните мышью на точку / квадратик... Но, она - работает с логическими ИСТИНА / ЛОЖЬ значениями ... Как и функция ЕСЛИ () ... Языки программирования - не трогаем, VBS макросы оставим в покое, сводная таблица или диаграмма / курят бамбук - что, остается ? : ЕСЛИ, СУММ, СЧЁТ, СЧЁТЕСЛИ, СУММЕСЛИМН ... Их применение не позволило мне придумать простую и работоспособную конструкцию программного кода для подсчета вхождений / количества уникальных слов в тексте ... Поэтому я плюнул, тщательно растер, и обратил свой взор на привычные системные инструменты Windows - DOS / BAT / CMD командный процессор ...
Неважно, каким путем / обработкой были получены слова (построчно / в столбец) из массива текста (например, используя WinHex, шестнадцатеричный редактор - можно заменить HEX пробел 20 между словами на код 0D0A переноса строки) ... Главное, чтобы в обрабатываемом тексте не встречались специальные и служебные символы и команды, которые нарушают выполнение BAT / CMD скриптов ... Во-первых, это большинство знаков верхнего ряда клавиатуры ... Плюс - еще по мелочи ...
~ ` ! @ # $ % ^ & * ( ) - _ + = \ | / ' " ?
опасные знаки : больше / меньше, одиночная / двойная кавычка, двоеточие ...
Эти символы можно и нужно использовать при разработке CMD скриптов, но только при тщательном контроле и используя экранировку (если они применяются, как текст, а не специальные инструкции и команды) ... В случае обработки огромного массива строк (а, 400000 (тысяч) - это огромное число, в секундах равное 6666 минут, или 111 часов, или 4 с половиной дня ...) - нет возможности лично проконтролировать каждое значение, и поэтому - лучше сразу избавиться от них (в текстовом редакторе / блокноте : CTRL+ H, найти и заменить, заменить все на [пустая строка в качестве аргумента замены]) ... В разных кодировках текста / национальных алфавитах - также могут встречаться символы, расцениваемые командным процессором, как управляющие ...
Примечание : в этом месте, программисты - обычно организовывают проверку на соответствие символа - печатному и отбрасывают непечатные ... Серьезно - даже не представляю, есть ли подобная проверка в CMD ... А если еще учесть разнообразие кодировок текста ...
Не суть ... Скрипт подсчета слов / строк работает следующим образом ... В некоторой временной папке есть несколько файлов : ...
in.txt - исходный набор отсортированных слов / строк для подсчета и анализа количества уникальных словоформ ... Скрипт будет правильно работать только с предварительно отсортированным списком ... Чтобы последнее значение счетчика было записано в файл количества повторений - в файл in.txt, в самый конец - нужно добавить произвольное слово, например stopword ... Если слово / заглушку не добавлять - достигнув EOF / конца файла - цикл завершит выполнение без сработки на новое слово и последний счет счетчика не будет записан в файл (обусловлено программным кодом сценария скрипта) ...
inout.cmd - собственно / CMD скрипт, который рассмотрим ниже ...
null.txt - пустой файл ... используется для автоматической очистки выходных файлов при новом / следующем запуске скрипта ...
outnum.txt - выходной файл для счетчика повторений слова ...
outtxt.txt - выходной файл для уникального слова / строки ...
tmp.xlsx - временный файл Excel для сортировки и анализа (при необходимости) ...
Вывод результатов в два файла outnum.txt и outtxt.txt сделан для облегчения программного кода скрипта и не мешает совершать / получать успешный подсчет слов и строк в тексте ... Скрипт подсчета количества слов содержит следующие строки программного кода : ...
CHCP 1251 ... Для работы с текстом в кодировке Windows-1251 / русский ... Применяется при необходимости ...
COPY null.txt outnum.txt ...
COPY null.txt outtxt.txt ...
При каждом запуске скрипта - старые выходные файлы очищаются / заменяются (пере записываются) пустым файлом ...
SET OLD=nullword ... Это слово / заглушка - нужно для выравнивания строк в выходных файлах, чтобы слово и его значение - совпадали ... Обосновано работой логики скрипта ...
SET CNT=11 ... При установке счетчика в 0 или 1 - происходит сбой команды ECHO ... Для устойчивой работы скрипта - значение счетчика было умышленно увеличено на +10, что может быть учтено при анализе результатов ...
ECHO %OLD% перенаправляется в outtxt.txt ... Запись выравнивающего строки слова в файл слов / строк ...
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION ... Включение режима локальной / расширенной обработки команд и отложенного расширения переменной среды для обработки переменных в режиме реального времени ... Переменные изменяют знак отображения с %x% (значение известно только после работы сценария, особенно в циклах) на !x! - значение известно сразу после расчета, в реальном времени ...
FOR /F %%I IN (in.txt) DO ( ... Запуск цикла для построчного считывания и обработки слов / строк из файла / источника ...
IF !OLD!==%%I (SET /A CNT=!CNT!+1) ... Если слово одинаковое с предыдущим / не изменилось - увеличить счетчик на +1 ...
REM ECHO Old !OLD! ; Word %%I ; Counter !CNT! ... Отладочная строка ... Можно удалить ... Раскомментировать REM строки, чтобы пошагово и наглядно увидеть, как происходит обработка входных слов и заполнение выходных файлов ...
IF NOT !OLD!==%%I ( ... Если слово изменилось - выполнить следующие действия ...
ECHO !CNT! перенаправить в outnum.txt ... Записать в файл значение счетчика для предыдущего слова ...
REM outnum.txt ... Отладочная строка ... Можно удалить ...
SET CNT=11 ... Установить / сбросить счетчик в псевдо нулевое значение ...
ECHO %%I перенаправить в outtxt.txt ... Записать новое слово в файл слов / строк ...
REM outtxt.txt ... Отладочная строка ... Можно удалить ...
SET OLD=%%I ... Установить новое слово - предыдущим / для будущего сравнения ...
) ... Завершение конструкции обработки для нового слова ...
Продолжение работы цикла построчного считывания слов из файла / источника ...
) ... Завершение цикла построчного считывания слов ... Если не было ошибок при чтении - исходный файл прочитан полностью / до конца ...
ENDLOCAL Завершение локализации рабочей среды CMD ...
EXIT ... Завершение работы интерпретатора команд / файла сценария ...
Результатом обработки слов CMD скриптингом - будут два OUT / выходных файла : со словами и с количеством / счетчиком повторений ... Чтобы иметь возможность сортировки, обработки и анализа полученного результата - можно открыть временный Excel файл и скопировать содержимое файлов в таблицу, например : ...
в столбец A - уникальные слова ...
в столбец B - значение счетчика количества повторов ...
В обоих файлах записи синхронизированы так что - проблем с копированием / вставкой быть не должно ...
Получится примерно такая Excel таблица, из которой явно видно, что слово скрипт встречалось в тексте 294 раза, а слово CMD - всего 161 раз ... Если вам нужны предельно точные значения - заполните в столбце C (ячейке C1) - формулу ...
=B1-10 ... Введенная в скрипте поправка будет вычтена из суммы подсчетов ...
Точка / квадратик в правом нижнем углу ячейки с формулой ... Щелкнуть на нее мышью, чтобы продлить ее действие - на все, следующие вниз - автоматически заполнить ячейки формулой по образцу первой ячейки ...
В столбце $B будет условно / сравнительный, а в столбце $C - точный результат подсчета количества слов по строкам ...
A B C nullword 11 1 скрипт 294 284 CMD 161 151 BAT 193 183 строка 189 179 слово 265 255 stopword -10
Используя Excel - можно вертеть полученной таблицей, "как угодно" : сортировкой найти максимум и минимум, самое часто употребляемое слово по-русски или самое редкое слово по-английски ... Таким образом, используя встроенные средства BAT / CMD программирования Windows, WinHex и Excel - можно относительно легко решить задачу по подсчету уникальных вхождений слов в текст значительного объема, не утруждая себя изучением сложных языков программирования высокого уровня и решением, связанных с ними, проблем ...
август, 2019 ...
Список всех страниц, раздел computer : смотреть онлайн бесплатно, интересное - надо посмотреть ...
Автодиагност визитка, компьютерная диагностика двигателя автомобиля, грузовика. Отечественные и импортные ... Быстрое чтение кодов ошибок DTC ... K-Line. ELM 327. ОБД. EOBD. MOBD. USA OBD. JOBD ... Рекомендации ... Подробнее ...
Уголок автолюбителя ... Авто транспорт ... Информация ... Дайхатсу, Daihatsu ... Мазда, Mazda ... Лянча, Lancia ... Isuzu Bus [CDP trucks] ... Citiport ... Novo ... Novociti ... Turquoise ... Visigo ... Другие машины и услуги ...
На трассе Р-254 как погода от Янд ... Как с погодой на магистрали Р-254, альтернативный прогноз от Яндекс. Сайт л ...
Volvo, Renault, Mack, Nissan UD t ... Клиентские базы данных по ремонту, с картинками и электросхемами. Компьютер ...
Калькулятор онлайн конвертер. Рас ... Калькулятор. Формула. base64. Окружность. Сегмент. Регистр строк текст. Алг ...
Длина волны в частоту. Калькулято ... Перевод длины волны метров в частоту. Calc Wave Freq. Калькулятор, радио те ...
Mitchell Truck Estimate мультисоф ... Mitchell Truck Estimate. Марки модели грузовиков. Классификатор с картинкам ...
Закон Ом калькулятор ватт квт цеп ... Найди по двум числам. Ампер Вольт Ом калькулятор Ватт. Расчёт мощности кВт. ...
OBDAutoDoctor для диагностики авт ... OBDAutoDoctor, диагностируйте и устраняйте проблемы с двигателем, трансмисс ...
2024-01-21 ...
... Склады российских дилеров АвтоВАЗ заполнены на два месяца вперед из-за увеличения спроса на китайские кроссоверы ...
2024-01-26 ...
... Но ещё многие врачи продолжают утверждать, что кефир помогает имунной системе ... Что ? ... Ожирение от кефира ? ... Не-ет, не может быть ! ... И, лишь некоторые - задаются вопросом : а, из чего, собственно, ваш кефир - был изготовлен ? ... (из личного опыта) ...
2023-11-09 ...
... Исследование основано на использовании композитных волокон из хитозана и углеродных нанотрубок, способных восстанавливать поврежденные нервы ПНС и их функции ... Отмечается, что ЦНС функционирует - по-другому, клетки имеют другую природу, поэтому разработанный подход - не может применяться при лечение повреждений ЦНС ...
Смотреть все самые интересные новости последних дней, недели, месяца ...
22:27 29.02.2024 Послание В. В. Путина - ФС. Главное. Кратко. Суть. ... IndexNow : Y222729022024 , B222729022024 ...
17:34 28.02.2024 Announce torrent tracker list 2024. Crazy load speed.
22:13 23.02.2024 Как SVG файл открыть в браузере. Плагины. Программы.
ai wombo.art ...
... создавайте больше с Dream ... безграничное удовольствие с лучшим приложением AI ... рекомендуемые произведения искусства ... произведение будущего ... введите подсказку, выберите художественный стиль, и WOMBO Dream за считанные секунды превратит вашу идею в картину с помощью ИИ ... смотрите произведения сообщества ...
Подробнее : Каталог ИИ инструментов, ассистентов и помощников ...
sat 44406 ...
... Спутник LUCKY-7. Сделано в Чехии.
... Вероятно, это самая дешевая научная космическая миссия в истории человечества ...
FREQ DL 437.525 , Позывной OK0SAT ...
Поляризация : Линейная (квазивсенаправленная антенна, V-диполь 120 градусов) ...
Модуляция : GFSK 4k8 ...
Beacon , радиомаяк , период установлен на 20 секунд ...
... LUCKY-7 telemetry and OBC image decoder.
Подробнее : каталог спутников ...
ai colourise.com ...
... раскрасить фото онлайн бесплатно с помощью AI ... VanceAI реставратор старых фотографий ... восстановление старых повреждённых фотографий на 100 автоматически ... один щелчок, чтобы удалить царапины, складки и т.д., повысить резкость цвета и улучшить лицо с помощью ИИ ...
Подробнее : Каталог ИИ инструментов, ассистентов и помощников ...
Cоциальная сеть, моя страница, поиск, вход без регистрации, знакомство без пароля, войти бесплатно ...
Разрешенные соцсети в РФ : ... VK, вконтакте, общение и поиск друзей ... ОК, одноклассники, найти старых друзей по школе, учёбе, службе и работе ... t.me, telegram, система мгновенного обмена сообщениями, текст, голос и видео ... Youtube, популярный видеохостинг ...
Запрещенные соцсети в РФ : ... Твиттер X, сервис микроблогов и социальная сеть ... Фейсбук, общение с друзьями, родственниками и сослуживцами по работе ... Инстаграм, сеть обмена фото видео для мощных и уверенных, в себе, людей ... [инстасамцов и инстасамок] - шутка ))) ... ЛинкедИн , сеть профессиональных контактов по работе, деловой имидж в бизнесе ...
techstop-ekb.ru © ТехСтоп, Екатеринбург, Россия. 2024.