Страницы: 1 2 След.
RSS
Анализ большого количества данных
 
День добрый.
Есть выгрузка таможенных баз из SQL в excel файл на 840 тыс строк и 42 столбца. Нужно классифицировать некоторые позиции, делаю это с помощью поисковой матрицы. Но из-за того, что это 840 тыс строк, excel мягко говоря не выдерживает! Все очень медленно и есть понимание, что данную работу можно сделать через другую программу.
Прошу совета, через какую ещё программу можно обработать такое количество данных или связку программ.
Заранее Вам благодарен.  
 
mr.Gaudi, через Excel в Power Query
 
Вы хотите сказать, через PQ можно выстроить поисковую матрицу и сразу присваивать классификацию той или иной позиции?
Сегодня пробовал в PP, да безусловно все быстро работает, но он не может вписывать данные в конкретные строки, если это не формула или мера конечно же ))  
 
mr.Gaudi, вы хотя бы пример привели. "Что есть" -> "как надо". Пока никто, кроме Вас поисковую матрицу не видел.
Цитата
mr.Gaudi написал:
через какую ещё программу можно обработать такое количество данных
В R можно обработать
 
Не совсем понял проблему. А что вы собираетесь менять в этом массиве?
Казалось бы - в PQ оставить от массива 2 столбца (31 и 33), делать по 31 графе фильтр и использовать как справочник. Не?
Изменено: Wiss - 05.12.2019 15:14:05
Я не волшебник, я только учусь.
 
Извиняюсь забыл разместить пример.

ps по поводу языка R, могли бы подробно написать? Насколько знаю, он используется в статистики.  
 
Цитата
mr.Gaudi написал:
выстроить поисковую матрицу и сразу присваивать классификацию той или иной позиции
что нужно? найти начальную позицию значений, перечисленных в заголовках? а если одно и то же значение встретится более одного раза?
значения в заголовках будут меняться? может тогда лучше сделать список искомых значений?
какова конечная цель найденных позиций?
лучше опишите для чего это все нужно
Изменено: artyrH - 05.12.2019 15:36:03
 
mr.Gaudi, не обязательно R использовать как инструмент для моделирования и статистики. ETL, препроцессинг данных там тоже хорошо выполняются.
Т.е. его можно использовать как некий аналог PQ.
И пример ясности мне, например, не особо не добавил.
Изменено: Stics - 05.12.2019 15:37:31
 
На самом деле есть ID у каждого значения, просто удалил некоторые столбцы  :)
Проблема возникает в чем:
1) Объемный файл и в excel очень долго все выполняется.
2) Критериев поиска очень много, как по сегментам так и по наименованию.
3) Есть некоторые описания, которые подходят под заданный критерий, но когда их читаешь понимаешь, что это совершенно другое. Пример - нужен удлинители, мне выдает наименование, где встречается "не для удлинителей" или "не удлинители" или "не входят удлинители" итд итд. Т.е. прихожу к выводу, нужен ручной отбор т.к. невозможно настроить отборный поиск т.к. критериев очень много.

И со всем этим, думаю как можно работать и через что?
 
Предлагаю загнать в Аксесс и делать там спокойно выборки. Работать должно почти мгновенно
Изменено: Wiss - 05.12.2019 15:39:18
Я не волшебник, я только учусь.
 
Цитата
mr.Gaudi написал:
нужен удлинители, мне выдает наименование, где встречается "не для удлинителей" или "не удлинители" или "не входят удлинители"
а что еще ждать. по моему, все программы при поиске работают как гугл-переводчик.
наверное и числа не нужны, достаточно при наличии значения выдавать ИСТИНА или ЛОЖЬ
 
Цитата
Wiss написал:
Предлагаю загнать в Аксесс и делать там спокойно выборки. Работать должно почти мгновенно
Загружал и он все это дело отвергает. Выдает ошибку.
Цитата
artyrH написал:
Предлагаю загнать в Аксесс и делать там спокойно выборки. Работать должно почти мгновенно
Скажем так, есть программы заточенные под определенные нужды. Мы же не будем рисовать в excel? (конечно можно это делать, но это полный трешь)  
 
получается нужно текст отнести к какой то категории. ну да, задача
например, для удлинителей можно составить список слов, которые должны присутствовать - удлинител, диаметр, сечени, метр, цвет и др. при наличии  трех  из пяти признаков отмечать как удлинитель. а дальше все равно визуальная проверка
 
Да теперь Вы меня поняли))))
Ещё в таможне очень часто есть наименования логически неподходящие в классификацию, а если их случайно добавить, то можно увидеть совершенно другие цифры. Что несомненно скажется на результате. НО 840 тыс строк, это слишком сильно для ручной обработки даже с помощью функций.
Думал, мб есть какая то программа для поиска и анализа данных, типа SSAS tabular.  
 
Цитата
Stics написал:
не обязательно R использовать как инструмент для моделирования и статистики. ETL, препроцессинг данных там тоже хорошо выполняются.
ещё бы знать язык R ))))
 
Цитата
mr.Gaudi написал:
Загружал и он все это дело отвергает. Выдает ошибку.
Ну тут вопрос уже в том как загружали. Я так понимаю, что Вам в конечном итоге нужно что-то типа вот такого файла ACCESS:
1. Выводит все значения, которые соответствуют одному из параметров.
2. Показывает какие параметры нашлись, а какие нет.

 
Изменено: Wiss - 05.12.2019 16:29:21
Я не волшебник, я только учусь.
 
Wiss, сейчас попробовал загрузить подругому, получилось.
Но вопрос остается даже с access актуальным:
1) Очень долго все подгружается.
2) Есть удобный фильтр и поиск по тексту, это хорошо. НО в каждую из этих строчек нужно присваивать классификацию, на подобие: "Детали - пылесос (шнур)" ; "Бытовая техника - пылесос (шнур)" ; "Промышленный - пылесос (шнур)" итд  Иметься ли такая возможность?

Но самая проблема , что он долго грузит то или иное действие.  
 
Цитата
mr.Gaudi написал:
1) Очень долго все подгружается.
Тут ничего сказать  не могу (Может нет, а может - Да). Нужно тестировать с живыми данными + У меня там всё на коленке на скорую руку сделано, поэтому куча ненужных ресурсоёмких запросов выполняется. Раз уж вы загрузили в Access данные, то проверьте насколько долго будет крутиться запрос формата
Select * from ВашаТаблица where ПолесНаименованием товара like "*пылесос*" or like "*холодильник*". Если подобный запрос крутится за приемлемое время - тогда в конечном итоге всё получится.
Цитата
mr.Gaudi написал:
2) Есть удобный фильтр и поиск по тексту, это хорошо. НО в каждую из этих строчек нужно присваивать классификацию
Можно добавить в исходную таблицу ещё 1 столбец, в который забивать ваши данные о классификации (пример). Много чего возможно, много чего там нужно сделать. Например:
1. Нужно добавить возможность фильтрации по коду.
2. Нужно добавить возможность вводить слова-исключения.

Это уже серьёзный проект и с ним нужно в раздел "Работа". Готов взяться. С предметной областью знаком.
 
Изменено: Wiss - 05.12.2019 17:31:12
Я не волшебник, я только учусь.
 
Цитата
mr.Gaudi написал:
и 42 столбца
я так понял искать надо в одной ячейке 42 значения. а можно одним списком эти 42 значения. и список категорий со соответствующими значениями
 
Цитата
Wiss написал:
Много чего возможно, много чего там нужно сделать.
Это я понимаю, сам кручу верчу)))
Цитата
Wiss написал:
Это уже серьёзный проект и с ним нужно в раздел "Работа". Готов взяться. С предметной областью знаком.
Спасибо за предложение, но смысл этой темы - понять мне, через какой инструмент лучше работать и обучиться ему.
Цитата
artyrH написал:
я так понял искать надо в одной ячейке 42 значения. а можно одним списком эти 42 значения. и список категорий со соответствующими значениями
Да по факту нужны 5 столбца, но один черт долго грузит =(  
 
Цитата
mr.Gaudi написал:
но смысл этой темы - понять мне, через какой инструмент лучше работать и обучиться ему.
Тоже хорошо. ИМХО, много данных = БД. Локальная БД = аксесс. Основной вопрос - насколько быстро/медленно там выполняются запросы по текстовому полю при таком количестве записей.

Блин, в предыдущем сообщении ссылку на файл не сделал.

Если на Ваших 840 тыс записей <Типовой запрос> (там есть) работает нормально - то можно думать об аксессе дальше, если нет, то чёрт его знает что делать.

+Как вариант разбить эти 840 тыс записей на заведомо не пересекающиеся куски (Еда отдельно, стройматериалы отдельно, техника и т.д.)
Изменено: Wiss - 05.12.2019 18:21:43
Я не волшебник, я только учусь.
 
Продолжаю пытаться понять, что же за чудо-работу нужно сделать... Как вариант вместо формул можно попробовать написать макрос, работающий по следующему алгоритму:
1. Загоняет колонки с  "G31_1" по "Классификация товаров" в массив.
2. Пробегается по столбцу "G31_1" :
    2.1. Если столбец  "Классификация товаров" заполнен - ничего не делает (или что-то должен сделать?)
    2.2. Иначе проверяет текущее значение на нужные критерии и заполняет соответствующие столбцы.
3. Выгружает обратно на лист всё, что получится (Данные можно выгружать на отдельный лист или вообще в другую книгу).

Плюсы - должно быть быстрее (наверное) .
Минусы - не пробовал создавать массив размером в 800 тыс строк. Скорее всего будет тормозить (вроде бы не особо. Чирканул макрос. Там размер диапазона только нужно сменить с 200 строк на 840тыс).
Изменено: Wiss - 05.12.2019 18:57:56
Я не волшебник, я только учусь.
 
Wiss,искренне Вам благодарен, что пытаетесь помочь, так как чувствую себя пещерным человеком  :D

Сейчас расскажу про особенности таможенной базы:
Столбец G31_1 - Это собственно где в таможенных базах пишут описание на товар, к сожалению, записывают черт знает как и с такими ошибками, что это делает количество поисковых запросов бесчисленно.
Пример - мне нужно по факту найти удлинители используемые в 220, ну это как для садовой техники или просто ввозимые как деталь к пылесосам. Что бы мне выгрузило все удлинители из базы SQL, я соответственно использую слова маркеры "удлин" и "удлен"(да да могут и так  :D ).
"Сразу отвечу на вопрос, почему нету критериев 220 или удлинители электрические? --- да все просто, они просто могут это не писать и я потеряю часть данных  :( ".
Ну собственно я выгрузил все эти удлинители, среди них что я нахожу мне ненужного: удлинители радио вышек, удлинители hdmi, удлинители для медицинских аппаратов, шнековые удлинители, удлинители для нефтепромышленности итд итд. Могу продолжать очень долго. Но кроме этих запросов самое страшное вылезают такие: не для удлинителей, удлинители пустые, только корпус удлинителей итд.
Есть позиции, где написана не одна ввозимая позиция, а на 6 тыс символов (статья) и там будут и удлинители и черт знает ещё что.
В конечном счете, которые удлинители мне подходят я присваиваю им классификацию относительно каждой строчке, что написано - бытовые удлинители, сетевые удлинители итд.

Как итог получается ишачья работа т.к. нужно проверять каждую позицию. Ладно бы все ограничивалось только удлинителями, там ещё запросы есть, не говоря уж о том, что удлинители в таможне могут называть и подразумевать по разному - электрические проводники, силовые кабели итд.

Мне по факту от искомой программы нужно:
1) Быстродействие.
2) Выставлять слова маркеры.
3) Присваивать классификацию отдельным строкам.

Верю, что есть такая программа  :)

ps так в access можно заносить относительно каждой строки, отдельные значение ???
 
Доброе время суток
Цитата
mr.Gaudi написал:
Верю, что есть такая программа
Тогда зачем обсуждать какую-то программу на форуме по Excel? Почему бы не пойти сразу сюда?
 
mr.Gaudi, со структурой таможенной базы я знаком не понаслышке, просто некоторое время как от неё отлучён, скучаю, ностальгирую и поэтому активно пытаюсь помочь.

Аксесс это те же самые таблицы, просто фиксированной ширины. При желании количество столбцов можно запросто изменить, то есть добавить новый столбец, в который Вы сможете заносить всё, что захотите.
Если приноровиться, то запросы там вполне легко и приятно. Раз Вам нужно прогонять много разных произвольных условий, то, скорее всего это туда. Так как там все условия к одному столбцу можно написать в одно и то же поле, причём и включающие like "*пылесос*" и исключающие not like "*промышленный*". Единственная загвоздка в том, что он отфильтрует Вам всё, что нужно, но не подсветит какие именно из условий выполнились. Запрос like "*пылесос*" and (like "*зеленый*" or like "*красный*") вытащит все пылесосы красного и зелёного цвета, а вот какие из них красные, а какие зелёные придётся разбираться вручную или существенно усложнять (замедлять) запрос и добавлять новые вычисляемые столбцы. Это, наверное, можно как-то организовать и автоматизировать, но я не могу навскидку сказать как именно.

Существенная проблема состоит в том, что я второй день не могу понять что Вы всё-таки хотите?! В конечном итоге?!
1. Проверить правильность классификации товаров в таможенной базе?! Тут обычно пляшут от конкретного кода и ищут заранее известные/распространенные/предполагаемые ошибки.
2. Подобрать правильный код для своих товаров? С этим вроде бы отлично справляется Интернет + зачем Вам тогда пользовательские столбцы с заметками/Вашей классификацией.
3. Составить какой-то хитрый справочник?! На весь ТН ВЭД  - задача нереальная, на отдельные коды - а нахоа, те, кто этим плотно занимается и так наизусть помнят и коды целиком и особенности классификации.

Если что - можете стучаться в личку. Поможу чем сможу.
Изменено: Wiss - 06.12.2019 10:50:59
Я не волшебник, я только учусь.
 
Wiss, писал сообщение, отправил сюда и что то его не видно.
Спасибо Вам за помощь. В эти выходные попробую через access поработать.
Думаю я найду выход-алгоритм, но когда уже сделаю всю работу ))))
 
mr.Gaudi,
я писал обработчики, которые  собирали аналитику по таможенным базам
с отбором по всем доступным полям под любые условия (равно, не равно, больше, меньше, содержит , начинается, заканчивается и пр.)
ваши удлинители имеют код согласно ТНВЭД поэтому вылавливаются легко
код товара должен соответсвовать электрическим удлинителям 220В
наименование товара должно содержать слово удлинитель

вот и все!
файлы по 500-700 тыс строк обрабатывались за 15-20 сек
мне для тестов высылали по 3-4 файла, а какие обьемы информации обрабатывал заказчик у себя я не знаю
аналитика по отправителю, получателю, по стране
в итоговых таблицах общие обьемы, %, посортировано от больших к меньшим и обычно 5-10 верхних позиций держали 80% поставок по выбранному товару
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, хотелось узнать, где вы писали данный запрос?
А про элементарные удлинители, я вложил пример, если Вы присмотритесь по кодам и что они обозначают, то поймете, что нет четкой классификации от таможни.  
 
Цитата
mr.Gaudi написал:
поймете, что нет четкой классификации от таможни.  
Угу. Там ещё столбец "Ставка таможенной пошлины напрашивается :).
Я не волшебник, я только учусь.
 
Чем глубже в лес, тем больше дров! Но задача есть задача  :sceptic:  
Страницы: 1 2 След.
Наверх