Як розбити вектор на частини в r


Ви можете використовувати наступний базовий синтаксис, щоб розділити вектор на частини в R:

 chunks <- split(my_vector, cut(seq_along(my_vector), 4 , labels= FALSE ))

У цьому конкретному прикладі вектор під назвою my_vector ділиться на 4 частини однакового розміру.

Щоб розділити вектор на іншу кількість частин, просто замініть 4 на інше значення.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: розбиття вектора на частини в R

Припустимо, ми маємо наступний вектор у R, який загалом містить 12 елементів:

 #createvector
my_vector <- c(2, 2, 4, 7, 6, 8, 9, 8, 8, 12, 5, 4)

#view length of vector
length(my_vector)

[1] 12

Ми можемо використати такий синтаксис, щоб розділити вектор на чотири частини:

 #split vector into four chunks
chunks <- split(my_vector, cut(seq_along(my_vector), 4 , labels= FALSE ))

#view chunks
chunks

$`1`
[1] 2 2 4

$`2`
[1] 7 6 8

$`3`
[1] 9 8 8

$`4`
[1] 12 5 4

З результату ми бачимо:

  • Перший фрагмент містить значення 2, 2, 4.
  • Друга частина містить значення 7, 6, 8.
  • Третя частина містить значення 9, 8, 8.
  • Четверта частина містить значення 12, 5, 4.

Зауважте, що ми також можемо використовувати квадратні дужки для переходу до певного блоку:

 #access second chunk only
chunks[2]

$`2`
[1] 7 6 8

Якщо ми змінимо значення у функції split() , ми зможемо розділити вектор на іншу кількість частин.

Наприклад, ми могли б розділити вектор на шість частин:

 #split vector into six chunks
chunks <- split(my_vector, cut(seq_along(my_vector), 6 , labels= FALSE ))

#view chunks
chunks

$`1`
[1] 2 2

$`2`
[1] 4 7

$`3`
[1] 6 8

$`4`
[1] 9

$`5`
[1] 8 8

$`6`
[1] 12 5

Зверніть увагу, що зараз є шість пісень, і кожна пісня містить два елементи.

Примітка . Якщо ваш вектор не містить парної кількості елементів, цей метод завжди розділятиме вектор на групи якомога однакового розміру.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як відфільтрувати вектор у R
Як видалити значення NA з вектора в R
Як видалити певні елементи з вектора в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *