Статистика и R в науке и аналитике
4.09K subscribers
39 photos
80 links
Всем привет!
Подробнее о канале со списком самого интересного: https://t.iss.one/stats_for_science/108
Чат канала: https://t.iss.one/chat_stats_for_science
По всем вопросам - @lena_astr
Download Telegram
Brian Moore про Властелин Колец в попытке найти, а кто действительно главный герой трилогии на основании сказанных слов, появлений на экране и взаимрдействий.

ps табло гики, советую обязательно подсмотреть, что все картинки героев – не картинки, а полигоны! Прям очень необычно.
17🔥6👍2
Основные изменения в tidyverse 2.0.0

Совсем недавно (31 октября) вышла новая версия R 4.3.2 и я обнаружила, что на домашнем ноутбуке сижу на версии R уже прошлого года, а значит пора обновиться. К тому же при подготовке лекции по tidyverse обнаружила, что у меня не самая актуальная версия, а ведь еще в марте вышло обновление tidyverse до 2.0.0 версии, о чем мы сегодня поговорим.

Наиболее полно описаны основные изменения в статье Mine Çetinkaya-Rundel "Teaching the tidyverse in 2023", здесь я выделю ключевые моменты.
1) lubridate стал одним из уже 9 пакетов core tidyverse, что для меня довольно удобно, потому что все время нужен для работы с датами и временем.
2) Немного изменился синтаксис функции dplyr::case_when(), теперь значение по умолчанию пишется как .default = , а не TRUE ~ , как было раньше. При этом синтаксис с TRUE все еще работает, что радует, хотя в новых скриптах стоит переходить на новый.
3) Функции if_else() и case_when() перестали быть настолько строгими с пропущенными значениями, так, раньше:
# previously
df |>
mutate(
x = case_when(
~ "value 1",
~ "value 2",
~ "value 3",
TRUE ~ NA_character_
)
)

в случае использования NA в качестве результата выражения, необходимо было прописывать тип пропущенных значений (NA_character_, NA_real_ и тп). Теперь это отменили, что неплохо, хотя мне казалось полезным контролировать тип пропущенных значений. Но если честно, ошибка была непонятная, в случае если не знаешь в чем дело.

4) Появилась возможность прописывать группировку непосредственно в функции summarise() аргументом .by.

# previously
df |>
group_by(x) |>
summarize(mean(y))


Это важно, поскольку после group_by() + summarise() датафрейм остается сгруппированным, что может повлиять на дальнейшие расчеты, и иногда необходимо разгруппировать датафрейм. Теперь, если сгруппированный датафрейм не нужен в дальнейшем, то можно написать так:

# now, optionally
df |>
summarize(
mean(y),
.by = x
)

Звучит неплохо, но связка group_by+summarise уже настолько привычна, что отвыкать придется долго.
В целом, после обновления обратная совместимость сохраняется, порадовало например, что синтаксис с TRUE в case_when() не сломался.

И помимо этого, в телеграме появилась возможность использовать подсветку синтаксиса для чанков с кодом с версии 4.11 для десктопа. Это очень круто, кто еще не сделал, обновите телеграм, код получается супер красивым и отформатированным. Для подсветки синтаксиса используются три бэктика ``` и название языка, далее код и три закрывающих бэктика. По умолчанию такое форматирование делает reprex::reprex() (про репрекс можно почитать мой пост, который не утратил актуальности).

Также планирую в ближайшие две недели продолжить запись лекций по R, так что обязательно следите за новостями!

Пишите комментарии, заценили ли обновление tidyverse и телеграма, используете ли аргумент .by вместо group_by() и любые вопросы!

#R #tidyverse
23👍126🔥6
Поправки на множественное тестирование

Возвращение долгожданных лонгридов по статистике!

На подготовку материала потребовалось достаточно много времени, но думаю получилось очень интересно, читаем пост по ссылке:
https://ubogoeva.github.io/R4Analytics/posts/multiple_testing.html

Если понравилось, обязательно делитесь с друзьями и коллегами, материалов про поправки на русском языке немного, и мне самой в свое время очень бы пригодился подробный разбор.

Также пишите комментарии, какие поправки вы используете в работе, как их выбираете и любые вопросы, дополнения, замечания по посту!

#stats #stat_hard

Статистика и R
35🔥30👍10
Один статистик 40 лет проработал в самой успешной биотех компании. Долго, хорошо работал, тимлидом стал.
И была у него всю жизнь одна привычка: каждое утро он открывал левый верхний ящичек стола, заглядывал в него, а потом закрывал на ключик. Когда он ушел на пенсию, сотрудники бросились к столу и вскрыли этот ящик – там лежала старая-старая, потрепанная бумажка, на которой было написано: "p-value это вероятность получить такое же или еще более экстремальное значение тестовой статистики при условии верности нулевой гипотезы"

#stat_fun

@stats_for_science
😁117🔥15👍12😱8💯43🙏1
Дорогие подписчики, посты на телеграм-канал возвращаются. Немного выпала из публикаций, в связи с относительно большой преподавательской нагрузкой:

Я все еще провожу репетиторство по основам R и статистики, актуальная стоимость: 2500р в час. А также участвую в проекте Статистика и R для селекционеров (кстати, если кому-то интересно, то еще можно присоединиться).

Еще у Александра Гинько выходит перевод легендарной книги Хэдли Викхама Advanced R, прочитать про перевод можно здесь, а также получить промокод на скидку. Очень здорово, что выходит перевод такой книги, планирую заказать бумажный вариант (в оригинале читала, но на бумаге почитать тоже приятно). От переводчика я ранее читала перевод книги Mastering Shiny, качество перевода очень высокое.

В настоящий момент я больше занимаюсь изучением продуктовой аналитики: продуктовые метрики, A/B тесты и прочие связанные вещи. Собираюсь делиться интересными мыслями на эти темы здесь на канале. От основного фокуса канала, отраженного в названии, не отказываюсь, но хочу немного расширить профиль.

На первый взгляд, продуктовая аналитика может быть вариантом для тех, кто имеет академический бэкграунд и хочет сменить сферу деятельности, но есть проблема, что в большинстве вакансий требуется уже опыт продуктовым аналитиком. Тем не менее, как-то же люди получают опыт, посмотрим. Если тут есть продуктовые аналитики, пожалуйста отметьтесь в комментариях, я бы хотела расспросить про то, как удалось сменить область.

По статистике: я готовлю пост про роль нормального распределения для параметрических статистических тестов, так что оставайтесь на связи, в течение месяца планирую дописать.

Статистика и R
👍60193🐳3🎉1
Channel name was changed to «Статистика и R в науке и аналитике»
Не только tidyverse: материалы по data.table

По работе понадобилось разбираться с data.table, который я игнорировала достаточно долгое время, в силу отсутствия особой необходимости работы с большими объемами данных. На самом деле давно пора было, потому что он реально нужен в арсенале инструментов аналитика данных.

Для быстрого освоения data.table рекомендую материалы (учебник и запись вебинаров) Филиппа Управителева, очень здорово расписано. Также документация по dt написана достаточно лаконично и исчерпывающе (что соответствует dt-подходу в целом).

В целом, в извечном споре tidyverse vs data.table (спор при этом не совсем корректен, так как tidyverse — экосистема пакетов, а data.table один пакет для обработки таблиц) можно не занимать какую-то сторону, а использовать преимущества обоих подходов, подробнее можно почитать у Ильи Шутова на канале R in Action.

Еще вчера вышел перевод Advanced R от Александра Гинько, я уже купила pdf-версию, хочу более внимательно прочитать часть про метапрограммирование, круто, что такие книги появляются на русском языке + можно купить бумажное издание.

#R #tidyverse #data_table

Статистика и R
👍3910🔥8
Новое видео про описательные статистики 📊

Я после перерыва выпустила первое видео из серии статистики, посмотреть его можно здесь. К сожалению не успела на этих выходных записать продолжение, но чуть позже должна найти время на запись. Немного непривычен формат коротких лекций без общения с аудиторией, психологически проще рассказывать кому-то и в менее сжатой форме. Для ютуб-формата нужно делать материал более концентрированным с четкими границами тем. Думаю, это более удобно для слушателя, но сложнее для лектора.

А какой формат для восприятия более удобен и привычен вам? Короткие 10-15 минутные видео по одной теме или полуторачасовые лекции на более широкий спектр тем? Пишите в комментарии или ставьте реакции: ✍️ за длинные лекции, 👀 за более короткий ютуб-формат.

#stats #base_stat
41🔥19👀1210👍6
Пост-знакомство с Еленой, создательницей и ведущей этого канала

Всем привет! В последнее время появилось много новых подписчиков, а общее число перевалило за 2000. Новым подписчикам — добро пожаловать, старым — спасибо, что остаетесь и продолжаете читать.

Этот пост, чтобы обновить информацию о себе, потому что про себя я рассказывала почти два года назад, за это время много что изменилось.

Я решила уйти из биоинформатической аспирантуры и перейти в дата аналитику. На первую работу в этой области устроилась в мае 2023 года, а в настоящий момент уже два месяца работаю в X5 Tech (в направлении аналитики и визуализации), стек SQL (ClickHouse), R, Grafana.

Мне нравится, что в нашей группе получается применить навыки работы в R + использовать самые передовые подходы, например работу в data.table. Задач по статистике пока нет, но мне хватает преподавания и записи ютуб-лекций. Кроме этого, изучаю материалы по продуктовой аналитике, в особенности что касается проведения A/B тестов.

Для перехода в DA понадобилось выучить SQL и научиться работать с дашбордами, а R и python у меня уже были на достаточно хорошем уровне. Если интересно, могу в следующих постах рассказать чуть более подробно про то, насколько сложно было перекатиться в другую область.

По поводу преподавания можно посмотреть обновленную информацию здесь.

На канале собираюсь выкладывать в том числе материалы, посвященные продуктовой аналитике

Статистика и R
👍62🔥2912👏1
Опрос-знакомство с подписчиками канала 🖥
Пожалуйста, выберите от одного до трех определений, которые наиболее точно и полно описывают ваш бэкграунд и сферу деятельности. Если что-то пропустила, дополняйте в комментариях
Anonymous Poll
39%
Биология
26%
Биоинформатика
25%
Медицина
6%
Физика
11%
Математика
21%
Статистика
14%
Программирование, разработка
22%
Аналитика (данных, системная, бизнес, продуктовая и тд)
13%
Экономика
9%
Другое (напишу в комментариях)
👍17
Пятничный мем

— Привет.
— Привет.
— Как там ваши дела с Кристиной? Еще не поженились?
— Нет, мы расстались.
— А что случилось?
— Мне надоело, у нее были слишком большие запросы.
— Например какие?
— Ну например update instance inner join (select groupid as group_id, (select messageid from message inner join thread on threadid = message.thread_id where location_id = location_id and language_id = language_id and concat(group_key, '.') like concat(group.key, '.%') order by message.created desc limit 1) as last_message_id, (select count(*) from thread where location_id = location_id and language_id = language_id and concat(group_key, '.') like concat(group.key, '.%')) as thread_count, (select if(sum(thread.message_count) is null, 0, sum(thread.message_count)) from thread where location_id = location_id and language_id = language_id and concat(group_key, '.') like concat(group.key, '.%')) as message_count from group where group_key like concat(key, '.%')) as statistics on statistics.group_id = instance.group_id set instance.message_id = statistics.last_message_id, instance.thread_count = statistics.thread_count, instance.message_count = statistics.message_count where instance.location_id = location_id and instance.language_id = language_id;

Статистика и R

#SQL #stat_fun
😁727👍42👎1🔥1
Задачка по дизайну A/B тестов

Пару недель назад участвовала в контесте от Samokat.tech по продуктовой аналитике. Вчера объявили результаты, оказалось, я попала в топ-10 лучших решений и выиграла оффлайн-билет на конференцию Aha'24 в Москве 🎉🎉🎉 (в прикрепленном фото результаты отсортированы по алфавиту, точных баллов не говорили, а имена остальных участников скрыты из соображений приватности).

Суть задачи была в том, чтобы
1) предложить продуктовые решения по борьбе с мошенниками-продавцами на маркетплейсе;
2) сделать дизайн A/B теста, который будет сравнивать новую ML-модель детекции мошенников с ручным определением. Соответственно, нужно было определить, какой статистический тест использовать, рассчитать MDE и мощность, сплит на группы и разобраться с данными, которые предоставили для решения.

Было очень интересно решать реальную задачу e-commerce, где понятно, что за продукт и почему это важно, так что спасибо команде организаторов конференции и аналитиков самоката за возможность проверить свои силы на реальной задаче.

С моим решением можно ознакомиться по ссылке, пишите вопросы и комментарии, если возникли.

#product

@stats_for_science
👍47🎉21🔥14
Отзыв о конференции Aha'24 👍

Две недели назад (06.06) сходила на конференцию Aha по продуктовой аналитике, про которую писала в прошлый раз.

Вообще я в первый раз посетила именно айти конференцию, по сравнению с научными специфика и формат сильно отличается. Понравилось, что помимо докладов было достаточно много стендовых оффлайн-активностей, викторины, настольные игры и прочее. Неплохо было бы добавить такое на научные конференции для упрощения нетворка, но конечно это маловероятно, да и скорее всего неуместно.
Атмосфера тоже отличается от научных конференций, как будто люди в целом проще и можно было спокойно поговорить со спикерами + нет ощущения, что часть людей присутствует на конференции только для того чтобы отчитаться по грантам.

Было много параллельных секций докладов, из-за чего сразу не получилось послушать все, что хотелось, но можно посмотреть в записи, хотя с ними были небольшие технические проблемы. Понравились доклады про сетевые эффекты в юнит экономике и про размен метрик (как паковать молоко по 0.9 л).

Удалось познакомиться лично и пообщаться с админами телеграм-каналов: Борзило, аналитика на кубах, Не AБы какие тесты и просто с аналитиками из разных компаний (что удивительно, без телеграм каналов).
Очень прикольно было поучаствовать в различных викторинах от яндекса и сбермаркета, где вопросы были примерно как на собеседованиях, но в игровой форме.
Фотографий на конференции особо не делала, прикрепляю выигранный мерч и стикерпаки, которые раздавали все компании со стендами.

В целом для меня самое полезное в конференции — это знакомство и общение с продуктовыми аналитиками и возможность обсудить рабочие и не только вопросы, плюс осталось много непросмотренных докладов, которые собираюсь досмотреть.
Конференцию рекомендую, обязательно съезжу еще, если получится.

#product #analytics

@stats_for_science
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥40👍105
Новый курс по tidyverse 📈 на stepik

В начале мая мы совместно с Blastim и Мишей выпустили мини-курс, посвященный разбору tidyverse, в основном dplyr 🔧.
Я настояла на том, чтобы курс был бесплатным и пройти его могли все желающие.
Можно проходить в любое время, дедлайнов нет, есть лекционный материал и задания на проверку пройденного. Курс рассчитан как на начинающих, кто только знакомится с R, так и на тех, кто уже знаком с основными функциями R и пакетом dplyr, но желает структурировать информацию. На мой взгляд, получилось достаточно неплохо, думаю дальше продолжать развивать это направление, например уделить время разбору функционального подхода к программированию в R и пакету purrr, а также философии графиков ggplot2. Правда, по последнему кажется, что материалов и так хватает. Но в целом у каждого преподавателя свой стиль подачи материала и акценты на разные ключевые моменты, поэтому я считаю, что чем больше будет источников и курсов - тем лучше.

Записывайтесь на курс, пишите комментарии и отзывы, всех жду!

#R #tidyverse #recommendation

@stats_for_science
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥9622👍11🔥111
Всем привет!

Написала обещанный большой пост о моем переходе из биоинформатики в аналитику данных. Подробно расписала мотивацию и выбор области, а также курсы и рекомендации.

Пишите комментарии, вопросы, на все постараюсь ответить!

#analytics
🔥7119👍8🤔2
О пуш-уведомлениях, определении целевых пользователей и выгоде годовой подписки

Я пользуюсь разными приложениями для аренды самокатов 🛴 и в одном из них даже оплатила годовую подписку на бесплатный старт. Подписка продавалась по скидке, и я посчитала, что примерно за 10 поездок смогу отбить ее стоимость. Однако мне все еще поступают пуш-уведомления с предложением купить подписку на один или три месяца. Это слегка раздражает и говорит о том, что в компании видимо не проводят сегментацию пользователей и просто раскатывают пуши на всех, вне зависимости, есть ли у них уже подписка или нет.

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

Например, в другом приложении был полезным пуш, о том что я давно не каталась на самокатах, со скидкой 20% на следующую поездку. Мне как раз тогда нужно было поехать на самокате, и пуш, и скидка были очень вовремя, я воспользовалась предложением и повысила их метрику конверсий пушей в поездки 😎. Для первого упомянутого приложения тоже намного более полезным было бы напомнить о наличии подписки, о бесплатном старте, чтобы я как пользователь чаще каталась.
Тут правда возникла мысль, что возможно из-за бесплатного старта самокаты начинают работать в убыток 🤔, и им выгоднее, чтобы люди купили подписку и как можно реже пользовались. Но все равно мне кажется продукту нужно увеличивать метрики DAU, WAU, MAU (это аббревиатуры daily, weekly, monthly active users), плюс удержание пользователей (retention), и вряд ли наличие подписки это как-то отменяет. Я понимаю, что метрики активности пользователей не являются самоцелью, а конечная цель продукта состоит в получении прибыли, но поскольку поездки при наличии подписки не становятся бесплатными, значит, юзер будет продолжать приносить прибыль, пользуясь самокатами и при наличии подписки. Так что я не думаю, что при бесплатном старте самокаты становятся убыточными, такая бизнес-схема была бы странной.

А что думаете вы по этому поводу? Выгодно ли при наличии подписки напоминать пользователю о себе, или оптимально, если человек купил и забыл про нее и не использовал приложение?

#product #analytics

@stats_for_science
👍20👎2🔥2😁1
Пост-навигация для знакомства с каналом

Я пишу здесь разбор простых и сложных вещей в статистике, рассказываю про особенности языка программирования R, а также выкладываю материалы о продуктовой аналитике и смежных темах. Иногда серьезность постов разбавляю мемами, но не слишком часто.

1) Немного обо мне: я по образованию биоинформатик, в настоящий момент работаю аналитиком данных в 🖤 и интересуюсь продуктовой аналитикой, подробнее можно почитать в постах ниже:
- Пост-знакомство
- Как биологу стать аналитиком данных

2) Преподаю статистику и анализ данных в R для биологов, медиков и не только:
результаты за 2023 год и актуальные условия

3) Подборка наиболее ценных материалов для знакомства с каналом

📊О статистике:
Поправки на множественное тестирование
Пределы погрешностей (error bar), какие бывают виды и как интерпретировать
Разбор теста Велча и сравнение с тестом Стьюдента
Список рекомендуемых источников для изучения статистики
Лекции на ютубе по основам статистики
Ошибки первого и второго рода - как запомнить и больше не путать
Сравнение медиан и средних бутстрепом

Про 🖥:
Подборка источников материалов для изучения R
Мой курс по tidyverse на Stepik
Советы для эффективной организации работы в R, проект-ориентированный подход
Установка R, разбор ошибок и подводных камней
Множественные t-тесты в R с применением `tidyverse` подхода
Подборка источников по ggplot2, purrr
История факторов в R
Почему в R используется <- как оператор присваивания

Продуктовая аналитика:
Решение контеста по A/B тестам от samokat.tech
О пуш-уведомлениях и выгоде подписок
Как перепутать средние чеки и ARPPU и зафейлить несколько A/B тестов

4) Основные хештеги для удобства поиска
#R - все, что связано с R
#analytics - материалы по аналитике
#AB_tests - материалы по A/B тестированию
#stats - общий хештег по теме статистика
#base_stats - относительно простые вещи по статистике
#stat_hard - более сложные темы статистики, например бутстреп
#stat_fun - иногда публикую что-то забавное по темам, связанным со статистикой и аналитикой, например, анекдот про p-value

Новым подписчикам - добро пожаловать, по возможности, пожалуйста, проголосуйте в опросе о вашем бэкграунде.
По всем вопросам - пишите в личку @lena_astr, оставляйте комментарии к постам, на все стараюсь отвечать.
Можно вступать в чат канала, планирую его развивать как площадку для дискуссий

Сделать буст по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3915👍8❤‍🔥2
С днем рождения меня 🎈

И почти с днем рождения телеграм-канал, он был основан 26 августа 2021-го года 🎉
Очень приятно, что мой канал с заметками по статистике так расширился, и здесь собрались настолько разные подписчики: биологи, психологи, социологи, аналитики данных, даже есть представители астрофизики! (в комментариях к опросу можно заценить, а также написать свою область 😎)

Лучшим поздравлением для меня будет поделиться ссылкой с друзьями и коллегами, а также написать в комментариях, что интереснее всего читать, в чем для вас канал представляет ценность.

Спасибо всем, что читаете, комментируете, ставите реакции, это мотивирует развиваться и писать еще!
🎉10916🔥6👍1