У меня есть фрейм данных с 2 текстовыми полями: комментарий и основной пост
в основном это структура
id comment post_text
1 "I think that blabla.." "Why is blabla.."
2 "Well, you should blabla.." "okay, blabla.."
3 ...
Я хочу вычислить сходство между текстом в комментариив первой строке и текст в post_text в первой строке, и сделайте это для всех строк.насколько я знаю, я должен создать отдельные объекты dfm для двух типов текстов
corp1 <- corpus(r , text_field= "comment")
corp2 <- corpus(r , text_field= "post_text")
dfm1 <- dfm(corp1)
dfm2 <- dfm(corp2)
, в конце концов, я хочу получить что-то вроде этого:
id comment post_text similarity
1 "I think that blabla.." "Why is blabla.." *similarity between comment1 and post_text1
2 "Well, you should blabla.." "okay, blabla.." *similarity between comment2 and post_text2
3 ...
IЯ не уверен, как поступить, я нашел это в StackOverflow Попарное расстояние между документами , но они вычисляют кросс-сходство между dfm, в то время как мне нужно сходство по строке,
, так что в основном то, что я думал, былосделать следующее:
dtm <- rbind(dfm(corp1), dfm(corp2))
d2 <- textstat_simil(dtm, method = "cosine", diag = TRUE)
matrixsim<- as.matrix(d2)[docnames(corp1), docnames(corp2)]
diagonale <- diag(matrixsim)
но диагональ - это просто список 1 1 1 1 ..
Есть идеи, как решить эту проблему?заранее благодарю за помощь,
Карло