Наука и данные
1.67K subscribers
591 photos
11 videos
643 links
Дайджест по полезным и интересным инструментам в науке о данных, машинному обучению и визуализации данных. Создан как записная книжка, которая дополняет страницу https://naukaidannye.netlify.app/
加入频道
Program Evaluation for Public Service 👨‍🎓

Andrew Heiss (Andrew Young School of Policy Studies, Georgia State University), известный нам, например, по материалам курса Data Visualization (актуализированная версия), изучающего принципы графического дизайна на основе R и ggplot2, поделился материалами курса Program Evaluation for Public Service. В этом курсе дается введение в область причинно-следственных связей (causal inference) с использованием R и tidyverse в применении к оценке эффективности социальных программ.

Для того, чтобы войти в курс дела, можно посмотреть подборку С чего начать свой путь в causal inference? и Оценка причинно-следственных связей от наших уважаемых коллег из МГУ им. М.В. Ломоносова, а также Causal Inference in R у нас на канале.
Data Visualization in R 👌

Claus O. Wilke - автор прекрасной книги Fundamentals of Data Visualization, переведенной на русский язык как Основы визуализации данных. Пособие по эффективной и убедительной подаче информации переделал страницу своего курса Data Visualization in R на Quarto: теперь презентации в разделе Slides выполнены на Quarto-версии Reveal.js, а ноутбуки с упражнениями в разделе Worksheets используют WebR, что позволяет запускать код в браузере. Материалы курса дополняются!
Taming LLMs

Коллегам, которые работают с большими языковыми моделями (см. большой свежий обзор), возможно, пригодится книжка Taming LLMs, которая выглядит многообещающе и рассматривает ключевые ограничения и подводные камни реализации, с которыми сталкиваются разработчики при создании приложений на основе LLM. В книге приведены практические примеры на Python, что добавляет ценности. К книге прилагается авторский блог.

Дедлайн написания всех глав - примерно 2 февраля 2025.

Кстати, R библиотека ellmer вышла на CRAN.
Хороших выходных! 👋
Genuary 2025

На дворе январь 2025 года, а это значит - новый прекрасный ежегодный челлендж по генеративному арту GENUARY. Используйте prompts, применяйте в качестве рабочего инструмента любой язык программирования и делитесь результатом в социальных сетях (z.B. в Fosstodon или в Bluesky). Самое главное - чтобы это было в удовольствие!

Можно посмотреть работы авторов, которые выполенены в R:

📍 Georgios Karamanis

📍 Nicola Rennie

📍 Юрий Тукачев

Если вашему вдохновению хочется еще больше генеративного арта, то можно заглянуть на The Weekly Creative Code Challenge, который ведет Raphaël de Courville на сайте OpenProcessing.
Пример ShinyLive

Уважаемые коллеги, на повестке дня стоял вопрос публикации Shiny-приложений. Один из неплохих вариантов - Posit Cloud, но в Posit (как и ожидалось) стали брать денежки за облако. Однако, нужен ли нам сервер? Нет, для небольших приложений не нужен!

Один из способов - использовать ShinyLive для создания интерактивных веб-приложений. Обратная сторона такой публикации - необходимо подождать пока веб-страница загрузится.

Я сделал небольшое простое руководство по использованию ShinyLive, но имейте ввиду, если углубиться в тему - есть ньюансы, не без них. Вот еще пример: shinylive-in-book-test (автор Max Kuhn).
Positron: My Key Bindings

Emil Hvitfeldt написал небольшую заметку по клавиатурным сочетаниям в IDE Positron, что может весьма полезным, например, как быстро сгененрировать репрекс, сфокусироваться на определенном окне и т. д.

Напомню также комментарий Анатолия Цыпленкова: в настройках Positron есть возможность включить кеймапы RStudio как описано в разделе Keyboard Shortcuts, они помогут сделать переход из RStudio бесшовным.
Collapse button в Quarto

Emil Hvitfeldt эксклюзивно поделился со мной рецептом, как сделать кнопочку, позволяющую развертывать или сворачивать содержание в книгах на основе Quarto, такую же, как в его книге Feature Engineering A-Z.

Шаг 1. Нужно в корень проекта поместить файл misc.html

Шаг 2. Добавьте в _quarto.yml строки:

format:
html:
include-after-body: [misc.html]


Вся магия происходит в JavaScript. Я модифицировал кнопочку так, как мне нужно, попробуйте и вы! 👇
This media is not supported in your browser
VIEW IN TELEGRAM
Вот так выглядит кнопка "collapse" для содержания на сайте RSources.
ggplot2 extension cookbook 🫖

Gina Reynolds для всех пользователей ggplot2 и R, уже неплохо владеющим языком R, сделала страницу ggplot2 extension cookbook (которая будет дополняться), основная цель которой - предоставить множество примеров расширений для знакомства и развития, которые также могут служить конкретной справкой.

Все сделано пошагово, в последовательной и доступной форме; некоторые приемчики и библиотеки действительно очень интересные! 👌

Небольшое дополнение: tidyplots сделали сайт Use cases с примерами, выглядит довольно стильно, но было бы неплохо, если бы и код к картинкам приложили.
Working with colours in R 🎨

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

Nicola Rennie в новой статье блога описывает различные способы определения цветов, как сделать правильный выбор цветовых палитр и как создать собственные цветовые схемы в R. Работе с цветом посвящено множество публикаций, но эта - крайне полезная и содержательная.
Advent of SQL with DuckDB and R

Уже давно закончился Advent of Code - популярный календарь с головоломками перед Рождеством (см. также первоклассное видео, в котором автор Eric Wastl рассказывает от том, как он реализовал идею календаря).

François Michonneau решил поделиться своими решениями другого челленджа - Advent of SQL, который он решил используя DuckDB и {dplyr}. Получился довольно обстоятельный пост.
Ghostty 👻

В аккурат перед Новым Годом вышла официальная версия Ghostty - многофункционального кроссплатформенного (macOS + Linux) эмулятора терминала, который использует собственный интерфейс.

На Ghostty уже вышло множество обзоров, возможно, однажды я тоже попробую его (пока я на iTerm2 + fish shell), вариантов сейчас очень много. В общем, посвящается любителям Neovim, tmux, Lazygit и всем клавиатурно-настроенным программистам.
Please open Telegram to view this post
VIEW IN TELEGRAM
Make LaTeX great again!

Hadley Wickham запустил свою линейку футболок для всех... любителей LaTeX (см. Learn LaTeX in 30 minutes) из Техаса! У него давно была такая идея и лишь недавно он ее воплотил:

LaTex + Texas = \LaTeXas!

Жаль, не могу приложить ссылки на продажу футболки, увы, линк из поста Hadley у меня не работает.

Может и нам свой мерч запустить? Уже была не так давно идея с Tidyverse-гексами! :)

Всем хороших выходных! 👋
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация изменения внешнего вида Сатурна с Земли в R 🪐🔭

Сатурн имеет уникальный трехмерный вид благодаря своей обширной системе колец и осевому наклону в 26,7 градуса. У вас могут быть годы, когда кольца заметно видны при наблюдении с Земли, сменяющиеся периодами, когда они почти полностью исчезают.

Можно ли мы точно смоделировать его появление с Земли, учитывая определенную дату в будущем или прошлом? Tyler Morgan-Wall сделал такого рода моделирование с 2020 по 2030 год в R и rayverse. Все подробности можно почитать в его статье.
Fancy Components 😎

Если вы хотите разбавить свой веб-сайт красивыми компонентами, возможно вам пригодятся симпатичные решения от fancy components с открытым кодом на основе React, TypeScript, Tailwind CSS и Motion (Formerly Framer Motion).

Если еще больше хочется погрузиться в мир веб-разработки, то в этом могут помочь замечательные руководства от Traversy Media.
Шахматы ♟️ + R = ❤️

Wolfgang Viechtbauer использует R для создания... последовательности шахматных ходов с помощью библиотеки chesstrainer. Это особенно полезно для обучения дебютам, но может также использоваться для создания шахматных головоломок.
lofifonts ✔️

Библиотека {lofifonts} позволяет создавать интересные изображения на основе растровых и векторных шрифтов. Получается довольно необычно, все это потом можно анимировать или создавать 3D-изображения.


library(lofifonts)

txt <- " Наука \n и данные"
coords <- bitmap_text_coords(txt, "spleen-12x24")

library(grid)
grid.newpage()
grid.rect(
x = coords$x * 2,
y = coords$y * 2,
width = 1.6,
height = 1.6,
default.units = 'mm',
gp = gpar(fill = viridis::turbo(nrow(coords),
direction = -1),
col = NA)
)
LLMs/genAI + R roundup

Luis D. Verde Arregoitia внимательно следит за прогрессом библиотек R, связанных с LLM (большими языковми моделями), он сделал список обновляемых ресурсов по LLM + R.

Например, Simon Couch в начале 2025 сделал релиз библиотеки gander как контекстно-зависимого помощника в IDE RStudio либо Positron, позволяющий искать контекст в файлах и внутри среды R (имена переменных, объекты, определения функций и т. д.).

gander опирается на другую уже известную библиотеку ellmer (ранее elmer), на которую Алексей Селезнев сделал отличный обзор. Возможно в R появится и библиотека для работы с RAG (Retrieval Augmented Generation) в 2025-м, будем следить за развитием темы.