Как преобразовать столбец фрейма данных в вектор в R


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

#use $ operator
new_vector <- df$column_name

#use indexing
new_vector <- df[['column_name']]

#use 'pull' from *dplyr* package
new_vector <- dplyr::pull(df, column_name)

Каждый из этих методов возвращает идентичные результаты.

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

#create data frame
df <- data.frame(a=c(1, 2, 5, 6, 12, 14),
 b=c(8, 8, 9, 14, 22, 19),
 c=c(3, 3, 2, 1, 2, 10))

#display data frame
df

 a b c
1 1 8 3
2 2 8 3
3 5 9 2
4 6 14 1
5 12 22 2
6 14 19 10

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

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

#convert column 'a' to vector
new_vector <- df$a

#view vector
new_vector

[1] 1 2 5 6 12 14

#view class of vector
class(new_vector)

[1] "numeric"

Пример 2. Использование индексации

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

#convert column 'a' to vector
new_vector <- df[['a']]

#view vector
new_vector

[1] 1 2 5 6 12 14

#view class of vector
class(new_vector)

[1] "numeric"

Пример 3: Использование «вытягивания» из dplyr

В следующем коде показано, как использовать функцию pull из пакета dplyr для преобразования столбца фрейма данных в вектор:

library(dplyr)

#convert column 'a' to vector
new_vector <- pull(df, a)

#view vector
new_vector

[1] 1 2 5 6 12 14

#view class of vector
class(new_vector)

[1] "numeric"

Обратите внимание, что все три метода возвращают одинаковые результаты.

Примечание.Если вы работаете с чрезвычайно большим набором данных, функция «вытягивания» из пакета dplyr будет выполняться быстрее всего из трех функций, описанных в этом руководстве.

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

Как преобразовать матрицу в вектор в R
Как преобразовать список во фрейм данных в R
Как преобразовать символ в число в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.