Я новичок в R и использую widyr для интеллектуального анализа текста. Я успешно использовал методы, найденные здесь, чтобы получить список одновременно встречающихся слов в каждом разделе текста и их фи-коэффициент.
Код следующим образом:
word_cors <- review_words %>%
group_by(word) %>%
pairwise_cor(word, title, sort = TRUE) %>%
filter(correlation > .15)
Я понимаю, что я также могу сгенерировать фрейм данных с одновременно встречающимися словами и количеством раз, когда они появляются, используя такой код:
word_pairs <- review_words %>%
pairwise_count(word, title, sort = TRUE)
Что мне нужно, так это таблица, в которой есть и фи-коэффициент и количество вхождений для каждой пары слов. Я копался в pairwise_cor и pairwise_count, но до сих пор не могу понять, как их объединить. Если я правильно понимаю, соединения учитывают только один столбец для сопоставления, поэтому я не мог надежно использовать обычное соединение, поскольку может быть несколько пар, которые имеют одно и то же слово в столбце item1.
Возможно ли это с помощью видира? Если нет, есть ли другой пакет, который позволит мне это сделать?
Вот полный код:
#Load packages
pacman::p_load(XML, dplyr, stringr, rvest, httr, xml2, tidytext, tidyverse, widyr)
#Load source material
prod_reviews_df <- read_csv("SOURCE SPREADSHEET.csv")
#Split into one word per row
review_words <- prod_reviews_df %>%
unnest_tokens(word, comments, token = "words", format = "text", drop = FALSE) %>%
anti_join(stop_words, by = c("word" = "word"))
#Find phi coefficient
word_cors <- review_words %>%
group_by(word) %>%
pairwise_cor(word, title, sort = TRUE) %>%
filter(correlation > .15)
#Write data to CSV
write.csv(word_cors, "WORD CORRELATIONS.csv")
Я хочу добавить параметр pairwise_count, но он мне нужен вместе с коэффициентом фи.
Благодарю вас!