На этой странице
- Зачем нужна консоль?
- Выполнение команд
- Слэш-команды
- /data — загрузить набор данных в R
- /output <variable> — показать объект в области результатов
- /upload — загрузить внешний файл
- /download <filename> — скачать файл из R
- /clear — очистить вывод консоли
- /reset — перезапустить R
- /clearplots — очистить галерею графиков
- /outputplot [n] — отправить график в результаты
- /help — показать доступные команды
- Графики
- Формульная нотация R
- Операторы
- Типичные формулы
- Примеры
- Изучить данные
- Подобрать собственную модель
- Доработать сгенерированный анализ
- Быстро построить график
- Установить и использовать пакет
- Важные замечания
Консоль R
В DataSuite 2 встроена полноценная консоль R на основе WebR — версии R, которая целиком работает в браузере. Чтобы открыть консоль, нажмите кнопку Консоль R (значок монитора) на верхней панели.
Зачем нужна консоль?
Каждый анализ в DataSuite выводит в консоль свой код R. Когда вы нажимаете «Рассчитать» в любом модуле, в консоли появляются те самые команды R, которые выполняет приложение. Это тот же код, что вы написали бы сами в RStudio или любой другой среде R.
Поэтому консоль можно использовать, чтобы:
- Изучать R на примерах — провести анализ через интерфейс, а затем разобрать сгенерированный код и увидеть, как устроен расчёт
- Проверять методику — видеть, какие именно функции, параметры и поправки применены
- Дорабатывать и перезапускать — скопировать команду из вывода консоли, поменять в ней параметры или спецификацию модели и выполнить её заново
- Выходить за рамки интерфейса — встроенные модули охватывают типичные анализы, а возможности R гораздо шире. Всё, чего нет в модулях, можно сделать в консоли.
Чтобы работать с DataSuite, знать R не обязательно. Но если вам интересно, консоль всегда под рукой: в ней видно, что делает приложение, и в любой момент можно взять управление на себя.
Выполнение команд
Введите код R в поле ввода и нажмите Ctrl+Enter (Cmd+Enter на Mac) или кнопку Запуск. Результат появится выше, в области вывода консоли.
- Enter и Shift+Enter — перенос строки для многострочного ввода
- Стрелки вверх и вниз — переход по истории команд, когда курсор стоит на первой (вверх) или последней (вниз) строке поля. В истории хранится до 50 последних команд, и она сохраняется между сеансами
mean(c(1, 2, 3, 4, 5))
Слэш-команды
Введите /, и появится список специальных команд. Выберите команду стрелками вверх/вниз и подставьте её в поле ввода клавишей Tab.
/data — загрузить набор данных в R
Команда передаёт текущие данные DataSuite в R как фрейм данных df. После неё доступны обычные функции R:
/data
summary(df)
head(df)
str(df)
Во фрейм данных попадают все переменные, выбранные в DataSuite, с учётом действующих фильтров и преобразований.
/output <variable> — показать объект в области результатов
Команда берёт переменную R и показывает её в виде оформленной карточки рядом с результатами других анализов.
model <- lm(Score ~ Age + Group, data = df)
/output model
Вид карточки зависит от типа объекта:
- Фреймы данных и матрицы — таблица
- Именованные векторы — таблица имён и значений
- Короткие неименованные векторы — значения через запятую
- Длинные неименованные векторы (больше 20 элементов) — первые 20 значений и общее число элементов
- Списки — рекурсивный вывод с отдельным подразделом для каждого именованного элемента
/upload — загрузить внешний файл
Открывает окно выбора файла и загружает файл в виртуальную файловую систему R (в папку /home/web_user/). После этого файл можно прочитать из R:
/upload
external_data <- read.csv("myfile.csv")
/download <filename> — скачать файл из R
Скачивает файл из виртуальной файловой системы R на ваш компьютер:
write.csv(results, "output.csv")
/download output.csv
Если такого файла нет, консоль предложит выполнить list.files() и посмотреть, какие файлы доступны.
/clear — очистить вывод консоли
Очищает область вывода консоли. Сессия R и переменные остаются нетронутыми.
/reset — перезапустить R
Запускает движок 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() и функции построения графиков, задают связь между переменными с помощью формулы. Формула имеет вид response ~ terms: слева от тильды стоит отклик, справа — члены модели, которые его описывают. Ту же запись используют модуль регрессии и анализ путей в 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 отправит его в область результатов, к карточкам других анализов.
Примечание: по сравнению с настольной версией R отрисовка графиков в WebR ограничена. Базовые графики (
hist,plot,boxplot,barplot) строятся без проблем.
Установить и использовать пакет
ds_library(psych)
/data
describe(df)
Подключайте пакеты функцией ds_library(), а не library(). Эта функция при необходимости устанавливает пакет, при сетевых сбоях автоматически повторяет попытку, а если основной репозиторий недоступен, берёт пакет из резервного. Большинство популярных пакетов собрано для WebR, но не все — см. раздел Важные замечания ниже.
Важные замечания
- Это WebR, а не настольный R. Почти весь базовый R и многие пакеты CRAN работают, но некоторые пакеты, зависящие от системных библиотек или скомпилированного кода, могут быть недоступны. Если пакет не загружается, скорее всего, его ещё не собрали для WebR.
help()и?недоступны. Чтобы посмотреть примеры использования функции, выполнитеexample(functionName)или обратитесь к ссылкам на документацию выше.- Сессия R временная. Переменные и загруженные пакеты пропадают при перезагрузке страницы, поэтому нужные результаты скачайте командой
/download. (История команд, напротив, сохраняется — см. Выполнение команд.)