2015-06-11 2 views
0

Ну, я надеюсь объяснить это просто:Заменить содержимое вектора со значениями матрицы

У меня есть матрица:

matrix(c("a","b","c",1,2,3), nrow=3, ncol=2) 

с выходом:

 [,1] [,2] 
[1,] "a" "1" 
[2,] "b" "2" 
[3,] "c" "3" 

У меня есть вектор, например:

vector1 <- c("b", "a", "b", "c") 

Я хочу, чтобы другой вектор выбирал значения, связанные с матрицей, которые появляются на векторе. Я имею в виду, что конечный вектор должен быть:

[1] 2 1 2 3 

Я не могу понять это сейчас.

Спасибо

ответ

1

Попробуйте match где 'm1' является matrix

match(vector1, m1[,1]) 
#[1] 2 1 2 3 

Или

unname(setNames(as.numeric(m1[,2]), m1[,1])[vector1]) 
#[1] 2 1 2 3 
Смежные вопросы