R - косвенный вызов матрицы с использованием строки - PullRequest
0 голосов
/ 27 февраля 2011

Пример: Существует матрица данных под названием VE Существует вектор строки, где первым элементом является строка VE. Мне нужно косвенно вызвать строку и иметь доступ к данным. Например, если мне нужен 6-й столбец матрицы VE, я хочу сделать:

Вектор [1] [6]

По сути, мне нужно, чтобы R начал читать эти строки, как если бы они были именами матриц, которые уже есть на этой странице. Мне нужно, чтобы этот синтаксис был динамическим, потому что я помещаю его в цикл.

1 Ответ

2 голосов
/ 27 февраля 2011

Я думаю, что вы ищете get():

VE <- matrix(0,10,10)
vec <- c("VE","foo","bar")
get(vec[1])[,6]

Edit:

Для этого требуется глобальный объект VE, хотя для автоматизации, вероятно, лучше сохранить матрицы (я полагаю, их больше?) В списке, тогда вы можете просто индексировать:

matrixlist <- list(VE = matrix(0,10,10))
vec <- c("VE","foo","bar")
matrixlist[[vec[1]]][,6]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...