Мне нужно создать матрицу подобия, а код ниже - то, что у меня есть. Однако результаты не то, что мне нужно. Код возвращает матрицу с 16 строками, которая является результатом 8 уникальных терминов в матрице документов и двух уникальных терминов в workTitle.Вычислить матрицу подобия с помощью пакета tm
Мне нужна матрица, которая имеет только 4 строки (по одному за заголовок) и каждую строку, чтобы представить сумму расстояния редактирования между каждым словом в workTitle и каждым из терминов в заголовках.
require(tm)
workTitle <- c("biomechanical engineer")
titles <- c("train machinist", "operations supervisor", "pharmacy tech", "mechanical engineer")
# create Corpus and a document-term matrix from the titles
titleCorpus <- Corpus(VectorSource(titles))
titleDtm <- DocumentTermMatrix(titleCorpus)
# print out the document-term matrix
inspect(titleDtm)
# calculate edit distance between every word from the test_var and the column names in the document-term matrix
d <- apply(titleDtm, 1, function(x) {
terms <- unlist(strsplit(as.character(workTitle), " "))
adist(colnames(titleDtm), terms)
})
Это выход из кода выше:
Docs
1 2 3 4
[1,] 11 11 11 11
[2,] 8 8 8 8
[3,] 3 3 3 3
[4,] 9 9 9 9
[5,] 11 11 11 11
[6,] 11 11 11 11
[7,] 10 10 10 10
[8,] 11 11 11 11
[9,] 0 0 0 0
[10,] 7 7 7 7
[11,] 8 8 8 8
[12,] 9 9 9 9
[13,] 8 8 8 8
[14,] 8 8 8 8
[15,] 7 7 7 7
[16,] 6 6 6 6