Страницы: 1
RSS
Power Query. Сопоставление номера телефона с его префиксом в таблице префиксов., Аналог формул Excel, реализованный в Power Query
 
Здравствуйте!
Скрытый текст

Не знаком с расценками на подобные работы, хотелось бы уложиться в 1 тысячу, максимум - 1 500 рублей.
С уважением, Виктор Косенков.
Московская область, город Электросталь [телефоны удалены]

Файл с заданием большой, 1,2 Мб, поэтому ссылка на Яндекс-Диск: https://yadi.sk/i/52q_q76y3Q49pk
 
Номера телефонов удалил. Пора бы ознакомиться с Правилами.
 
Спасибо, Юрий.
Правила прочитал, конкретно по телефонам вроде бы нет ограничений, но, пожалуй, Вы правы, мошенники могут использовать такие данные в неблаговидных целях.
 
Каков реальный объем данных, сколько строк (номеров и префиксов)? Может макросом попробовать? Какая скорость Вас устроит?
 
Прежде всего есть трафик - каждый месяц отдельный csv файл, где порядка 110 - 150 тысяч записей. Одна запись - один звонок. После загрузки этих файлов в Power Query и отфильтровывания ненужных вызовов (входящих, несостоявшихся) остается около 500 000 записей. Из этого запроса делаю запрос уникальных, неповторяющихся номеров, которые были набраны и по которым в дальнейшем нужно произвести необходимые расчеты - за 10 месяцев 2017 года таких уникальных номеров набралось около 35 тысяч. Каждый месяц этот список будет увеличиваться, к концу года тысяч на 7 прибавится, значит максимум 42 тысячи номеров, к которым нужно из таблицы префиксов подобрать префиксы для дальнейших расчётов.
Скорость - понятно, хочется чтобы работало всё это побыстрее, не дольше 2-3 минут.
 
Виктор, Вы всё же уточните - решение нужно исключительно при помощи Power Query?
 
Юрий, если не получится в Power Query, придется решать на листе, но желательно сджойнить эти таблицы в PQ, чтобы потом сразу передать их в модель данных PowerPivot для дальнейших расчетов и создания отчетов.
 
Вас же спросили:
Цитата
skais675 написал:
Может макросом попробовать?
Не прибегая к PQ.
 
Если макрос получится быстрее существующих формул, можно попробовать, но PQ никуда не денется, там происходит много чего другого. Данная операция по нахождению префиксов только маленький кирпичик в большом процессе тарификации телефонных переговоров.
 
С макросом пока рано что-то говорить нужно пробовать (попробовал один из вариантов - неудачно - скорость очень низкая). SQL конечно понятнее, и даже знаю как нужно сделать (сам запрос SQL), но к сожалению с PQ не работаю. Пока не претендую!
Решил макросом, выслал предложение в личке.
Изменено: skais675 - 26.11.2017 22:38:49
 
Доброе время суток.
Сделал версию на Power Query с добавлением столбца первых двух символов префикса для партицирования соединения таблиц. Соединяются на моём ноуте за 35 секунд. Непонятно, правда, существование двух одинаковых префиксов одной и тоже страны, но с разными расценками.
Цитата

1027829771000   1027   ЮАР   1,51   01.09.2016
1027829771000   1027   ЮАР   3,30   01.02.2017
Если предложение skais675, вас Виктор не устроит, то дайте знать. Хотя сам подход к обработке данных мне не очень нравиться.
Изменено: Андрей VG - 26.11.2017 23:10:02
 
Андрей VG, решение макросом на компе 12 летней давности - 27 сек.
Цитата
Непонятно, правда, существование двух одинаковых префиксов одной и тоже страны, но с разными расценками.
там разный период дат, автор пояснял.
Автор ознакомился, вроде все ок.
Цитата
Не знаком с расценками на подобные работы, хотелось бы уложиться в 1 тысячу, максимум - 1 500 рублей.
Автор оплатил 500р :(.
Из лс
Цитата
всё же надеюсь, завтра появятся Андрей Гриценко или Максим Зеленский или другие спецы PowerBI и сделают, как хотелось, в PQ
Изменено: skais675 - 26.11.2017 23:58:25
 
Цитата
skais675 написал:
решение макросом на компе 12 летней давности - 27 сек.
Что-то долго на VBA-то для такой задачи, типовое решение со словарём, пусть даже нужно выводить все строки из tPrefix по датам. Увы, PQ так "руки" не выкрутишь, хотя надо попробовать. У меня на том же ноуте (пусть и мобильный i7, но шестилетней давности) 0,3 секунды. Собственно, долго ни должно быть O(23332 * 8 * Log(26208) ).

Цитата
skais675 написал:
всё же надеюсь, завтра появятся Андрей Гриценко
Хм, а я тогда кто? Или у меня на форуме появился одновременно и тёзка и однофамилец?
Цитата
skais675 написал:
Автор оплатил 500р
Зря согласились.
Всё же странно, что Виктор не задал задание в профильной BI группе в Facebook.
 
Ускорил, теперь отрабатывает за 1 сек на компе 12 летней давности ;) (убрал statusbar, ну и в range перевел) .
Изменено: skais675 - 27.11.2017 00:51:32
 
Цитата
skais675 написал:
Автор оплатил 500р .
Влад, я не хотел оскорбить Вас небольшой суммой, но всё же такое решение не совсем то, что я хотел изначально. Впрочем, Юрий задавал мне вопрос по этому поводу и я согласился посмотреть Ваш макрос. Чтобы не выглядеть жмотом, пересылаю ещё 500 р. Вы действительно потратили своё время и было бы несправедливо отказываться от изначально объявленной мной же суммы вознаграждения. Спасибо.
Цитата
Андрей VG написал:
Хм, а я тогда кто?
:) Я Вас и мел в виду. Обычно на форуме есть кто то из владеющих Power BI инструментами, а вчера кроме Влада никто не заинтересовался задачей и только на ночь глядя появились Вы.
Цитата
Андрей VG написал:
Всё же странно, что Виктор не задал задание в профильной BI группе в Facebook.
Мне не совсем удобно напрягать крутых профи группы своими дилетантскими вопросами, хотя несколько раз мне там очень хорошо помогли.  
 
Отправил Виктору вариант на PQ для тестирования. Подтянул скорость до 3 секунд.
 
Андрей, спасибо! То, что требовалось. Об оплате - в личных сообщениях.
Страницы: 1
Читают тему
Наверх