Мир аналитика данных (@analysts_world) Kanalının Son Gönderileri

Мир аналитика данных Telegram Gönderileri

Мир аналитика данных
Пишу о рабочих буднях и о том как я сменила профессию.
Можно отблагодарить данатами за контент boosty.to/analysts_world

Автор канала: @Valeria_Shuvaeva
4,383 Abone
83 Fotoğraf
2 Video
Son Güncelleme 12.03.2025 01:32

Мир аналитика данных tarafından Telegram'da paylaşılan en son içerikler

Мир аналитика данных

11 Mar, 11:18

431

Подписчик прислал мне интересную задачку с stratascratch.com, и я не могла устоять, чтобы не решить её.
Нужно найти самый дешёвый путь между городами, учитывая варианты с пересадками (до двух).

📌 Дано:
Есть таблица da_flights, в которой:
✈️ origin – пункт отправления
✈️ destination – пункт назначения
✈️ cost – стоимость перелёта

Чтобы найти маршруты с пересадками, нам нужно соединить таблицу саму с собой (self-join).

🛠 Решение

1️⃣ Прямые рейсы (без пересадок) — просто берём origin, destination, cost.

2️⃣Рейсы с одной пересадкой — соединяем таблицу саму с собой (JOIN), где f1.destination = f2.origin. Это значит, что первый рейс прилетает в город, из которого отправляется второй.

3️⃣ Рейсы с двумя пересадками — соединяем таблицу трижды (JOIN), добавляя ещё один уровень соединения (f2.destination = f3.origin).

4️⃣Объединение всех маршрутов:
Используем UNION для объединения всех трех типов маршрутов (прямые, с одной и двумя пересадками).

5️⃣Группируем GROUP BY origin, destination и выбираем минимальную цену MIN(total_cost). Жаль нельзя по таким ценам реально на морюшко улететь 🌊🌊🌊

6️⃣Сортируем результат по городу отправления и городу назначения.

Создадим табличку с данными:
import pandas as pd 
from pandasql import sqldf

data = {
'id': [1, 2, 3, 4, 5, 6],
'origin': ['SFO', 'SFO', 'SFO', 'DFW', 'DFW', 'JFK'],
'destination': ['JFK', 'DFW', 'MCO', 'MCO', 'JFK', 'LHR'],
'cost': [500, 200, 400, 100, 200, 1000]
}

da_flights = pd.DataFrame(data)

Ну и сам основной запрос:
query = """
SELECT
origin,
destination,
MIN(total_cost) AS min_price
FROM (
-- Прямые рейсы
SELECT origin, destination, cost AS total_cost
FROM da_flights
UNION
-- Рейсы с одной пересадкой
SELECT f1.origin, f2.destination, f1.cost + f2.cost AS total_cost
FROM da_flights f1
JOIN da_flights f2 ON f1.destination = f2.origin
UNION
-- Рейсы с двумя пересадками
SELECT f1.origin, f3.destination, f1.cost + f2.cost + f3.cost AS total_cost
FROM da_flights f1
JOIN da_flights f2 ON f1.destination = f2.origin
JOIN da_flights f3 ON f2.destination = f3.origin
) AS all_flights
GROUP BY origin, destination
ORDER BY origin, destination
"""

result = sqldf(query)
print(result)


Большое решение, но если по частям разобрать, то разобраться проще. Для этого вот вам ноутбук с этим скриптом. экспериментируйте!
Ну и всем отдыха на море в этом году! 🏖🏖🐠🌊
Мир аналитика данных

11 Mar, 05:10

634

Для вас подготовили уникальное предложение — папку с более чем 40 статьями от ведущих экспертов, которые шаг за шагом проведут вас в мир IT-технологий.

🧑‍💻 Собрали в одну папку более 40 Telegram-каналов от известных экспертов в сфере информационных технологий, начиная от тестирования, базы данных и разработки до автоматизации процессов с помощью искусственного интеллекта. В этой папке вы получите ответы на такие вопросы, как:

🟠 Как автоматизировать процессы с помощью ИИ?
🟠 Какие профессии может заменить ИИ?
🟠 Как читать много каналов с помощью ИИ: делаем сводку любимых каналов с помощью no-code, доступно каждому?
🟠 Чек-лист правил супероффера для клиента.
🟠 Как оптимизировать SQL запрос в базу данных?

📎Делимся с вами исследованием тонкостей LEFT JOIN: условия в ON или WHERE — в чем разница?

📌 Сохранив папку «IT - ЛЕГКО», вы получите доступ ко всем каналам с уникальными авторскими материалами, которые несомненно будут полезны в работе.
Мир аналитика данных

07 Mar, 11:47

939

Подъехало исследование по 2024! Смотрим, изучаем, анализируем. 📈📊
Мир аналитика данных

07 Mar, 11:47

1,198

🔥 Исследование рынка аналитиков 2024: полные результаты

Мы опросили 1293 аналитиков 6-ти специализаций и готовы рассказать вам:

➤ Какие задачи решают аналитики

➤ Что с релокацией у аналитиков

➤ Сколько зарабатывают аналитики

➤ ТОП и анти-ТОП компаний для аналитиков

➤ Что ценят в аналитической культуре

За какими экспертами следят аналитики

Будем рады, если вы поделитесь результатами исследования с коллегами, знакомыми, друзьями аналитиками и всеми, кому может быть интересно 🫶

👉 Смотреть полные результаты

Все, кто принял участие в нашем исследовании и оставлял почту, проверьте её! От нас должно прийти письмо с приглашением на закрытый стрим для респондентов 🙏

💙 Команда NEWHR анализирует IT-рынок в России и других странах. Мы делаем публичные и заказные исследования для компаний (смотреть примеры). Будем рады сделать исследование вместе с вами.

📨 Пишите на почту [email protected]
Мир аналитика данных

06 Mar, 09:28

1,108

👍 Решила задачку уровня Hard на LeetCode! Department Top Three Salaries

Полистала я список задач из блока SQL 50 на LeetCode и наткнулась на одну единственную задачку уровня hard. Решила проверить свои силы и решить ее. Задача относится к уровню Hard. Давайте разберем, что нужно было сделать и как я с этим справилась. 💼💡

📝 Условие задачи:
У нас есть две таблицы:

1️⃣Employee с колонками: id, name, salary, departmentId.

2️⃣Department с колонками: id, name.

Задача: найти сотрудников, которые входят в топ-3 по зарплате в каждом департаменте. При этом нужно учитывать только уникальные зарплаты. То есть, если несколько сотрудников имеют одинаковую зарплату, они занимают одно и то же место в рейтинге.

Для решения задачи я использовала SQL с функцией DENSE_RANK(), которая позволяет ранжировать сотрудников по зарплате внутри каждого департамента. Решала тестировала в юпитере. Вот как это выглядит:

import pandas as pd
from pandasql import sqldf
employee_data = {
'id': [1, 2, 3, 4, 5, 6, 7],
'name': ['Joe', 'Henry', 'Sam', 'Max', 'Janet', 'Randy', 'Will'],
'salary': [85000, 80000, 60000, 90000, 69000, 85000, 70000],
'departmentId': [1, 2, 2, 1, 1, 1, 1]
}

Employee = pd.DataFrame(employee_data)

department_data = {
'id': [1, 2],
'name': ['IT', 'Sales']
}

Department = pd.DataFrame(department_data)

Я покрутила данные и так и так и поняла, что мне проще сделать с оконкой такое задание. Можно и подзапросом конечно решить, но на мой взгляд оконка тут просто идеально подходит.
query = """
select Department,Employee,Salary
from
(SELECT d.name as Department,
e.name as Employee,
salary as Salary,
dense_rank() OVER (PARTITION BY d.name order by salary desc) as rank
FROM Employee AS e
LEFT JOIN Department d on d.id=e.departmentId
order by d.id, salary desc
)
where rank <=3
"""
sqldf(query)


💡DENSE_RANK() позволяет ранжировать сотрудников по зарплате, при этом сотрудники с одинаковой зарплатой получают одинаковый ранг.

💡PARTITION BY d.name группирует данные по департаментам.

💡ORDER BY salary DESC сортирует зарплаты по убыванию.

В итоге мы выбираем только те строки, где ранг меньше или равен 3.

Дайте знать если в таких задачках вам нужен файл юпитерский сразу с кодом. Буду прикреплять тогда.

P.S. Кстати за прошлую неделю я выдала медали в нашем рейтинге. 🥇🥈🥉Заглядывайте и присоединяйтесь!
Мир аналитика данных

04 Mar, 14:04

1,199

🔥Представляю Вам новую коллекцию каналов на тему "IT"! 🔥

Тут собраны самые полезные ресурсы, которые помогут быстро находить нужные ответы и углублять свои знания в области IT и ТЕХНОЛОГИЙ 💻

💡Что вас ожидает?

• Рекомендации от профессионалов.

• Полезные инструменты и методики.

• Практические советы и инсайты.


☑️Переходите по ссылке и начинайте уже сегодня! 👇

https://t.me/addlist/RqqAA_68fONkNjcy
Мир аналитика данных

04 Mar, 09:06

1,157

🚀 Каждый день вы тратите часы на рутину: согласование, обработку заявок, контроль задач. Но ведь все эти процессы можно автоматизировать!

На открытом вебинаре «Бизнес-процессы в Битрикс24» разберем, как внедрить автоматизацию, ускорить работу компании и снизить влияние человеческого фактора.

Вы узнаете, какие бизнес-процессы можно автоматизировать, как правильно их настраивать и внедрять без сложного программирования. Битрикс24 станет вашим помощником, а не головной болью.

⭐️ Спикер Владимир Румянцев — соучредитель и технический директор студии Автоматизации Виноград24. Сертифицированный специалист 1С, 1С-Битрикс24.

Встречаемся 6 марта в 19:00 мск! Урок пройдет в преддверии старта курса «Интегратор Битрикс24», и все участники получат скидку на обучение.

👉 Регистрируйтесь, чтобы не пропустить: https://otus.pw/qaqQ/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Мир аналитика данных

27 Feb, 08:53

1,573

🏆 Кто будет первым в рейтинге?🏆
Я немного запустила нашу табличку мотивации… В том смысле, что сама исправно ставлю свои галочки ✔️, но вот новых мотивационных картинок уже больше недели никому не раздавала. И тут мне написали об этом – с сожалением!

И знаете, это меня замотивировало 🤪!

Теперь у нас появился новый лист — Рейтинг 📊. В нём автоматически собираются данные о количестве выполненных задач за неделю и за весь период. Всё считается формулой, которая мне самой показалась довольно прикольной:

📌 СЧЁТЕСЛИ(ДВССЫЛ("'" & A5 & "'!AY:BE"); "
✔️")

🍀 Как это работает?
🔹A5 — ячейка с названием личного листа.

🔹ДВССЫЛ("'" & A3 & "'!A:ZZ") — подставляет название листа и диапазон всех колонок A:ZZ. INDIRECT (в английской версии)

🔹СЧЁТЕСЛИ(..., "✔️") — подсчитывает количество галочек по всему листу!

💡 А я, кстати, даже не знала, что можно считать не только цифры, но и эмодзи!

А теперь к самому важному — кто молодцы? 💪
🔥 Кирилл Н, Ира idhril, Валерия Б, Владимир, Лера (не я, другая!) — вы большие умницы! Вы запланировали, чему хотите научиться, и уверенно идёте к своей цели.

❗️ Мотивация — это не про «пересилить себя». Не нужно делать через силу. Главное — желание, а поддержка и вдохновение от других сделают своё дело. В этом и есть уникальность проекта.

Открыта ко всем предложениям по улучшению. Вот думаю, может медальки отрисовать красивые и в конце недели раздавать первые места? Как Вам идея?

P.S. Если вдруг пропустили, о чем вообще речь, вот тут и тут про наши мотивационные таблички. Заглядывайте — возможно, это как раз то, чего вам не хватало для продуктивности! 😉
Мир аналитика данных

24 Feb, 10:47

897

Как стать аналитиком и не сдаться на пути

Я часто вижу сообщения от тех, кто только планирует войти в мир аналитики или делает первые шаги. Звучат они они примерно так:
😶 Я гуманитарий, и мне кажется, аналитика — это не для меня…
😶 Смотрю на программу обучения, и всё кажется таким сложным, боюсь, что ничего не пойму.
😶 Мне уже за 30, смогу ли я переучиться и, главное, найти работу после этого?
😶 Не знаю, с чего начать: SQL, Python, метрики?
😶 Столкнулся со сложной темой, потерял мотивацию и веру в свои силы 🙁

Все эти сообщения объединяет одно — растерянность и сомнения в своих силах. Знакомо?

О том, как отправляться в путь к новой профессии поговорим на вебинаре 25 февраля в 19:00 по мск на тему «Как стать аналитиком и не сдаться на пути».

Спикер — Владимир Камчаткин, тимлид продуктовой аналитики образовательной платформы Т-Банка, более 3 лет работы в образовании, автор тг-канала Data New Gold

На вебинаре обсудим:
🟠Какие сложности возникали у Владимира и как он их преодолевал;
🟠Как ставить цели, планировать обучение и выбирать качественные ресурсы;
🟠Как совмещать обучение с работой;
🟠Применение нейронауки и психологии для повышения эффективности запоминания;
🟠Ответы на вопросы участников вебинара.

Зарегистрироваться на бесплатный вебинар
Мир аналитика данных

24 Feb, 07:36

1,640

Ребята, привет! 👋

Наверняка многие из вас знают Пашу Бухтика и его канал No Data No Growth. Уже 10 марта у него стартует курс по A/B-тестированию!
📢 Вот его пост с подробностями: https://t.me/nodatanogrowth/730

🎁 Для вас есть 5% скидка – просто скажите, что вы «от Валерии / мира аналитики данных».
Это не реклама (она будет позже 😜), просто я сама иду на курс и зову вас с собой! 🚀