Вопрос по r – как получить значение, когда имя переменной передается в виде строки

15

я пишу этот код в R

<code>paste("a","b","c") 
</code>

который возвращает значение"abc"

переменнаяabc имеет значение 5 (скажем), как я могу получить"abc" чтобы дать мне значение 5, есть ли какая-то функция, какas.value(paste("a","b","c")) который даст мне ответ 5? Мои сомнения кажутся простыми, и это именно то, чего я хочу. Поэтому, пожалуйста, помогите мне. заранее спасибо

FAQ 7.21 Joshua Ulrich

Ваш Ответ

3   ответа
5

безусловно, один из наиболее часто задаваемых вопросов о языке R, наряду с его злым братом-близнецом.x='myfunc' в исполняемую функцию? & quot; В итоге,get, parse, eval , expression все хорошие вещи, чтобы узнать о. Наиболее полезным (ИМХО) и наименее известным являетсяdo.call , который берет на себя большую часть работы по преобразованию строки в объект.

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
29

paste("a","b","c") дает"a b c" не"abc"

Во всяком случае, я думаю, что вы ищетеget():

> abc <- 5
> get("abc")
[1] 5
Error: User Rate Limit Exceeded
6

quot; abc & quot; с помощьюpaste():

assign(paste("a", "b", "c", sep = ""), 5)
Error: User Rate Limit Exceededpaste0(...)Error: User Rate Limit Exceededpaste(..., sep="")

Похожие вопросы