Что общего между ML и серфингом? Регуляризации Лассо и Ридж 🌊
Сегодня поговорим про L1 и L2 регуляризации. Другие их названия - Лассо и Ридж. Это одни из самых распространенных понятий в ML.
Подробнее о регуляризациях и о регрессии - в нашей статье.
#itresume #maths #ml #machinelearning #ds #datascience
Сегодня поговорим про L1 и L2 регуляризации. Другие их названия - Лассо и Ридж. Это одни из самых распространенных понятий в ML.
Подробнее о регуляризациях и о регрессии - в нашей статье.
#itresume #maths #ml #machinelearning #ds #datascience
Подборка самых коварных ошибок SQL 😈
Самый страшный враг - тот, которого не видишь. Вот и в SQL есть ошибки, о которых Вы можете даже не знать. А результаты-то будут неправильные...
Сегодня публикуем подборку таких уловок, чтобы Вы на них не попадались впредь. Предупрежден - значит вооружен!
PS. А еще, если у Вас никак не доходили руки почитать про оператор COALESCE, то самое время сделать это сейчас. Это мы тоже обсуждаем в статье 😌
#itresume #sql
Самый страшный враг - тот, которого не видишь. Вот и в SQL есть ошибки, о которых Вы можете даже не знать. А результаты-то будут неправильные...
Сегодня публикуем подборку таких уловок, чтобы Вы на них не попадались впредь. Предупрежден - значит вооружен!
PS. А еще, если у Вас никак не доходили руки почитать про оператор COALESCE, то самое время сделать это сейчас. Это мы тоже обсуждаем в статье 😌
#itresume #sql
Методы нормализации данных в Python с использованием NumPy 🎯
Работать с числовыми данными нужно очень аккуратно. Иногда даже очень похожие, на первый взгляд, наборы чисел могут таить в себе неприятные сюрпризы.
Чтобы бороться с этими сложностями, используют различные методы нормализации данных.
Сегодня рассмотрим:
- Нормализацию с помощью NumPy
- Residual Extraction
- Мин-Макс масштабирование
- Генераторы списков, лямбда функции и универсальные функции NumPy
Приятного чтения!
#itresume #python #numpy #maths
Работать с числовыми данными нужно очень аккуратно. Иногда даже очень похожие, на первый взгляд, наборы чисел могут таить в себе неприятные сюрпризы.
Чтобы бороться с этими сложностями, используют различные методы нормализации данных.
Сегодня рассмотрим:
- Нормализацию с помощью NumPy
- Residual Extraction
- Мин-Макс масштабирование
- Генераторы списков, лямбда функции и универсальные функции NumPy
Приятного чтения!
#itresume #python #numpy #maths
Визуализация с R. Ящик с усам 👨
Эта статья — первая в цикле «Визуализация с R», и начнем мы с «ящика с усами». Ну или просто — boxplot.
Поговорим о том, что такое boxplot, для чего его используют и как построить его с помощь:
→ базовой графики R
→ библиотеки ggplot2
→ библиотеки ggstatplot
→ библиотеки plotly
Забирайте себе, чтобы не потерять!
PS. Следите за рубрикой #визуализация_с_R, чтобы не пропустить новые статьи по этой теме! 😌
#itresume #rstats #визуализация_c_R #dataviz #boxplot
Эта статья — первая в цикле «Визуализация с R», и начнем мы с «ящика с усами». Ну или просто — boxplot.
Поговорим о том, что такое boxplot, для чего его используют и как построить его с помощь:
→ базовой графики R
→ библиотеки ggplot2
→ библиотеки ggstatplot
→ библиотеки plotly
Забирайте себе, чтобы не потерять!
PS. Следите за рубрикой #визуализация_с_R, чтобы не пропустить новые статьи по этой теме! 😌
#itresume #rstats #визуализация_c_R #dataviz #boxplot
Большое руководство по линейной алгебре для машинного обучения 💥
Линейная алгебра - то, на чем основаны все алгоритмы ML. Чтобы хотя бы немного разбираться в этой области, нужно знать, как минимум:
- Векторные и тензорные операции
- Нормированные и метрические пространства
- Матричные операции
- Матричные разложения, собственные числа и собственные вектора
- Афинные преобразования
- Многое другое
Если какие-то вещи Вы не знаете, забыли или просто хотите освежить, то публикуем для Вас отличное руководство по линейной алгебре.
Забирайте себе, чтобы не потерять и использовать в любой момент! 😌
PS. Все разделы сопровождаются кодом на Python, так что это не просто теоретические выкладки ☝
#itresume #math #linearalgebra #ml #machinelearning #datascience #ds #python #numpy
Линейная алгебра - то, на чем основаны все алгоритмы ML. Чтобы хотя бы немного разбираться в этой области, нужно знать, как минимум:
- Векторные и тензорные операции
- Нормированные и метрические пространства
- Матричные операции
- Матричные разложения, собственные числа и собственные вектора
- Афинные преобразования
- Многое другое
Если какие-то вещи Вы не знаете, забыли или просто хотите освежить, то публикуем для Вас отличное руководство по линейной алгебре.
Забирайте себе, чтобы не потерять и использовать в любой момент! 😌
PS. Все разделы сопровождаются кодом на Python, так что это не просто теоретические выкладки ☝
#itresume #math #linearalgebra #ml #machinelearning #datascience #ds #python #numpy
Продвинутые графики в Python. Seaborn 🌊
Статья про Seaborn - вторая из цикла "Построение графиков в Python".
Библиотека Seaborn позволяет не просто "накидать" простенький график для первичного анализа. Она позволяет строить действительно сложные и красивые графики! 😍
В статье рассмотрим:
→ График плотности и гистограмму
→ Scatter plot, график совместного распределения и hexbin plot
→ Violin plot или скрипичный график
→ Pair plot
→ Использование facet grid
→ Тепловые карты
Приятного чтения!
#itresume #python #dataviz #seaborn #pandas
Статья про Seaborn - вторая из цикла "Построение графиков в Python".
Библиотека Seaborn позволяет не просто "накидать" простенький график для первичного анализа. Она позволяет строить действительно сложные и красивые графики! 😍
В статье рассмотрим:
→ График плотности и гистограмму
→ Scatter plot, график совместного распределения и hexbin plot
→ Violin plot или скрипичный график
→ Pair plot
→ Использование facet grid
→ Тепловые карты
Приятного чтения!
#itresume #python #dataviz #seaborn #pandas
Руководство по работе с SQL с помощью Python 👍🏻
Почти во всех современных проектах используются базы данных. Соответственно, возникает потребность интегрировать код на Python и SQL.
Сегодня на примере SQLite разберем, как максимально удобно внедрить БД в свой Python-проект.
#itresume #sql #python #sqlite
Почти во всех современных проектах используются базы данных. Соответственно, возникает потребность интегрировать код на Python и SQL.
Сегодня на примере SQLite разберем, как максимально удобно внедрить БД в свой Python-проект.
#itresume #sql #python #sqlite
Дайджест вакансий за 16.11.20 - 23.11.20 🕵️
✅ Продуктовый аналитик
Зарплата: от 160 000 до 190 000 руб.
Компания: Constanta
Занятость: Полная занятость, гибкий график (удаленная работа)
Опыт: 3–6 лет
Ключевые навыки: Python, SQL, Статистика
Ссылка на вакансию: https://bit.ly/3nRLJoz
✅ Senior Data Scientist
Зарплата: от 180 000 руб.
Компания: Автостат Медиа
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Python, Data Mining, SQL, MS Visio, Machine Learning, Deep Learning, Технический английский
Дополнительные навыки: Computer Vision, OpenCV / Dlib / Dask
Ссылка на вакансию: https://bit.ly/3kW9f1I
✅ Аналитик BI
Зарплата: от 80 000 руб.
Компания: CarPrice
Занятость: Полная занятость, полный день (удаленная работа)
Опыт: 1 год
Ключевые навыки: SQL, PowerBI, English (базовый)
Дополнительные навыки: BI инструменты, Excel, 1C, администрирование БД
Ссылка на вакансию: https://bit.ly/2UTugiQ
✅ Product Analyst
Зарплата: от 150 000 руб.
Компания: Dostavista Global
Занятость: Полная занятость, удаленная работа
Опыт: 1–3 года
Ключевые навыки: SQL, Python, Tableau, Reporting, R&D, Product Development
Дополнительные навыки: Статистические методы, A/B testing, predictive modeling, Airflow
Ссылка на вакансию: https://bit.ly/3nQF12a
✅ Data Scientist
Зарплата: от 120 000 до 170 000 руб.
Компания: Артистраж
Занятость: Полная занятость, полный день
Опыт: от 1 года
Ключевые навыки: Python, R, Machine Learning, Computer Vision, Big Data
Дополнительные навыки: работа с БД, визуализация данных
Ссылка на вакансию: https://bit.ly/35VGlud
✅ DWH/BI аналитик
Зарплата: от 170 000 до 220 000 руб.
Компания: Мокка
Занятость: Полная занятость, полный день (гибкий график)
Опыт: 3–6 лет
Ключевые навыки: SQL, MS SQL Server
Дополнительные навыки: Tableau, Power BI
Ссылка на вакансию: https://bit.ly/2IXHzfA
✅ Разработчик моделей машинного обучение (ML Engineer)
Зарплата: от 170 000 до 220 000 руб.
Компания: «Газпромбанк»
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Python, SQL, Моделирование, Machine learning, Математическая статистика, знание Linux-систем, знание алгоритмов Supervised и Unsupervised
Дополнительные навыки: Hadoop, Spark, Django/Flask
Ссылка на вакансию: https://bit.ly/3nRox9E
#itresume #vacancy
✅ Продуктовый аналитик
Зарплата: от 160 000 до 190 000 руб.
Компания: Constanta
Занятость: Полная занятость, гибкий график (удаленная работа)
Опыт: 3–6 лет
Ключевые навыки: Python, SQL, Статистика
Ссылка на вакансию: https://bit.ly/3nRLJoz
✅ Senior Data Scientist
Зарплата: от 180 000 руб.
Компания: Автостат Медиа
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Python, Data Mining, SQL, MS Visio, Machine Learning, Deep Learning, Технический английский
Дополнительные навыки: Computer Vision, OpenCV / Dlib / Dask
Ссылка на вакансию: https://bit.ly/3kW9f1I
✅ Аналитик BI
Зарплата: от 80 000 руб.
Компания: CarPrice
Занятость: Полная занятость, полный день (удаленная работа)
Опыт: 1 год
Ключевые навыки: SQL, PowerBI, English (базовый)
Дополнительные навыки: BI инструменты, Excel, 1C, администрирование БД
Ссылка на вакансию: https://bit.ly/2UTugiQ
✅ Product Analyst
Зарплата: от 150 000 руб.
Компания: Dostavista Global
Занятость: Полная занятость, удаленная работа
Опыт: 1–3 года
Ключевые навыки: SQL, Python, Tableau, Reporting, R&D, Product Development
Дополнительные навыки: Статистические методы, A/B testing, predictive modeling, Airflow
Ссылка на вакансию: https://bit.ly/3nQF12a
✅ Data Scientist
Зарплата: от 120 000 до 170 000 руб.
Компания: Артистраж
Занятость: Полная занятость, полный день
Опыт: от 1 года
Ключевые навыки: Python, R, Machine Learning, Computer Vision, Big Data
Дополнительные навыки: работа с БД, визуализация данных
Ссылка на вакансию: https://bit.ly/35VGlud
✅ DWH/BI аналитик
Зарплата: от 170 000 до 220 000 руб.
Компания: Мокка
Занятость: Полная занятость, полный день (гибкий график)
Опыт: 3–6 лет
Ключевые навыки: SQL, MS SQL Server
Дополнительные навыки: Tableau, Power BI
Ссылка на вакансию: https://bit.ly/2IXHzfA
✅ Разработчик моделей машинного обучение (ML Engineer)
Зарплата: от 170 000 до 220 000 руб.
Компания: «Газпромбанк»
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Python, SQL, Моделирование, Machine learning, Математическая статистика, знание Linux-систем, знание алгоритмов Supervised и Unsupervised
Дополнительные навыки: Hadoop, Spark, Django/Flask
Ссылка на вакансию: https://bit.ly/3nRox9E
#itresume #vacancy
Обнаружение выбросов с помощью одного SQL-запроса 💹
Часто статистическая обработка данных затрудняется тем, что данные не очищены: либо присутствуют пробелы, либо выбросы. И важно уметь такие аномалии находить, причем не вручную.
Сегодня рассмотрим, как можно идентифицировать выбросы в данных с помощью одного SQL-запроса на примере посещаемости сайта.
#itresume #sql
Часто статистическая обработка данных затрудняется тем, что данные не очищены: либо присутствуют пробелы, либо выбросы. И важно уметь такие аномалии находить, причем не вручную.
Сегодня рассмотрим, как можно идентифицировать выбросы в данных с помощью одного SQL-запроса на примере посещаемости сайта.
#itresume #sql
Дайджест вакансий за 18.01.2021 - 25.01.2021 🕵
✅ Аналитик
Зарплата: от 100 000 руб.
Компания: ООО Диджитал Лайн
Занятость: Полная занятость, полный день
Опыт: 1–3 года
Ключевые навыки: Python (numpy, pandas, sklearn), SQL, Tableau, Power BI, Математическая статистика
Ссылка на вакансию: https://vk.cc/bXzxT2
✅ Стажер-аналитик
Зарплата: до 80 000 руб.
Компания: Joom
Занятость: Стажировка, полный день
Опыт: не требуется
Ключевые навыки: Python (Pandas, Numpy), SQL, Математическая статистика
Ссылка на вакансию: https://vk.cc/bXzufG
✅ Machine Learning Engineer / Data Scientist
Зарплата: от 250 000 руб.
Компания: Gravitum
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Разработка моделей машинного обучения, ML-фреймворки (tensorflow, sklearn, keras), SQL, Алгоритмы ML/DL, Математическая статистика, Python, Английский язык (Upper Intermediate или выше)
Дополнительные навыки: Модели Computer Vision, NLP, AWS, Google Cloud
Ссылка на вакансию: https://vk.cc/bXzslV
✅ Data Analyst
Зарплата: от 150 000 до 230 000 руб.
Компания: Эверис, Представительство
Занятость: Полная занятость, полный день
Опыт: от 3 лет
Ключевые навыки: R или Python, SQL
Дополнительные навыки: Французский язык
Ссылка на вакансию: https://vk.cc/bXzyFY
✅ QA - engineer (DataBase) middle
Зарплата: от 80 000 руб.
Компания: ООО Перфект Системс
Занятость: Полная занятость, удаленная работа
Опыт: 1-3 года
Ключевые навыки: ETL разработка, DWH, Data Lake, Tестирование ETL/ELT процессов, SQL, MPP СУБД, NoSQL СУБД, Hadoop, GIT, Jira, Confluence, CI/CD
Дополнительные навыки: Tableau, Английский язык
Ссылка на вакансию: https://vk.cc/bXzw6T
✅ Product Analyst
Зарплата: от 150 000 руб.
Компания: Dostavista Global
Занятость: Полная занятость, удаленная работа
Опыт: 1–3 года
Ключевые навыки: Статистические методы, SQL, Python, А/Б тестирование, Tableau, Прогностическое моделирование
Дополнительные навыки: Английский язык
Ссылка на вакансию: https://vk.cc/bXzx6C
✅ Аналитик BI
Зарплата: от 120 000 руб.
Компания: Метр Квадратный
Занятость: Полная занятость, гибкий график
Опыт: от 2 лет
Ключевые навыки: SQL (PostgreSQL), Python или R, BI-системы (Tableau, Power BI)
Дополнительные навыки: Cognos BI
Ссылка на вакансию: https://vk.cc/bXzzf
#vacancy
✅ Аналитик
Зарплата: от 100 000 руб.
Компания: ООО Диджитал Лайн
Занятость: Полная занятость, полный день
Опыт: 1–3 года
Ключевые навыки: Python (numpy, pandas, sklearn), SQL, Tableau, Power BI, Математическая статистика
Ссылка на вакансию: https://vk.cc/bXzxT2
✅ Стажер-аналитик
Зарплата: до 80 000 руб.
Компания: Joom
Занятость: Стажировка, полный день
Опыт: не требуется
Ключевые навыки: Python (Pandas, Numpy), SQL, Математическая статистика
Ссылка на вакансию: https://vk.cc/bXzufG
✅ Machine Learning Engineer / Data Scientist
Зарплата: от 250 000 руб.
Компания: Gravitum
Занятость: Полная занятость, удаленная работа
Опыт: 3–6 лет
Ключевые навыки: Разработка моделей машинного обучения, ML-фреймворки (tensorflow, sklearn, keras), SQL, Алгоритмы ML/DL, Математическая статистика, Python, Английский язык (Upper Intermediate или выше)
Дополнительные навыки: Модели Computer Vision, NLP, AWS, Google Cloud
Ссылка на вакансию: https://vk.cc/bXzslV
✅ Data Analyst
Зарплата: от 150 000 до 230 000 руб.
Компания: Эверис, Представительство
Занятость: Полная занятость, полный день
Опыт: от 3 лет
Ключевые навыки: R или Python, SQL
Дополнительные навыки: Французский язык
Ссылка на вакансию: https://vk.cc/bXzyFY
✅ QA - engineer (DataBase) middle
Зарплата: от 80 000 руб.
Компания: ООО Перфект Системс
Занятость: Полная занятость, удаленная работа
Опыт: 1-3 года
Ключевые навыки: ETL разработка, DWH, Data Lake, Tестирование ETL/ELT процессов, SQL, MPP СУБД, NoSQL СУБД, Hadoop, GIT, Jira, Confluence, CI/CD
Дополнительные навыки: Tableau, Английский язык
Ссылка на вакансию: https://vk.cc/bXzw6T
✅ Product Analyst
Зарплата: от 150 000 руб.
Компания: Dostavista Global
Занятость: Полная занятость, удаленная работа
Опыт: 1–3 года
Ключевые навыки: Статистические методы, SQL, Python, А/Б тестирование, Tableau, Прогностическое моделирование
Дополнительные навыки: Английский язык
Ссылка на вакансию: https://vk.cc/bXzx6C
✅ Аналитик BI
Зарплата: от 120 000 руб.
Компания: Метр Квадратный
Занятость: Полная занятость, гибкий график
Опыт: от 2 лет
Ключевые навыки: SQL (PostgreSQL), Python или R, BI-системы (Tableau, Power BI)
Дополнительные навыки: Cognos BI
Ссылка на вакансию: https://vk.cc/bXzzf
#vacancy
💥 Топ функций языка R для анализа данных
Язык R - один из самых крутых, практичных и удобных инструментов для анализа данных. Если Вы его уже используете - Вы с нами согласитесь. Если еще нет - самое время начать!
Сегодня в карусели - подборка самых полезных функций библиотек семейства tidyverse.
Конечно, этот список можно сделать намного шире, но эти функции - must have.
#rstat
Язык R - один из самых крутых, практичных и удобных инструментов для анализа данных. Если Вы его уже используете - Вы с нами согласитесь. Если еще нет - самое время начать!
Сегодня в карусели - подборка самых полезных функций библиотек семейства tidyverse.
Конечно, этот список можно сделать намного шире, но эти функции - must have.
#rstat
💯 7 уровней использования zip в Python 💯
Представьте себе задачу:
> У Вас есть матрица, представленная вложенным списком:
> [[1, 2, 3], [1, 2, 3]]. Транспонируйте эту матрицу в 1 строчку кода.
Если Вы не смогли это сделать сходу, то Вам точно нужно познакомиться с функцией zip.
Сегодня обсудим, как:
✓ использовать функцию zip
✓ соединять неравное количество элементов
✓ пользоваться zip_longest
✓ делать распаковку
✓ создавать и обновлять словари с помощью zip
✓ использовать zip в циклах for
✓ транспонировать матрицу
К концу статьи Вы точно станете гуру использования функции zip. И больше Ваша жизнь не станет прежней 🤤
Приятного чтения!
#python
Представьте себе задачу:
> У Вас есть матрица, представленная вложенным списком:
> [[1, 2, 3], [1, 2, 3]]. Транспонируйте эту матрицу в 1 строчку кода.
Если Вы не смогли это сделать сходу, то Вам точно нужно познакомиться с функцией zip.
Сегодня обсудим, как:
✓ использовать функцию zip
✓ соединять неравное количество элементов
✓ пользоваться zip_longest
✓ делать распаковку
✓ создавать и обновлять словари с помощью zip
✓ использовать zip в циклах for
✓ транспонировать матрицу
К концу статьи Вы точно станете гуру использования функции zip. И больше Ваша жизнь не станет прежней 🤤
Приятного чтения!
#python
Рубрика «Вопросы с собеседований» 💥
❓Что такое monkey patch в Python?
✅ Ответ:
Monkey patching в Python (и других языках программирования) - изменение поведения функции или объекта уже после того, как они были заданы.
Как вариант, Вы можете изменить какой-то атрибут или метод какого-то класса.
Например:
Вообще говоря, monkey patching в большинстве случаев - ужасная идея. Это будет вызывать путаницы и ошибки, ведь Вы или Ваши коллеги будете ожидать от функции ее изначального поведения, а не "подменного".
Однако, иногда этот принцип очень полезен. Например, при mock тестировании кода. Если Вам нужно проверить - как какая-то конкретная функция будет вести себя в той или иной ситуации, то Вам мало интересно, как будет вести себя весь остальной код. Тогда Вы можете сделать тот самый monkey patch - заранее "предопределить" поведение всей остальной программы и провести тест только одного кусочка.
Пример: у Вас есть большой код, который проводит какие-то преобразования с числами. Вы хотите проверить только последний кусок, где результат возводится в заданную степень. Тогда Вы говорите:
- пусть весь предыдущий код дает на выходе число 2
- подаем число 2 на вход последнего блока и проверяем его работу
В этом и есть смысл monkey patch - мы сымитировали работу основного кода, "подсунув" туда нужный результат, и протестировали только последний блок.
#interview_problems #python
❓Что такое monkey patch в Python?
✅ Ответ:
Monkey patching в Python (и других языках программирования) - изменение поведения функции или объекта уже после того, как они были заданы.
Как вариант, Вы можете изменить какой-то атрибут или метод какого-то класса.
Например:
import datetime
datetime.datetime.now = lambda: datetime.datetime(2012, 12, 12)
Вообще говоря, monkey patching в большинстве случаев - ужасная идея. Это будет вызывать путаницы и ошибки, ведь Вы или Ваши коллеги будете ожидать от функции ее изначального поведения, а не "подменного".
Однако, иногда этот принцип очень полезен. Например, при mock тестировании кода. Если Вам нужно проверить - как какая-то конкретная функция будет вести себя в той или иной ситуации, то Вам мало интересно, как будет вести себя весь остальной код. Тогда Вы можете сделать тот самый monkey patch - заранее "предопределить" поведение всей остальной программы и провести тест только одного кусочка.
Пример: у Вас есть большой код, который проводит какие-то преобразования с числами. Вы хотите проверить только последний кусок, где результат возводится в заданную степень. Тогда Вы говорите:
- пусть весь предыдущий код дает на выходе число 2
- подаем число 2 на вход последнего блока и проверяем его работу
В этом и есть смысл monkey patch - мы сымитировали работу основного кода, "подсунув" туда нужный результат, и протестировали только последний блок.
#interview_problems #python
❓Как использовать %timeit для замера времени выполнения кода в Python 🐍
Встроенные магические команды IPython позволяют сделать жизнь разработчика проще и удобней.
Например, Вы набрасываете код в Jupyter и вдруг Вам нужно замерить, сколько времени Ваш код отрабатывает. Например, загружается картинка или происходит вычисление. Притом не сколько это займет времени прям сейчас, а сколько это занимает объективно - для этого нужно замерить время много раз.
✅ Все это можно сделать с помощью утилиты %timeit. Она замеряет время выполнение кода, прогоняя его много раз и выбирая лучший результат.
Синтаксис такой:
Расшифруем все параметры 👉🏻
✓ -n Выполнить action N раз за цикл. Если не указать, выбирается автоматически.
✓ -r Количество повторов R (R раз по N повторов)
✓ [-t|-c] Использовать time.time или time.clock для замера
✓ -p Точность до P знаков. По умолчанию 3
✓ -q Quiet, не выводить результат
✓ action функция или действие, которое мы хотим замерить
Пример (просто выполнить pass):
Стандартный вывод команды (если не указан параметр quiet) - количество циклов и лучшее время. Например:
#python
Встроенные магические команды IPython позволяют сделать жизнь разработчика проще и удобней.
Например, Вы набрасываете код в Jupyter и вдруг Вам нужно замерить, сколько времени Ваш код отрабатывает. Например, загружается картинка или происходит вычисление. Притом не сколько это займет времени прям сейчас, а сколько это занимает объективно - для этого нужно замерить время много раз.
✅ Все это можно сделать с помощью утилиты %timeit. Она замеряет время выполнение кода, прогоняя его много раз и выбирая лучший результат.
Синтаксис такой:
> %timeit [-n <N> -r <R> [-t|-c] -q -p <P> -o] action
Расшифруем все параметры 👉🏻
✓ -n Выполнить action N раз за цикл. Если не указать, выбирается автоматически.
✓ -r Количество повторов R (R раз по N повторов)
✓ [-t|-c] Использовать time.time или time.clock для замера
✓ -p Точность до P знаков. По умолчанию 3
✓ -q Quiet, не выводить результат
✓ action функция или действие, которое мы хотим замерить
Пример (просто выполнить pass):
> %timeit -n 100 -r 5 -t -q -p 5 pass
Стандартный вывод команды (если не указан параметр quiet) - количество циклов и лучшее время. Например:
> 100 loops, best of 5: 7.1526 ns per loop
#python