2017-02-17 118 views
0

考慮以下兩個句子。使用字數計算歐氏距離

句子1:快速的棕色狐狸跳過懶惰的狗。

句2:快速黃狗趕不上快速狐狸。

計算使用字計數的歐氏距離。

回答

1

您可以使用包tm找字計數,然後計算的歐氏距離

> library(tm) 
> s1 <- " The quick brown fox jumps over the lazy dog" 
> s2 <- "A quick brown dog outpaces a quick fox" 
> 
> VS <- VectorSource(c(s1,s2)) 
> corp <- Corpus(VS) 
> dtm <- DocumentTermMatrix(corp) 
> d <- dist(t(dtm), method = 'euclidean') 
> d 



     brown  dog  fox jumps  lazy outpaces  over quick 
dog  0.000000                
fox  0.000000 0.000000              
jumps 1.000000 1.000000 1.000000            
lazy  1.000000 1.000000 1.000000 0.000000          
outpaces 1.000000 1.000000 1.000000 1.414214 1.414214       
over  1.000000 1.000000 1.000000 0.000000 0.000000 1.414214     
quick 1.000000 1.000000 1.000000 2.000000 2.000000 1.414214 2.000000   
the  1.414214 1.414214 1.414214 1.000000 1.000000 2.236068 1.000000 2.236068