Определение языка R. Версия 3.5.2 (2018-12-20) DRAFT. Александр Александрович Фоменко
Читать онлайн книгу.бинарное
– >
Правое присвоение, бинарное
$
Подмножество списка, бинарное
За исключением синтаксиса, нет никакой разницы между применением оператора и вызовом функции. Фактически, x + y может эквивалентно быть записано ‘+‘ (x, y). Заметим, что так как ‘+’ не является именем стандартной функции, то он должен быть заключен в кавычки.
R имеет дело со всем вектором данных за один раз, и большинство элементарных операторов и основных математических функций, например, log являются векторизованными (как обозначено в таблице выше). Например, добавление двух векторов одинаковой длины создаст вектор, содержащий поэлементные суммы, неявно индексируя циклическое выполнение по вектору. Также применяют как к другим операторам, таким ка – *, и / так и к структурам более высокой размерности. Заметим в особенности, что умножение двух матриц не производит обычное матричное произведение (оператор %*% существует с этой целью). Некоторые тонкости, касающиеся векторизованных операций, будут обсуждены в разделе 3.3 [Элементарные арифметические операции].
Для получения доступа к отдельным атомарным элементам вектора используется конструкция x [i]:
> x <– rnorm (5)
> x
[1]
– 0.12526937 -0.27961154 -1.03718717 -0.08156527 1.37167090
> x [2]
[1] -0.2796115
Для доступа к компоненте списка обычно используется x$a или x [[i]].
> x <– options ()
> x$prompt
[1] ">»
Также можно использовать индексацию конструкций на правой стороне присвоения.
Подобно другим операторам, индексация, в действительности, выполняется функциями, и можно использовать « [» (x, 2) вместо x [2].
Операции индексации R содержат много расширенных функций, которые описаны далее в разделе 3.4 (Индексирование).
3.2. Управляющие структуры
Вычисление в R состоит в последовательной оценке операторов. Операторы, такие как x <-1:10 или mean (y), могут быть разделены или точкой с запятой или новой строкой. Всякий раз, когда средству анализа предоставляют синтаксически полный оператор, этот оператор оценивается и возвращается значение. Результат оценки оператора может упоминаться как значение оператора. Значение всегда присваиваться символу.
Для разделения операторов могут использоваться и точки с запятой, и новые строки. Точка с запятой всегда указывает на конец оператора, в то время как новая строка может указывать на конец оператора. Если текущий оператор синтаксически не полный, то новые строки просто игнорируются средством анализа. Если сеанс является интерактивным, запрос изменяется с ‘> ’ на ‘+».
> x <– 0; x +5 [1] 5
> y <– 1:10
> 1; 2
[1] 1
[1] 2
Операторы могут группироваться использованием фигурных скобок ‘ {» и»}». Группу операторов иногда вызывают блоком. Отдельные операторы оцениваются при вводе новой строки в конце синтаксически полного оператора. Блоки не оцениваются, пока новая строка не вводится после закрывающей фигурной скобки. В оставшейся части этого раздела оператор ссылается на отдельный оператор или блок.
> {x <– 0
+ x +5
+}
[1] 5
3.2.1.