Тимур, проясните, пожалуйста про List.Buffer. В ролике вскользь было упомянуто про данную функцию, но не сказано, зачем она была применена, хотя предполагаю, что именно она дает возможность запросу так быстро отрабатывать... Или в дальнейших роликах будет про нее?
Я немножечко про нее рассказываю в еще в одном или двух уроках по функциям List.Accumulate, List.Generate. Про нее будет отдельный урок. Функция нужна, когда мы в каждой строке обращаемся к какому-то другому запросу. Получается, что Power Query в каждой строке этот запрос проверяет и обновляет. При помощи x.Buffer мы даем понять, что запрос нужно забуферовать в одном виде и не перепроверять его в каждой строке.
В общем, как я понял функцию List.Generate: 1. В initial: 1.1 всегда пишется пользовательская функция ()=> 1.2 чаще всего задаётся запись; 1.3 первое поле записи - используется для цикла, условие окончания которого задаётся в condition; 1.4 второе поле записи - используется для накопления результата 2. condition, next, selector - начинается с each 3. В condition задаётся условие окончания цикла для первого поля в записи initial 4. В next: 4.1 задаётся та же запись, что в initial; 4.2 первому полю задаётся условие цикла, то есть к первоначальному значению поля прибавляется 1 4.3 второму полю задаётся необходимое условие, то есть к первоначальному значению поля применяется какая-то дополнительная функция или операция 5. В итоге получаем список с записями, где первое поле - пройденные циклы, второе значение - полученные значения на каждом витке цикла 6. Если нужно вывести не список записей, а лист результатов второго поля - задаём это поле в selector
Браво! Удивляюсь сколько качественных видео материалов и как доходчиво объясняет автор!) Интересная функция List.Generate... Понравилось, что на примере урока обновления происходит практически мгновенно ... в сравнении с результатом "Нарастающий итог Старый" (у меня на обновление ушло 2 мин. 12 сек.)... - огромная разница... Интересно на сколько в будущем при использовании этой функции можно будет сэкономить времени?) Тимур, часто используете функцию List.Generate в работе? Очень рад, что делитесь знаниями! У вас это хорошо выходит) Спасибо!
Тимур, здравствуйте. Решилась спросить:) По какой причине может "Зациклиться" выполнение кода? Проверила правильность написания(вплоть до пробелов ваших скопировала точно). В результате даже не появилось окно: Print output, где должен выводиться результат. В области: Global frame "result 4" (т.е. 1-ый цикл) виден, но не более того..... Сомневаюсь, что это принципиально для меня, я не программист. Первый раз зашла на сайт Python Tutor. Но понять "сложную функцию Power Query" хочется. Может быть, ответ лежит на поверхности? Заранее Благодарю.
Здравствуйте, Наталья! Если в цикле while условие окончания не может выполниться, то цикл будет бесконечным. Возможно, вы перепутали знак больше и меньше.
Зачем в цикле делать if , else, если изначально переменную Результат можно приравнять к 0 как и переменную шага цикла, и без If -> прописать: результат = результат + результат_i
Канал крутой, но вообще не влетает в голову понимание лист, запись и т.д. Как то слишком мудрёно все работает через разные виды скобочек, знаков и т.д.
Смотрите более ранние уроки, где разбираются объекты Power Query: лист, запись, таблица. Если делать все вместе со мной, то все станет ясно. Пока вы руками все не проделаете, то не поймете. Понимание происходит через практику.
Файлы для спонсоров Boosty: boosty.to/comrade-xl/posts/7b4ca60a-1d71-4fea-b94d-6b47e182b687?share=post_link
Файлы для спонсоров ВК: vk.com/comrade.excel?w=wall-185123800_193
Файлы для спонсоров UA-cam: ua-cam.com/users/postUgwiq7K02QtQmYJtgjx4AaABCQ
Индивидуальное обучение: comrade-xl.ru/pq-training/
Страница урока на сайте: comrade-xl.ru/2020/05/01/power-query-list-generate/
Спасибо Тимур за ваши уроки это здорово!
Спасибо!
0:32 Принцип работы List.Generate в визуализаторе Python.
10:04 Справка List.Generate
10:35 Пример_1
14:37 Пример_2 - Нарастающий итог
Тимур, проясните, пожалуйста про List.Buffer. В ролике вскользь было упомянуто про данную функцию, но не сказано, зачем она была применена, хотя предполагаю, что именно она дает возможность запросу так быстро отрабатывать... Или в дальнейших роликах будет про нее?
Я немножечко про нее рассказываю в еще в одном или двух уроках по функциям List.Accumulate, List.Generate. Про нее будет отдельный урок. Функция нужна, когда мы в каждой строке обращаемся к какому-то другому запросу. Получается, что Power Query в каждой строке этот запрос проверяет и обновляет. При помощи x.Buffer мы даем понять, что запрос нужно забуферовать в одном виде и не перепроверять его в каждой строке.
@@comrade_excel Спасибо за ответ! И отдельное спасибо за Вашу работу. Самое главное, не останавливайтесь )))
Вам спасибо за поддержку! Благодаря вам и не останавливаюсь )
В общем, как я понял функцию List.Generate:
1. В initial:
1.1 всегда пишется пользовательская функция ()=>
1.2 чаще всего задаётся запись;
1.3 первое поле записи - используется для цикла, условие окончания которого задаётся в condition;
1.4 второе поле записи - используется для накопления результата
2. condition, next, selector - начинается с each
3. В condition задаётся условие окончания цикла для первого поля в записи initial
4. В next:
4.1 задаётся та же запись, что в initial;
4.2 первому полю задаётся условие цикла, то есть к первоначальному значению поля прибавляется 1
4.3 второму полю задаётся необходимое условие, то есть к первоначальному значению поля применяется какая-то дополнительная функция или операция
5. В итоге получаем список с записями, где первое поле - пройденные циклы, второе значение - полученные значения на каждом витке цикла
6. Если нужно вывести не список записей, а лист результатов второго поля - задаём это поле в selector
Круто
Спасибо!
Браво!
Удивляюсь сколько качественных видео материалов и как доходчиво объясняет автор!)
Интересная функция List.Generate... Понравилось, что на примере урока обновления происходит практически мгновенно ... в сравнении с результатом "Нарастающий итог Старый" (у меня на обновление ушло 2 мин. 12 сек.)... - огромная разница... Интересно на сколько в будущем при использовании этой функции можно будет сэкономить времени?)
Тимур, часто используете функцию List.Generate в работе?
Очень рад, что делитесь знаниями! У вас это хорошо выходит) Спасибо!
Большое спасибо! В работе я применял это не очень часто. Вычисления обычно все таки выполняются в Power Pivot.
@@comrade_excel Спасибо за комментарий...
Вспомнил (после вашего ответа), что вычисления рекомендуют делать в PP.
@@comrade_excel а как сделать так, чтоб ещё в эксель таблица с нарастающим итогом в 50 тыс. строк выгружалась быстро?
Правильная нумерация урока - № 27
Добрый вечер, Тимур. Подскажите, если я на первом шаге определюсь две переменные [i=0, n=4], а на втором укажу [i]
Тимур, а как сделать нарастающий итог по неким разрезам, например, по подразделениям?
На небольших таблицах можно так ua-cam.com/video/k6taN9mew-8/v-deo.html
Тимур, здравствуйте. Решилась спросить:) По какой причине может "Зациклиться" выполнение кода? Проверила правильность написания(вплоть до пробелов ваших скопировала точно). В результате даже не появилось окно: Print output, где должен выводиться результат. В области: Global frame "result 4" (т.е. 1-ый цикл) виден, но не более того..... Сомневаюсь, что это принципиально для меня, я не программист. Первый раз зашла на сайт Python Tutor. Но понять "сложную функцию Power Query" хочется. Может быть, ответ лежит на поверхности? Заранее Благодарю.
Здравствуйте, Наталья!
Если в цикле while условие окончания не может выполниться, то цикл будет бесконечным. Возможно, вы перепутали знак больше и меньше.
Добрый день, "Файлы к уроку доступны спонсорам канала." - где найти к этому видео?
Добрый день!
Ищите на вкладке "Сообщество" ua-cam.com/channels/wAru3vDmH-IdYtwK7JWN4w.htmlcommunity
Зачем в цикле делать if , else, если изначально переменную Результат можно приравнять к 0 как и переменную шага цикла, и без If -> прописать: результат = результат + результат_i
Канал крутой, но вообще не влетает в голову понимание лист, запись и т.д. Как то слишком мудрёно все работает через разные виды скобочек, знаков и т.д.
Смотрите более ранние уроки, где разбираются объекты Power Query: лист, запись, таблица. Если делать все вместе со мной, то все станет ясно. Пока вы руками все не проделаете, то не поймете. Понимание происходит через практику.
@@comrade_excel скорость способа решения потрясает, выходит это не pq тормозной, а знаний и опыта маловато