Алгоритмы_с_примерами_на_Python.pdf
13.6 MB
Доброго вечера, друзья!
Как думаете, нужно ли в Data Science знание алгоритмов и структур данных? Наверное, первое, что приходит в голову - это, конечно, собеседования😁 Во многих компаниях обязательным этапом в процессе найма является та самая секция лайф-кодинга.
А вообще, знание алгоритмов и структур данных помогает лучше понимать, как работают различные методы машинного обучения (например, те же «деревянные» модели) + практика и привычка писать оптимальный код пригодится в анализе и при обработке данных.
Ловите новую книгу издательства O’Reilly «Алгоритмы с примерами на Python», в ней автор понятно рассказывает про самые известные структуры данных и алгоритмы над ними, разбирает их сложность - и всё это, конечно, с примерами на питоне(!)🥰 В книге также есть задачи для самостоятельного решения.
Хорошего вечера!❄️ ☃️
#python@data_easy
Как думаете, нужно ли в Data Science знание алгоритмов и структур данных? Наверное, первое, что приходит в голову - это, конечно, собеседования😁 Во многих компаниях обязательным этапом в процессе найма является та самая секция лайф-кодинга.
А вообще, знание алгоритмов и структур данных помогает лучше понимать, как работают различные методы машинного обучения (например, те же «деревянные» модели) + практика и привычка писать оптимальный код пригодится в анализе и при обработке данных.
Ловите новую книгу издательства O’Reilly «Алгоритмы с примерами на Python», в ней автор понятно рассказывает про самые известные структуры данных и алгоритмы над ними, разбирает их сложность - и всё это, конечно, с примерами на питоне(!)🥰 В книге также есть задачи для самостоятельного решения.
Хорошего вечера!
#python@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩11❤6
Обещали мемы, но ещё ни разу их не скидывали - исправляемся!🙈
Только это не простые шутки, а из питоновской библиотеки pyjokes😁
Всего в пару строчек кода можно получить случайный анекдотне выходя из редактора кода. Смотрите пример на скрине, а кому лень перепечатывать - подробнее в файле с кодом:)
PS: за идею и хорошее настроение спасибо студенту курса по Data Science, которые поделился этой забавной штукой в своём дипломе😊
#мем@data_easy
#python@data_easy
Только это не простые шутки, а из питоновской библиотеки pyjokes😁
Всего в пару строчек кода можно получить случайный анекдот
#мем@data_easy
#python@data_easy
❤10🔥5👍2
Добрый вечер, друзья!
Бывало такое, что запустили цикл, а он никак не завершается и когда закончится непонятно? Или применяете функцию, и ячейка зависает на неопределённый срок? Не очень здорово, когда код превращается в "чёрный ящик" с неизвестным временем выполнения☹️
К счастью, эту проблему можно решить при помощи библиотеки tqdm🔮 Вот несколько примеров её самых полезных возможностей:
➡️
Если итерируемый объект в цикле for обернуть в tqdm, мы увидим прогресс-бар, который покажет продвижение по итерациям цикла и оставшееся время выполнения.
➡️
При работе с pandas-датафреймами обычный apply можно заменить на progress_apply, тогда также будет показываться прогресс-бар. Это бывает полезно при больших размерах датасета.
➡️ 💚
Ещё больше интересных приёмов можно узнать из официальной документации🦋
Хорошего вечера и быстрого кода!⚡
#python@data_easy
#лайфхаки@data_easy
Бывало такое, что запустили цикл, а он никак не завершается и когда закончится непонятно? Или применяете функцию, и ячейка зависает на неопределённый срок? Не очень здорово, когда код превращается в "чёрный ящик" с неизвестным временем выполнения☹️
К счастью, эту проблему можно решить при помощи библиотеки tqdm
for i in tqdm(range(1000)):Если итерируемый объект в цикле for обернуть в tqdm, мы увидим прогресс-бар, который покажет продвижение по итерациям цикла и оставшееся время выполнения.
df['col'_1] = df['col'].progress_apply(func_1)При работе с pandas-датафреймами обычный apply можно заменить на progress_apply, тогда также будет показываться прогресс-бар. Это бывает полезно при больших размерах датасета.
df['col_2'] = process_map(
func_2,
df['col'],
max_workers=8,
chunksize=64,
desc='Description',
colour='green'
)
А это "прогрессивный" аналог map, только здесь ещё можно распараллелить процесс при помощи аргументов max_workers и chunksize + везде можно добавлять подпись для прогресс-бара и его цветЕщё больше интересных приёмов можно узнать из официальной документации
Хорошего вечера и быстрого кода!
#python@data_easy
#лайфхаки@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥6❤1
Доброго вечера всем любителям Jupyter-ноутбуков и не только!
Приходилось ли вам писать отдельный py-модуль, а функциями из него пользоваться в ноутбуке?
Проблема в том, что при каждом обновлении py-файла, чтобы оно активировалось внутри Jupyter-ноутбука, необходимо перезагружать ядро☄️
Это не только трата времени, но и потеря всех локальных переменных текущей сессии:(
Эту проблему исправит метод
Запустив эти строки после обновления файла с модулем, все последние изменения станут доступны в Jupyter-ноутбуке😊
Хорошего вечера!🌆
#python@data_easy
#лайфхаки@data_easy
Приходилось ли вам писать отдельный py-модуль, а функциями из него пользоваться в ноутбуке?
Проблема в том, что при каждом обновлении py-файла, чтобы оно активировалось внутри Jupyter-ноутбука, необходимо перезагружать ядро☄️
Это не только трата времени, но и потеря всех локальных переменных текущей сессии:(
Эту проблему исправит метод
importlib из библиотеки reload🌟Предположим, наш модуль называется my_module, тогда нам понадобится следующий код:
from importlib import reload
import my_module
my_module = reload(my_module)
Запустив эти строки после обновления файла с модулем, все последние изменения станут доступны в Jupyter-ноутбуке😊
Хорошего вечера!🌆
#python@data_easy
#лайфхаки@data_easy
🔥14❤6😍6👏3
Plotly.pdf
623.7 KB
«О нет, только не графики!» - часто слышу подобное от студентов. Действительно, построение графиков в питоне может показаться довольно муторным занятием: куча разных библиотек, везде свои названия методов и своеобразный синтаксис, в котором легко запутаться🙈
Главное преимущество - то что в питоне мы можем легко обработать и собрать нужные данные. И на самом деле, если один раз разобраться с библиотеками и иметь под рукой шпаргалку основных типов графиков в любимой библиотеке, это сильно упростит работу и избавит от необходимости выгружать данные и строить визуализации в сторонних программах. К тому же, при помощи некоторых библиотек можно легко построить очень оригинальные картинки, включая анимации:)
Итак, библиотеки для построения графиков в питоне:
🌟 pandas (да-да, и это самый простой и быстрый способ что-то нарисовать);
🌟 plotly (преимущество этой библиотеки - интерактивность);
🌟 matplotlib (классическая библиотека, графики - статичные изображения);
🌟 seaborn (более высокоуровневая надстройка над matplotlib).
Копировать шаблонный код для построения графиков откуда-либо нормально: в некоторых случаях он, действительно, бывает громоздким.И даже если выучили все методы и аргументы функций наизусть, писать с нуля одно и тоже не всегда эффективно 😁
А пока ловите небольшую шпаргалку по plotly - в ней несколько примеров построения самых популярных видов графиков + парочка нестандартных визуализаций. Сам код и его копия в пдф во вложениях, в ноутбуке можно запустить интерактив:)
Всем красивых графиков!💅
#python@data_easy
#аналитика@data_easy
Главное преимущество - то что в питоне мы можем легко обработать и собрать нужные данные. И на самом деле, если один раз разобраться с библиотеками и иметь под рукой шпаргалку основных типов графиков в любимой библиотеке, это сильно упростит работу и избавит от необходимости выгружать данные и строить визуализации в сторонних программах. К тому же, при помощи некоторых библиотек можно легко построить очень оригинальные картинки, включая анимации:)
Итак, библиотеки для построения графиков в питоне:
🌟 pandas (да-да, и это самый простой и быстрый способ что-то нарисовать);
🌟 plotly (преимущество этой библиотеки - интерактивность);
🌟 matplotlib (классическая библиотека, графики - статичные изображения);
🌟 seaborn (более высокоуровневая надстройка над matplotlib).
Копировать шаблонный код для построения графиков откуда-либо нормально: в некоторых случаях он, действительно, бывает громоздким.
А пока ловите небольшую шпаргалку по plotly - в ней несколько примеров построения самых популярных видов графиков + парочка нестандартных визуализаций. Сам код и его копия в пдф во вложениях, в ноутбуке можно запустить интерактив:)
Всем красивых графиков!💅
#python@data_easy
#аналитика@data_easy
🔥19❤9👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Доброго летнего вечера!🌅
Представьте, что вам дали некоторый датасет и попросили его проанализировать/обучить модель на этих данных. Что бы вы сделали в самую первую очередь? Большинство ответятпрочитали бы и вывели head 😁
В целом, это верный ответ, здесь же можно добавитьinfo() и describe().
Но есть кое-что получше: библиотека ydata-profiling для первичного анализа данных и проверки их качества.
С помощью неё можно автоматически получить подробныйи красивый отчёт, который позволит быстро ознакомиться с основными характеристиками данных и сразу выявить возможные проблемы.
За несколько минут можно создать отчёт, включающий:
⛵️ общий анализ датасета с разделом предупреждений, на которые стоит обратить внимание в первую очередь
⛵️ детальный отчёт по каждой переменной, включая наглядное представление дубликатов, выбросов и статистических характеристик
⛵️ распределения для числовых признаков и "облако слов" для категориальных
⛵️ взаимные зависимости числовых признаков
⛵️ наличие пропусков
⛵️ и, конечно, аналог head и tail
Создать отчёт очень просто!
1. Для начала установите библиотеку:
2. Далее загрузите ваш датафрейм и сгенерируйте отчет, это займёт всего несколько минут:
3. Готовый отчёт можно вывести и посмотреть прямо в ноутубке или сохранить в html:
На всякий случай, официальная документация тут.
В видео трейлер с демонстрацией основных возможностей библиотеки💫
Удачной недели!🙂
#аналитика@data_easy
#classic_ml@data_easy
#python@data_easy
Представьте, что вам дали некоторый датасет и попросили его проанализировать/обучить модель на этих данных. Что бы вы сделали в самую первую очередь? Большинство ответят
В целом, это верный ответ, здесь же можно добавить
Но есть кое-что получше: библиотека ydata-profiling для первичного анализа данных и проверки их качества.
С помощью неё можно автоматически получить подробный
За несколько минут можно создать отчёт, включающий:
⛵️ общий анализ датасета с разделом предупреждений, на которые стоит обратить внимание в первую очередь
⛵️ детальный отчёт по каждой переменной, включая наглядное представление дубликатов, выбросов и статистических характеристик
⛵️ распределения для числовых признаков и "облако слов" для категориальных
⛵️ взаимные зависимости числовых признаков
⛵️ наличие пропусков
⛵️ и, конечно, аналог head и tail
Создать отчёт очень просто!
1. Для начала установите библиотеку:
pip install ydata-profiling
2. Далее загрузите ваш датафрейм и сгенерируйте отчет, это займёт всего несколько минут:
import pandas as pd
from ydata_profiling import ProfileReport
# Загружаем данные
data = pd.read_csv("data.csv")
# Генерируем отчёт
profile = ProfileReport(data, title="Мой_первый_отчёт")
3. Готовый отчёт можно вывести и посмотреть прямо в ноутубке или сохранить в html:
profile.to_notebook_iframe()
# Или сохраняем отчет вx HTML файл
profile.to_file("Мой_первый_отчёт.html")
На всякий случай, официальная документация тут.
В видео трейлер с демонстрацией основных возможностей библиотеки💫
Удачной недели!
#аналитика@data_easy
#classic_ml@data_easy
#python@data_easy
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14🔥7👍2🐳1