На этой странице
- Зачем использовать консоль?
- Выполнение команд
- Слэш-команды
- /data — загрузить набор данных в R
- /output <переменная> — вывести результаты в раздел вывода
- /upload — загрузить внешний файл
- /download <имя_файла> — скачать файл из R
- /clear — очистить вывод консоли
- /reset — перезапустить R
- /clearplots — очистить галерею графиков
- /outputplot [n] — отправить график в результаты
- /help — показать доступные команды
- Графики
- Формульная нотация R
- Операторы
- Типичные формулы
- Примеры
- Изучить данные
- Подобрать собственную модель
- Доработать сгенерированный анализ
- Построить быстрый график
- Установить и использовать пакет
- Важные замечания
Консоль R
DataSuite 2 включает полноценную консоль R на основе WebR — R, работающего целиком в браузере. Нажмите кнопку Консоль R (иконка монитора) в верхней панели, чтобы открыть её.
Зачем использовать консоль?
Каждый запущенный в DataSuite анализ выводит свой R-код в консоль. При нажатии кнопки «Рассчитать» в любом модуле в консоли появляются фактические команды R — те же, что вы написали бы сами в RStudio или любой другой R-среде.
Это позволяет:
- Учиться R на примерах — запустить анализ через интерфейс, а затем прочитать сгенерированный код, чтобы понять, что происходит «под капотом»
- Проверить методологию — увидеть, какие именно функции, параметры и поправки были применены
- Изменить и перезапустить — скопировать команду из вывода консоли, модифицировать её (другие параметры, другую спецификацию модели) и выполнить напрямую
- Выйти за рамки интерфейса — встроенные модули охватывают распространённые анализы, но возможности R значительно шире. Консоль открывает доступ ко всему, чего нет в модулях.
Знать R для работы с DataSuite не обязательно — но если вам интересно, консоль всегда рядом: она показывает, что происходит, и позволяет взять управление в свои руки.
Выполнение команд
Введите R-код в поле ввода и нажмите Enter (или кнопку Выполнить). Результаты появятся в области вывода консоли выше.
- Shift+Enter — перенос строки для многострочного ввода
- Стрелки вверх/вниз — навигация по истории команд (до 50 команд, сохраняется между сессиями)
mean(c(1, 2, 3, 4, 5))
Слэш-команды
Введите /, чтобы увидеть список специальных команд. Для навигации используйте стрелки вверх/вниз, для автодополнения — Tab.
/data — загрузить набор данных в R
Делает текущий набор данных DataSuite доступным в виде фрейма данных с именем df. После выполнения команды можно использовать стандартные функции R:
/data
summary(df)
head(df)
str(df)
Фрейм данных включает все переменные, выбранные в DataSuite, с учётом активных фильтров и преобразований.
/output <переменная> — вывести результаты в раздел вывода
Принимает R-переменную и отображает её в виде форматированной карточки результатов рядом с другими анализами.
model <- lm(Score ~ Age + Group, data = df)
/output model
Разные типы данных отображаются по-разному:
- Фреймы данных и матрицы — форматированные таблицы
- Именованные векторы — таблицы «ключ — значение»
- Короткие неименованные векторы — значения через запятую
- Длинные векторы (20+ элементов) — усечённый список с указанием количества
- Списки — рекурсивный вывод, каждый именованный элемент в отдельном подразделе
/upload — загрузить внешний файл
Открывает диалог выбора файла для загрузки в виртуальную файловую систему R (в директорию /home/web_user/). После этого файл можно прочитать из R:
/upload
external_data <- read.csv("myfile.csv")
/download <имя_файла> — скачать файл из R
Скачивает файл из виртуальной файловой системы R на ваш компьютер:
write.csv(results, "output.csv")
/download output.csv
Если файл не найден, консоль предложит выполнить list.files(), чтобы посмотреть, какие файлы доступны.
/clear — очистить вывод консоли
Очищает область вывода консоли. Сама сессия R и переменные при этом не затрагиваются.
/reset — перезапустить R
Полностью переинициализирует движок R. Все переменные, загруженные пакеты и состояние сессии будут потеряны. Используйте эту команду, если что-то пошло не так или вы хотите начать с чистого листа.
/clearplots — очистить галерею графиков
Удаляет все графики из вкладки Графики (см. графики ниже).
/outputplot [n] — отправить график в результаты
Отправляет график в раздел вывода в виде карточки результатов. Без аргумента — отправляет последний график. С числом (например, /outputplot 3) — указанный график. С аргументом all — все графики из галереи.
/help — показать доступные команды
Отображает список всех слэш-команд и ссылки на документацию по R:
Графики
Модальное окно консоли имеет две вкладки: Консоль и Графики. При выполнении команды построения графика (например, plot(1:10), hist(df$Score)) результат отображается в галерее вкладки Графики. Каждый график нумеруется (#1, #2, …). Если новый график появляется, пока вы просматриваете вкладку «Консоль», на вкладке «Графики» появляется индикатор уведомления.
Используйте /outputplot, чтобы отправить графики в основной раздел вывода, или /clearplots, чтобы очистить галерею.
Формульная нотация R
Многие функции R — включая lm(), glm(), t.test(), aov() и функции построения графиков — используют формулу для описания связей между переменными. Общий вид: отклик ~ предикторы, читается как «отклик моделируется предикторами». Модуль регрессии и анализ путей в DataSuite используют ту же нотацию.
Операторы
| Оператор | Значение | Пример | Раскрывается в |
|---|---|---|---|
~ |
«моделируется» — разделяет левую (отклик) и правую (предикторы) части | Y ~ X |
Y предсказывается по X |
+ |
добавить член | Y ~ A + B |
основные эффекты A и B |
- |
исключить член | Y ~ A*B - A:B |
A и B без их взаимодействия |
* |
пересечение — основные эффекты плюс взаимодействие | Y ~ A * B |
A + B + A:B |
: |
только взаимодействие (без основных эффектов) | Y ~ A + B + A:B |
то же, что A * B |
^ |
пересечение до указанной степени | Y ~ (A + B + C)^2 |
все основные эффекты + все двухсторонние взаимодействия |
I() |
«как есть» — буквальная арифметика | Y ~ X + I(X^2) |
линейный и квадратичный члены |
1 |
свободный член (включён по умолчанию) | Y ~ X - 1 |
убрать свободный член |
. |
все остальные переменные фрейма данных | Y ~ . |
Y предсказывается по всем остальным столбцам |
Типичные формулы
Простая регрессия — один предиктор:
Y ~ X
Множественная регрессия — несколько предикторов:
Y ~ A + B + C
Взаимодействие — зависит ли эффект A от B?
Y ~ A * B # то же, что A + B + A:B
Полиномиальная модель — квадратичные или кубические члены:
Y ~ X + I(X^2) # квадратичная
Y ~ X + I(X^2) + I(X^3) # кубическая
Полный факториал — все взаимодействия до заданного порядка:
Y ~ (A + B + C)^2 # все основные эффекты + все двухсторонние взаимодействия
Y ~ A * B * C # все основные + все двух- и трёхсторонние взаимодействия
Без свободного члена — линия через начало координат:
Y ~ X - 1
Всё сразу — предсказание по всем остальным столбцам:
Y ~ .
Когда использовать
I(): операторы формул R (+,*,^) имеют внутри формул специальные значения. Если нужна арифметическая операция — например, X в квадрате — оберните её вI(), чтобы R воспринял это как вычисление, а не формульный оператор.Y ~ X^2означает «пересечение X с самим собой» (что просто X), тогда какY ~ I(X^2)— «X в квадрате как предиктор».
Примеры
Изучить данные
/data
summary(df) # описательный обзор всех переменных
table(df$Gender) # таблица частот для категориальной переменной
cor(df$Age, df$Score) # быстрая корреляция между двумя переменными
Подобрать собственную модель
Встроенный модуль регрессии охватывает распространённые случаи, но R позволяет подобрать любую поддерживаемую им модель:
/data
model <- lm(Score ~ Age * Group + I(Age^2), data = df)
summary(model)
Используйте /output model, чтобы вывести результаты в виде форматированной карточки рядом с другими анализами.
Доработать сгенерированный анализ
Предположим, вы запустили t-критерий через интерфейс и в консоли появился код:
t.test(Score ~ Group, data = df, var.equal = FALSE)
Вы можете скопировать эту строку, изменить её и перезапустить — например, перейти к одностороннему критерию:
t.test(Score ~ Group, data = df, var.equal = FALSE, alternative = "greater")
Построить быстрый график
/data
hist(df$Score, main = "Распределение показателя", col = "steelblue")
График появится во вкладке Графики. Используйте /outputplot, чтобы отправить его в раздел вывода рядом с другими результатами.
Примечание: отрисовка графиков в WebR имеет ряд ограничений по сравнению с десктопным R. Базовые графики (
hist,plot,boxplot,barplot) работают корректно.
Установить и использовать пакет
ds_library(psych)
/data
describe(df)
Вместо library() используйте ds_library(). Эта функция при необходимости автоматически устанавливает пакет, повторяет попытки при сетевых сбоях и при недоступности основного репозитория переключается на резервный. Большинство популярных пакетов доступны в виде WebR-скомпилированных версий, однако некоторые могут отсутствовать — см. раздел Важные замечания ниже.
Важные замечания
- Это WebR, а не десктопный R. Базовый R и многие пакеты CRAN работают, однако некоторые пакеты, зависящие от системных библиотек или скомпилированного кода, могут быть недоступны. Если пакет не загружается, скорее всего, он ещё не скомпилирован для WebR.
help()и?недоступны. Используйтеexample(functionName), чтобы посмотреть примеры использования, или обратитесь к ссылкам на документацию выше.- Сессия R временная. Переменные, загруженные пакеты и файлы виртуальной файловой системы не сохраняются после перезагрузки страницы. Используйте
/download, чтобы сохранить нужные результаты. (История команд сохраняется между сессиями — см. выполнение команд.) - Консоль использует тот же движок R, что и модули анализа. Если запустить в консоли тяжёлое вычисление, встроенные анализы будут ждать его завершения (и наоборот).