Могу ли я создать график корреляции, используя символьную переменную?

#r #correlation #text-mining #r-corrplot

#r #корреляция #интеллектуальный анализ текста #r-corrplot

Вопрос:

Мой набор данных — обзоры ресторанов Yelp, и я хотел бы посмотреть, есть ли способ создать график корреляции между словами и звездными рейтингами с помощью пакета corrplot.

Я создал Z ниже, содержащий звездный рейтинг, количество слов (n) и word. Я не уверен, куда идти дальше, потому что я знаю, что не могу напрямую использовать переменную word в графике корреляции, поскольку это символ, а не фактор. Если бы я просто делал корреляцию между n и звездами, это на самом деле не дает мне никакой полезной информации. Есть какие-либо мысли о том, как я мог бы найти корреляцию между словом и звездами?

 Z <- ws %>% select(n, stars, word)
Z

# A tibble: 39,322 x 3
# Groups:   stars [5]
       n stars word     
   <int> <int> <chr>    
 1  7841     5 food     
 2  6046     4 food     
 3  4027     5 service  
 4  3741     3 food     
 5  3133     1 food     
 6  3046     4 service  
 7  2837     5 delicious
 8  2832     2 food     
 9  2803     5 love     
10  2785     5 time     
# … with 39,312 more rows
  

Комментарии:

1. Вы можете преобразовать в factor with factor или `as.factor

2. Я не думаю, что корреляция может быть приемлемой для этих данных, вы приводите какое-то слово к числу, может быть, тау-кендалл мог бы быть лучше, но опять же вы предполагаете что-то сильное. Могу ли я посоветовать что-то вроде этого, глядя, что вы находитесь в tidyverse: Z %>% group_by(stars, word) %>% summarise(summed = sum(n))%>% ggplot(aes (x = stars, y = word, fill = summed)) geom_tile() ?

3. @akrun У меня была такая мысль, но у меня это не работает. Если я введу как. фактор (слово) Я получаю errorrror «в unique. по умолчанию (x, nmax = nmax): unique() применяется только к векторам» Я также попробовал Z <- ws %>% select(n, stars, as.factor(word)) и получил ошибку «Ошибка: unique() применяется только к векторам»

4. Z <- ws %>% select(n, word) %>% mutate(word = as.factor(word)) иметь в качестве фактора.