Обучение Р | Часть 2 | Переменные и функции


фото Маркус Списке на Скрыть


Переменные

  • x <- (1:10)
  • x = (1:10)
  • (1:10) -> x
  • assign(“x”, 1:10)

Все вышеперечисленные способы присваивают массив из 1 к 10 к переменной x.

Это операторы присваивания =,->, <-.

Другой распространенной функцией для создания вектора или списка является c(…) функция.

  • c(1,10:13) Результатом для этого будет массив 1 10 11 12 13. Это означает объединение объектов/переменных, разделенных запятыми.
  • c(1:5, 10.5, “next”) Результатом для этого будет массив “1” “2” “3” “4” “5” “10.5” “next”.
  • y = c(1,2,3) & x = c(y, 1, y) Это пример использования переменных для создания новых переменных. Здесь значение y было бы 1 2 3 в то время как x было бы 1 2 3 1 1 2 3.

Для дальнейшего использования c(…) ссылка на функцию

с функция | R-документация
_Это общая функция, которая объединяет свои аргументы. Метод по умолчанию объединяет свои аргументы для формирования вектора…_www.rdocumentation.org


Встроенный Функции

  • c(…)_— _Как объяснил выше.
  • ls() или же objects()_ — _Показывает список существующих объектов, которые сделаны.
  • rm(“x”)_ — _Удаляет объект. Параметр — имя объекта.
  • sum(“x”)_ —Дает сумму вектора x.
    Например, если_ x является 1 2 3 1 1 2 3тогда sum(“x”) было бы13.
  • sqrt(“x”)_ — _Выдает квадратный корень из вектора x.
    Ф или пример, если x является 1 4 9 тогда sqrt(“x”) будет другим вектором со значениями 1 2 3.
  • seq(…)_ — _Эта функция используется для генерации последовательности чисел. Он принимает разные параметры, такие как from (Начальное значение последовательности), to (Конечное значение последовательности), by (Число, на которое должна быть увеличена последовательность), length.out ( Длина последовательности) а также along.with _(_Это список векторов длиной n, и он используется только для получения длины этого переданного списка. Странно😷)
    Пример:-seq(from=1, to=4, by=0.5)— Дает последовательность из 1 к 4 с 0.5 приращение.
    Еще seq(…) здесь.
  • paste(…) Эта функция используется для создания строк с использованием конкатенации векторов с использованием двух параметров, а именно sep & collapse. sep обеспечивает разделитель между конкатенированными векторами, в то время как collapse предоставляет разделитель, который объединяет значения в объединенном векторе. (Начало? 🤒) Давайте узнаем это на нескольких примерах.
    paste(“xyz”, 1:3)“xyz 1” “xyz 2” “xyz 3” (это без sep & collapse)
    paste(“xyz”, c(1,2,”variable”,3), sep=”,”)“xyz,1” “xyz,2” “xyz,variable” “xyz,3” (это только с sep )
    paste(c(1:5), c(5:10), sep = “: “, collapse = “; “)“1: 5; 2: 6; 3: 7; 4: 8; 5: 9; 1: 10”(это с sep а также collapse; Обратите внимание, что это формирует одну строку 😄.)
    Еще paste(…) здесь.
  • rep(x, …)_ —_ Как следует из названия, эта функция используется для повторения существующего вектора. Параметры, которые может принимать эта функция: times (Сколько раз должен повторяться вектор), length.out (Желаемая длина выходного вектора) & each ( Сколько раз должен повторяться каждый элемент вектора)
    rep(c(1,2,3), 3) or rep(c(1:3), times=3)1 2 3 1 2 3 1 2 3
    rep(c(1:3), each=3)1 1 1 2 2 2 3 3 3Еще rep(x, …) здесь.

Пользовательские функции

В приведенном ниже примере показан простой способ написать однострочную функцию, которая возвращает квадрат переменной. Имя функции здесь fn.

fn <- function(a) {a*a}

fn(10)

Пример блока кода в функции.

fn -> function(a, b) { c = a * b c = c + b print(x)}

fn(10, 20)

Функции с loops,if-else.

primeNumber = function(n) {

if(n>=2) {

s = seq(2,n) p = c() #Initialising the vector which stores prime numbers

for(i in seq(2,n)) { if(any(s == i) { p = c(p, i) s = c(s[(s%%i) != 0], i) } } return(p) } else { stop("Input greater than 2") }}

Приведенный выше пример возвращает вектор со всемипростые числа вплоть до n передается в функцию. stop функция здесь останавливает выполнение и выдает ошибку.

Начальный p = c() используется для инициализации вектора, в котором хранится простое число. А также s = seq (2,n) используется для инициализации вектора до nкоторый затем зацикливается.

Цикл проверяет, присутствует ли значение в векторе s определено ранее с помощью Любые функция. И если он совпадает, он добавляет это значение к основному вектору и обновляет вектор для проверки, т.е. s со всеми числами, которые не делятся с текущим i

В конце цикла, p вектор содержит все простые числа.


использованная литература


Спасибо за чтение. В следующей статье я расскажу о сюжетные функции . Кроме того, некоторые представления о пакеты & наборы данных.

Также, если вы не читали часть 1. Вы можете прочитать ее здесь.

Оставьте свои вопросы ниже. Предложения приветствуются. 🙌

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *