我需要計算2個向量中每個單詞之間的Jaccard相似度。每個單詞由每個單詞組成。並提取最相似的單詞。計算2個向量中每個單詞之間的Jaccard相似度
這裏是我不好不好慢代碼:
txt1 <- c('The quick brown fox jumps over the lazy dog')
txt2 <- c('Te quick foks jump ovar lazzy dogg')
words <- strsplit(as.character(txt1), " ")
words.p <- strsplit(as.character(txt2), " ")
r <- length(words[[1]])
c <- length(words.p[[1]])
m <- matrix(nrow=r, ncol=c)
for (i in 1:r){
for (j in 1:c){
m[i,j] = stringdist(tolower(words.p[[1]][j]), tolower(words[[1]][i]), method='jaccard', q=2)
}
}
ind <- which(m == min(m))-nrow(m)
words[[1]][ind]
請幫我改善和美化大數據幀此代碼。
如何大是「大」,以及多長時間需要使用你的代碼? – lukeA
試試這個'sapply(words.p,function(x)mapply(stringdist,words,x,method ='jaccard'))''。這將直接爲您提供一個您可以輕鬆檢查的矩陣。 –