Як використовувати функцію get() у r для отримання іменованих об’єктів


Ви можете використовувати функцію get() в R для отримання іменованих об’єктів.

Ось три найпоширеніші функції get() у R:

1. get() – отримати об’єкт

 get(" my_object ")

2. get0() – Отримує об’єкт, використовуючи спеціальне повідомлення про помилку, якщо його не знайдено

 get0(" my_object ", ifnotfound=" does not exist ")

3. mget() – отримання кількох об’єктів

 mget(c(" my_object1 ", " my_object2 ", " my_object3 "))

Наступні приклади показують, як використовувати кожну функцію на практиці.

Приклад 1. Використовуйте get(), щоб отримати об’єкт

Наступний код показує, як використовувати функцію get() для отримання об’єкта імені:

 #define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#get vector of values
get(" data1 ")

[1] 4 5 5 6 13 18 19 15 12

Якщо названий об’єкт не існує, ця функція повертає помилку:

 #define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#attempt to get vector of values
get(" data0 ")

Error in get("data0"): object 'data0' not found

Приклад 2. Використовуйте get0() для отримання об’єкта за допомогою спеціального повідомлення про помилку

Ми також можемо використовувати функцію get0() для отримання іменованого об’єкта в R і використання спеціального повідомлення про помилку, якщо об’єкт не знайдено:

 #define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#attempt to get vector of values
get0(" data0 ", ifnotfound=" does not exist ")

[1] “does not exist”

Оскільки об’єкт із назвою «data0» не існує, функція get0() повертає створене нами спеціальне повідомлення про помилку.

Приклад 3: Використовуйте mget() для отримання кількох об’єктів

Ми можемо використовувати функцію mget() для отримання кількох іменованих об’єктів у R:

 #define three vectors
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)
data2 <- c("A", "B", "C", "D")
data3 <- c(10, 20, 25, 30, 35)

#get all three vectors
mget(c(" data1 ", " data2 ", " data3 "))

$data1
[1] 4 5 5 6 13 18 19 15 12

$data2
[1] “A” “B” “C” “D”

$data3
[1] 10 20 25 30 35

Зауважте, що якби ми просто спробували використати функцію get() , буде повернено лише перший названий об’єкт:

 #define three vectors
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)
data2 <- c("A", "B", "C", "D")
data3 <- c(10, 20, 25, 30, 35)

#attempt to get all three vectors
mget(c(" data1 ", " data2 ", " data3 "))

[1] 4 5 5 6 13 18 19 15 12

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

У наступних посібниках пояснюється, як використовувати інші поширені функції в R:

Як використовувати функцію c() у R
Як використовувати функцію sprintf() у R
Як використовувати функцію replace() у R

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

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