Введение в R версия 3.5.2 (2018-12-20). Заметки по R: среда программирования для анализа данных и графики - страница 3
Это – оператор присваивания, использующий функцию c (), которая в этом контексте может взять произвольное число аргументов вектора и значением которой является вектор, полученный путем объединения аргументов конец с концом.
С другими параметрами кроме типов векторов, таких как параметры режима списка, действие c () довольно отличается. Посмотрите Раздел 6.2.1 [Конкатенация списков].
Отдельное число, входящее в выражении, трактуется как вектор единичной длины.
Учтите, что оператор присваивания (» <-»), который состоит этих двух символов ‘ <’ («меньше чем») и ‘-’ («минус»), выполняется однонаправленно и «указывает» на объект, получающий значение выражения. В большинстве случаев можно использовать оператор ‘=’ в качестве альтернативы.
Также можно сделать присвоение, используя функцию assign (). Эквивалентный выше приведенному способ присвоения выглядит как:
Обычный оператор <– может считаться синтаксическим сокращением для него.
Присвоения могут также быть сделаны в другом направлении, используя очевидное изменение в операторе присваивания. Таким образом, то же самое присвоение могло быть сделано, используя:
Если выражение используется в качестве полной команды, значение печатается и теряется. Итак, если бы нам пришлось использовать команду:
то обратные величины пяти значений были бы напечатаны в терминале (а значение x, конечно, не изменилось).
В действительности все еще доступно .Last.value до выпполнения любого другого оператора.
Дальнейшее присваивание:
создаст вектор y с 11 элементами, состоящими из двух копий x и нулем между ними.
2.2. Векторная арифметика
Векторы могут использоваться в арифметических выражениях, и в этом случае операции выполняются поэлементно. Векторы, используемы в одном выражении, не обязательно должны иметь одинаковую длину. Если длины отличаются, то результат выражения – это вектор с длиной самого длинного вектора, который находится в выражении. Короткие векторы в выражении используются повторно столько раз, сколько это необходимо (возможно не целое число раз), до тех пор, пока они не совпадут с длиной самого длинного вектора. В частности константа просто повторяется. Так, учитывая предыдущие присваивания, команда:
создаст новый вектор v длины 11, составленный путем сложения элемент за элементом 2*x повторенного 2.2 раза, y повторяется только раз, и 1 повторяется 11 раз.
Элементарными арифметическими операторами являются +, -, *, / и ^ для возведения в степень. Дополнительно присутствуют все простые арифметические функции. log, exp, sin, cos, tan, sqrt и так далее, все они имеют свое обычное значение. max и min выбирают самые большие и наименьшие элементы вектора соответственно. range является функцией, значение которой – вектор длины два, а именно, c (min (x), max (x)).length (x) является числом элементов в x, sum (x) дает сумму всех элементов x, и prod (x) их произведение.
Двумя статистическими функциями являются mean (x), которая вычисляет среднее выборки, что соответствует sum (x) /length (x), и var (x), которая дает
или дисперсию выборки. Если параметром