😐 Холивар: удалённая работа для дата-сайентистов — проклятие или спасение
Удалёнка стала нормой с Covid, и многие перешли на полный remote. Вроде бы плюсы очевидны: нет потерь времени на дорогу, гибкий график, можно работать из любой точки мира.
Но… у многих заметно вырос уровень социальной тревожности, особенно когда дело доходит до презентаций результатов и командного взаимодействия. Меньше живого общения, меньше «неформальных» разговоров — и кажется, что давление во время редких встреч только усиливается. Сомнения и импостер-синдром подкрадываются чаще.
➡️ Основные проблемы:
🤖 Soft skills — критически важны в работе с командой и заказчиками
🤖 Без живого контакта сложно развивать навыки коммуникации
🤖 Технические успехи не всегда спасают, если не умеешь «продавать» результаты
➡️ Что с этим делать:
🤖 Пытаться больше общаться неформально онлайн
🤖 Использовать тренинги по коммуникациям
🤖 Выходить из зоны комфорта и делать презентации чаще
🤖 Возможно, частично вернуться в офис ради живого взаимодействия
И давайте сразу к главному спору:
❤️ — без живого общения и офиса soft skills у дата-сайентистов деградируют, и это угроза карьере
👍— современные коммуникационные инструменты позволяют развивать навыки и без офиса
Как вы думаете? Что важнее — привычка работать вживую или умение адаптироваться к новым форматам?
Библиотека дата-сайентиста #междусобойчик
Удалёнка стала нормой с Covid, и многие перешли на полный remote. Вроде бы плюсы очевидны: нет потерь времени на дорогу, гибкий график, можно работать из любой точки мира.
Но… у многих заметно вырос уровень социальной тревожности, особенно когда дело доходит до презентаций результатов и командного взаимодействия. Меньше живого общения, меньше «неформальных» разговоров — и кажется, что давление во время редких встреч только усиливается. Сомнения и импостер-синдром подкрадываются чаще.
И давайте сразу к главному спору:
❤️ — без живого общения и офиса soft skills у дата-сайентистов деградируют, и это угроза карьере
👍— современные коммуникационные инструменты позволяют развивать навыки и без офиса
Как вы думаете? Что важнее — привычка работать вживую или умение адаптироваться к новым форматам?
Библиотека дата-сайентиста #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤6😁2
💬 Опыт подписчика: как потратить часы на очистку данных после парсинга
Один из наших подписчиков поделился своим опытом очистки грязных данных после веб-скрейпинга. Делимся его историей — вдруг вы узнаете в ней себя.
Потратив несколько часов на эксперименты (и выпив больше кофе, чем хотел бы признать), я кое-как вычистил всё с помощью Pandas. Делюсь, что сработало:
1️⃣ Работа с пропущенными значениями
Удалять всё подряд не хотелось, поэтому подход был аккуратным:
2️⃣ Удаление дублей
Повторные запуски скрипта дали одинаковые строки. Решается в одну строку:
3️⃣ Приведение к нужным форматам
Это спасло меня от последующих багов:
4️⃣ Очистка шума
Избавился от ненужного мусора:
5️⃣ Первые инсайты
Когда всё стало чисто, можно было наконец-то что-то анализировать:
Что я понял:
🟣 Парсинг — это только начало. Основная боль начинается после.
🟣 Pandas — суперсила. С его помощью можно разгрести 80% хаоса.
🟣 errors='coerce' — спасение. Преобразования не падают, если формат неожиданный.
🟣 В следующий раз сначала изучу практики очистки данных, а потом буду парсить.
Сейчас ищу хорошие подходы к:
🟣 Распознаванию цен, написанных словами (
🟣 Объединению разных форматов дат (особенно с названиями месяцев в разных языках)
💬 Если у вас есть свои фишки по чистке «грязных» парсинг-данных — расскажите в комментариях.
Библиотека дата-сайентиста #междусобойчик
Один из наших подписчиков поделился своим опытом очистки грязных данных после веб-скрейпинга. Делимся его историей — вдруг вы узнаете в ней себя.
Думал, самое сложное — спарсить данные. А оказалось — привести их в порядок.
На выходных я собрал датасет для своего сайд-проекта. Парсинг прошёл без особых проблем — за пару часов всё было готово. А вот дальше началось настоящее веселье.
С чем я столкнулся:
— Пропуски в случайных местах
— Дубли из-за повторных запусков
— Даты в абсолютно разном формате
— Цены, записанные как строки, иногда даже словами ("twenty")
Потратив несколько часов на эксперименты (и выпив больше кофе, чем хотел бы признать), я кое-как вычистил всё с помощью Pandas. Делюсь, что сработало:
Удалять всё подряд не хотелось, поэтому подход был аккуратным:
# Удаляю строки, где вообще нет данных
df_clean = df.dropna(how='all')
# Остальное заполняю заглушками
df_filled = df.fillna("N/A")
Повторные запуски скрипта дали одинаковые строки. Решается в одну строку:
df_unique = df.drop_duplicates()
Это спасло меня от последующих багов:
# Привожу названия товаров к нижнему регистру
df['product_name'] = df['product_name'].str.lower()
# Преобразую даты (если ошибка — получаю NaT)
df['date'] = pd.to_datetime(df['date'], errors='coerce')
# Преобразую цену в числовой формат
df['price'] = pd.to_numeric(df['price'], errors='coerce')
Избавился от ненужного мусора:
# Удаляю колонку, если она вообще есть
df = df.drop(columns=['unnecessary_column'], errors='ignore')
# Оставляю товары только с ценой > 10
df_filtered = df[df['price'] > 10]
Когда всё стало чисто, можно было наконец-то что-то анализировать:
# Средняя цена по категориям
avg_price = df_filtered.groupby('category')['price'].mean()
print(avg_price)
# Гистограмма распределения цен
df_filtered['price'].plot(kind='hist', bins=20, title='Price Distribution')
plt.xlabel("Price")
plt.show()
Что я понял:
Сейчас ищу хорошие подходы к:
"forty-two" и т.п.)Библиотека дата-сайентиста #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍4😁2
🔥 Холивар: отвечать ли на странные вопросы рекрутеров или морозиться
Есть вечная боль: рекрутер задаёт вопрос, который либо слишком общий, либо вообще бьёт мимо.
Примеры:
— «Где вы видите себя через 5 лет?»
— «Назовите свои слабые стороны»
— «Почему ушли с прошлого места?»
— «Сколько хотите зарабатывать?» (без вилки)
Кто-то отвечает честно (и потом жалеет), кто-то уходит в общие фразы, кто-то прямо говорит: «Вопрос некорректный, давайте дальше».
💬 Вопросы в зал:
— Вы отвечаете или морозитесь?
— Если морозитесь, то как это делаете, чтобы не сжечь контакт?
— Может, стоит наоборот троллить вежливо, чтобы отсеивать токсичные компании?
Библиотека дата-сайентиста #междусобойчик
Есть вечная боль: рекрутер задаёт вопрос, который либо слишком общий, либо вообще бьёт мимо.
Примеры:
— «Где вы видите себя через 5 лет?»
— «Назовите свои слабые стороны»
— «Почему ушли с прошлого места?»
— «Сколько хотите зарабатывать?» (без вилки)
Кто-то отвечает честно (и потом жалеет), кто-то уходит в общие фразы, кто-то прямо говорит: «Вопрос некорректный, давайте дальше».
💬 Вопросы в зал:
— Вы отвечаете или морозитесь?
— Если морозитесь, то как это делаете, чтобы не сжечь контакт?
— Может, стоит наоборот троллить вежливо, чтобы отсеивать токсичные компании?
Библиотека дата-сайентиста #междусобойчик
❤4👍2😁1
Сегодня делимся историями, когда советы коллег звучали разумно… пока вы не попробовали их на практике.
Настраивал модель XGBoost, попросил совета у старшего дата-сайентиста.
Он сказал: «Запусти без параметров, там всё по дефолту нормально».
Модель обучалась 9 часов и выдала результат хуже случайного угадывания.
Коллега уверял, что так «надёжнее, вдруг что-то понадобится».
Итог — запрос возвращал по 2 ГБ данных, и ETL падал каждые выходные.
Говорю: хочу написать пару unit-тестов для функции парсинга.
Ответ: «Не трать время, у тебя же всё в Jupyter, там видно же».
Через неделю нашли баг, который стоил клиенту два дня простоя.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2👍1🌚1
🚕 Как лог-трансформация спасла модель
Наш подписчик поделился лайфхаком, который снизил ошибку модели на 20% всего одной строкой кода.
В задаче регрессии (например, предсказание стоимости поездок Uber) оказалось, что таргет (fare) сильно скошен вправо: много маленьких значений + редкие, но вполне реальные высокие цены.
❌ Модели сложно учиться: редкие большие значения «тянут» распределение и портят общую картину.
➖ Простое решение — применить log1p к целевой переменной:
— большие значения сжимаются;
— малые почти не меняются;
— распределение становится ближе к нормальному;
— влияние «хвоста» снижается.
Схема:
💡 Результат: MAE снизился на 20%.
Не магия, а классика — но про этот приём часто забывают. Если таргет имеет длинный правый хвост → лог-трансформация может резко улучшить качество.
🐸 Библиотека дата-сайентиста
#междусобойчик
Наш подписчик поделился лайфхаком, который снизил ошибку модели на 20% всего одной строкой кода.
В задаче регрессии (например, предсказание стоимости поездок Uber) оказалось, что таргет (fare) сильно скошен вправо: много маленьких значений + редкие, но вполне реальные высокие цены.
— большие значения сжимаются;
— малые почти не меняются;
— распределение становится ближе к нормальному;
— влияние «хвоста» снижается.
Схема:
y → log1p → модель → предсказания (log scale) → expm1 → предсказания (ориг. масштаб)
💡 Результат: MAE снизился на 20%.
Не магия, а классика — но про этот приём часто забывают. Если таргет имеет длинный правый хвост → лог-трансформация может резко улучшить качество.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤7
Говорят, ноутбук дата-сайентиста живёт в двух состояниях:
— «всё летает»
— «свопнулся насмерть при fit()»
Давайте проверим, кто на чём считает градиенты.
Расскажите в комментариях:
👉 модель ноутбука
👉 чип / GPU
👉 сколько ОЗУ спасает вас от крашей при обучении модели
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2😁2😢2🤔1