Я вычисляю косинусное сходство между двумя элементами и написал следующий код:
library('lsa')
df <-replicate(1, rnorm(500))
rownames(df) <- paste0("item", seq_len(nrow(df)))
colnames(df) <- paste0("value", seq_len(ncol(df)))
td = tempfile()
dir.create(td)
write( df[1], file=paste(td, "D1", sep="/"))
write( df[2], file=paste(td, "D2", sep="/"))
myMatrix = textmatrix(td, minWordLength=1)
res <- lsa::cosine(myMatrix[,1], myMatrix[,2])
Как я могу улучшить код с помощью метода lapply или применить метод вместо использования цикла for между строками?
Вместо написания df [1], df [2] и т. Д. Я бы предпочел итерацию в векторизованном виде.Я новичок, поэтому, пожалуйста, помогите мне.
Пожалуйста, предложите путь вперед.Заранее спасибо.