Как вычислить косинусное подобие в r
Косинусное сходство — это мера сходства между двумя векторами пространства внутреннего продукта.
Для двух векторов A и B косинусное подобие рассчитывается следующим образом:
Косинусное подобие = ΣA я B я / (√ΣA я 2 √ΣB я 2 )
В этом руководстве объясняется, как вычислить сходство косинусов между векторами в R с помощью функции cosine() из библиотеки lsa .
Косинусное сходство двух векторов в R
Следующий код показывает, как вычислить косинусное сходство между двумя векторами в R:
library (lsa) #definevectors a <- c(23, 34, 44, 45, 42, 27, 33, 34) b <- c(17, 18, 22, 26, 26, 29, 31, 30) #calculate Cosine Similarity cosine(a, b) [,1] [1,] 0.965195
Косинусное сходство между двумя векторами оказывается равным 0,965195 .
Косинусное подобие матрицы в R
Следующий код показывает, как вычислить косинусное сходство между матрицей векторов:
library (lsa) #define matrix a <- c(23, 34, 44, 45, 42, 27, 33, 34) b <- c(17, 18, 22, 26, 26, 29, 31, 30) c <- c(34, 35, 35, 36, 51, 29, 30, 31) data <- cbind(a, b, c) #calculate Cosine Similarity cosine(data) ABC a 1.0000000 0.9651950 0.9812406 b 0.9651950 1.0000000 0.9573478 c 0.9812406 0.9573478 1.0000000
Вот как интерпретировать результат:
- Косинусное сходство между векторами a и b составляет 0,9651950 .
- Косинусное сходство между векторами a и c составляет 0,9812406 .
- Косинусное сходство между векторами b и c составляет 0,9573478 .
Комментарии
1. Функция cosine() будет работать с квадратной матрицей любого размера.
2. Функция cosine() будет работать с матрицей, но не с фреймом данных. Однако вы можете легко преобразовать фрейм данных в матрицу в R, используя функцию as.matrix() .
3. Обратитесь кэтой странице Википедии , чтобы узнать больше о сходстве косинусов.