Обложка канала

R4marketing | канал Алексея Селезнёва | Язык R

Автор канала Алексей Селезнёв, руководитель отдела аналитики в Netpeak, автор R пакетов: ryandexdirect, rfacebookstat и др. В канале публикуются статьи, доклады, новости, заметки по языку R.

R4marketing | канал Алексея Селезнёва | Язык R

4 года назад
Открыть в
​​Дата саентист и циклы-циклы-циклы… Автор: Илья шутов (@iMissile) Если опустить философские рассуждения, что все на уровне процессора является циклом или goto, то можно выделить три причины: 1. При работе с индексами цикла можно легко проглядеть и допустить ошибку. Но тут помощь приходят итераторы. 2. Очень часто циклы вручную пишутся очень неэффективно с точки зрения манипуляций с памятью — сильная просадка по производительности. А у вложенных циклов еще и накладные на старт цикла. 3. Нелинейная структура цикла (break, continue) не позволяют сделать хорошую оптимизацию на уровне процессора или компилятора. А это дополнительно означает, что распараллелить цикл по вычислителям будет очень трудно. В решении этого вопроса помогает функциональный подход и итераторы. Если известно о независимости вычислений значений каждого отдельного шага — надо сообщать об этом компилятору явно. Просто поглядим на циклы на примере различных задачек. Содержание: ● Пример 1. Итерирование по строкам ● Пример 2. Декартово произведение множеств ● Пример 3. Оконные единичные матрицы ● Пример 4. Тайная связь между событиями ● Пример 5. Цифровой храповик ● Пример 6. Серийные покупки ● Пример 7. Пассажирские перевозки ● Пример 8. Выборка по пациентам ● Пример 9. Считаем возрастные группы ● Пример 10. Ускоряем Difference-in-Differences Читайте так же: - Курс "Циклы и функционалы в языке R" #статьи_по_R