R: От индексной матрицы к матрице с именами - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть матрица индексов, ссылающаяся на вектор с именами.(в результате поиска ближайшего соседа) В матрице 0 (соседний не найден в радиусе). Я хочу заменить индекс фактическими именами.Какой простой способ сделать это?

Тамас

1 Ответ

0 голосов
/ 04 декабря 2018

может быть, это поможет вам:

данные:

set.seed(1337)
m <- matrix(sample(c(0,0,0,1:5), 25, TRUE), 5, 5)

выглядит так:

#     [,1] [,2] [,3] [,4] [,5]
#[1,]    2    0    5    0    4
#[2,]    2    5    5    5    3
#[3,]    0    0    4    5    0
#[4,]    1    0    0    0    0
#[5,]    0    0    5    0    2

вектор имен:

namesVec <- c(0,paste0("name_",1:5))

код:

m[] <- namesVec[c(m) + 1]

результат выглядит так:

#     [,1]     [,2]     [,3]     [,4]     [,5]    
#[1,] "name_2" "0"      "name_5" "0"      "name_4"
#[2,] "name_2" "name_5" "name_5" "name_5" "name_3"
#[3,] "0"      "0"      "name_4" "name_5" "0"     
#[4,] "name_1" "0"      "0"      "0"      "0"     
#[5,] "0"      "0"      "name_5" "0"      "name_2"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...