Как использовать функцию rep() в R для репликации элементов


Вы можете использовать функцию rep() в R для репликации элементов векторов или списков определенное количество раз.

Эта функция использует следующий базовый синтаксис:

rep(x, times = 1, length.out = NA, каждый = 1)

куда:

  • x : объект для репликации
  • times : количество раз для репликации объекта
  • length.out : повторяется x столько раз, сколько необходимо для создания вектора этой длины.
  • каждый : количество раз для репликации отдельных элементов в объекте.

В следующих примерах показано, как использовать эту функцию на практике.

Примечание.Функция rep() отличается от функции replicate() .

Пример 1. Повторение вектора несколько раз

В следующем коде показано, как использовать функцию rep() для трехкратной репликации вектора:

#define vector
x <- c(1, 10, 50)

#replicate the vector three times
rep(x, times= 3 )

[1] 1 10 50 1 10 50 1 10 50

Весь вектор был воспроизведен трижды.

Пример 2. Репликация каждого значения в векторе одинаковое количество раз

В следующем коде показано, как использовать функцию rep() для пятикратной репликации каждого значения в векторе:

#define vector
x <- c(1, 10, 50)

#replicate each value in vector five times
rep(x, each= 5 )

[1] 1 1 1 1 1 10 10 10 10 10 50 50 50 50 50

Каждое отдельное значение в векторе повторялось пять раз.

Пример 3. Повторение каждого значения в векторе разное количество раз

В следующем коде показано, как использовать функцию rep() для репликации каждого значения в векторе определенное количество раз :

#define vector
x <- c(1, 10, 50)

#replicate each value in vector a specific number of times
rep(x, times=c(2, 5, 3))

[1] 1 1 10 10 10 10 10 50 50 50

Из вывода мы видим:

  • Значение 1 повторялось 2 раза.
  • Значение 10 повторялось 5 раз.
  • Значение 50 повторялось 3 раза.

Пример 4. Репликация каждого значения в векторе одинаковое количество раз, несколько раз

В следующем коде показано, как использовать функцию rep() для четырехкратной репликации каждого значения в векторе и двухкратного повторения этого процесса:

#define vector
x <- c('A', 'B')

#replicate each value in vector four times and do this process two times
rep(x, each= 4 , times= 2 )

[1] "A" "A" "A" "A" "B" "B" "B" "B" "A" "A" "A" "A" "B" "B" "B" "B"

Каждое значение в векторе повторялось четыре раза, и мы повторили этот процесс два раза.

Дополнительные ресурсы

В следующих руководствах объясняется, как использовать другие распространенные функции в R:

Как использовать функцию replace() в R
Как использовать функцию split() в R
Как использовать функцию View() в R