Как присоединиться к переменным для доступа к списку в R? - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть 2 переменные и список.Я хочу использовать две переменные для доступа к файлам списка, но я не знаю, как с этим справиться.

Представьте себе, что у меня есть это:

data <- list()
data$one <- "first"

И что у меня есть 2 переменные, var1 и var2:

var1 <- "data"
var2 <- "one"

Как я могу использовать эти переменные для доступак данным $ один?

Я пытался с:

get(paste0(var1,"$",var2))

Но я получаю ошибку:

Error in get(paste0(var1,"$",var2)): object data$one not found 

1 Ответ

0 голосов
/ 30 ноября 2018

Как заметил @markus,

get(var1)[[var2]]
# [1] "first"

работает как нужно.

Я думаю, что не менее важно, почему ваш подход не сработал.Хотя

paste0(var1,"$",var2)
# [1] "data$one"

правильно описывает то, что вас интересует, data$one само по себе не является переменной, это результат вызова функции, который также можно записать в виде:

`$`(data, one)
# [1] "first"

Теперь имеет смысл, что что-то вроде

get("`$`(data, one)")
# Error in get("`$`(data, one)") : object '`$`(data, one)' not found

не должно работать, точно так же как

get("2 + 2")
# Error in get("2 + 2") : object '2 + 2' not found
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...