rm(list = ls())
date()
## [1] "Sun Oct 6 22:42:00 2019"
sessionInfo()
## R version 3.6.1 (2019-07-05)
## Platform: x86_64-apple-darwin15.6.0 (64-bit)
## Running under: macOS Mojave 10.14.6
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## loaded via a namespace (and not attached):
## [1] compiler_3.6.1 magrittr_1.5 tools_3.6.1 htmltools_0.3.6
## [5] yaml_2.2.0 Rcpp_1.0.2 stringi_1.4.3 rmarkdown_1.16
## [9] knitr_1.25 stringr_1.4.0 xfun_0.10 digest_0.6.21
## [13] evaluate_0.14
Библиотеки
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(quanteda)
## Package version: 1.5.1
## Parallel computing: 2 of 4 threads used.
## See https://quanteda.io for tutorials and examples.
##
## Attaching package: 'quanteda'
## The following object is masked from 'package:utils':
##
## View
library(ggplot2)
#library(stringr)
Загрузка корпусов
load(file = "ToleranceS.RData")
load(file = "NotLikeS.RData")
ndoc(ToleranceS)
## [1] 51
Токенизация
TokensTolerance <- tokens(ToleranceS, what = "fastestword")
TokensNotLike <- tokens(NotLikeS, what = "fastestword")
Все слова, использованные более чем один раз (существительные, глаголы и прилагательные)
TokensTolerance %>%
tokens_subset(group == "actor") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = "человек_s") %>%
dfm() %>%
textplot_wordcloud(max_words = 1000, rotation = 0, min_count = 2)
TokensTolerance %>%
tokens_subset(group == "music") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = "человек_s") %>%
dfm() %>%
textplot_wordcloud(max_words = 1000, rotation = 0, min_count = 2)
TokensTolerance %>%
tokens_subset(group == "dance") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = "человек_s") %>%
dfm() %>%
textplot_wordcloud(max_words = 1000, rotation = 0, min_count = 2)
обозначения в таблице: frequency - количество слов rank - ранг слова по частоте использования docfreq - количество текстов, где слово появилось
Выведены все слова, которые использовались в двух и более текстах внутри группы.
TokensTolerance %>%
tokens_subset(group == "actor") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 1) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 человек_s 18 1 16
## 2 уважение_s 8 2 8
## 3 отношение_s 6 3 5
## 4 принятие_s 4 4 4
## 5 жизнь_s 4 4 4
## 6 толерантность_s 4 4 4
## 7 терпимость_s 4 4 4
## 8 принимать_v 3 8 3
## 9 равный_a 3 8 3
## 10 быть_v 3 8 3
## 11 мир_s 3 8 3
## 12 раса_s 2 12 2
## 13 образ_s 2 12 2
## 14 поведение_s 2 12 2
## 15 любовь_s 2 12 2
## 16 уважительный_a 2 12 2
## 17 нравиться_v 2 12 2
## 18 правильный_a 2 12 2
## 19 очередь_s 2 12 2
## 20 выбор_s 2 12 2
## 21 уважать_v 2 12 2
## 22 человеческий_a 2 12 2
## 23 право_s 2 12 2
## 24 мочь_v 2 12 2
## 25 ситуация_s 2 12 2
## 26 умение_s 2 12 2
TokensTolerance %>%
tokens_subset(group == "music") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 1) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 человек_s 18 1 10
## 2 отношение_s 8 2 7
## 3 уважение_s 5 3 5
## 4 относиться_v 4 4 4
## 5 мнение_s 4 4 3
## 6 принимать_v 3 6 3
## 7 понимание_s 3 6 3
## 8 терпимость_s 3 6 3
## 9 предпочтение_s 3 6 3
## 10 быть_v 3 6 2
## 11 чужой_a 3 6 2
## 12 вкус_s 2 12 2
## 13 т_s 2 12 2
## 14 особенность_s 2 12 2
## 15 недостаток_s 2 12 2
TokensTolerance %>%
tokens_subset(group == "dance") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 1) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 человек_s 28 1 12
## 2 отношение_s 7 2 6
## 3 терпимость_s 6 3 6
## 4 качество_s 5 4 4
## 5 мнение_s 4 6 3
## 6 жизнь_s 3 7 3
## 7 поведение_s 3 7 3
## 8 уважение_s 3 7 3
## 9 уважительный_a 3 7 3
## 10 уважать_v 3 7 3
## 11 толерантный_a 3 7 3
## 12 умение_s 5 4 2
## 13 взгляд_s 3 7 2
## 14 быть_v 3 7 2
## 15 понимать_v 3 7 2
## 16 принятие_s 2 17 2
## 17 образ_s 2 17 2
## 18 толерантность_s 2 17 2
## 19 внешний_a 2 17 2
## 20 проблема_s 2 17 2
## 21 точка_s 2 17 2
## 22 зрение_s 2 17 2
## 23 личность_s 2 17 2
## 24 уметь_v 2 17 2
## 25 положительный_a 2 17 2
## 26 окружающие_s 2 17 2
## 27 национальный_a 2 17 2
## 28 воспитание_s 2 17 2
## 29 относиться_v 2 17 2
50 самых частых слов (без слов быть_v, человек_s)
TokensNotLike %>%
tokens_subset(group == "actor") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = c("быть_v", "человек_s")) %>%
dfm() %>%
textplot_wordcloud(max_words = 50, rotation = 0, min_count = 2)
TokensNotLike %>%
tokens_subset(group == "music") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = c("быть_v", "человек_s")) %>%
dfm() %>%
textplot_wordcloud(max_words = 50, rotation = 0, min_count = 2)
TokensNotLike %>%
tokens_subset(group == "dance") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
tokens_remove(pattern = c("быть_v", "человек_s")) %>%
dfm() %>%
textplot_wordcloud(max_words = 50, rotation = 0, min_count = 2, max_size = 3)
обозначения в таблице: frequency - количество слов rank - ранг слова по частоте использования docfreq - количество текстов, где слово появилось
Выведены все слова, которые использовались более чем в двух текстах внутри группы.
TokensNotLike %>%
tokens_subset(group == "actor") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 2) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 быть_v 72 1 19
## 2 человек_s 41 2 14
## 3 мир_s 27 3 12
## 4 мочь_v 21 4 11
## 5 жизнь_s 14 5 10
## 6 жить_v 9 15 9
## 7 делать_v 10 11 8
## 8 слово_s 13 6 7
## 9 знать_v 12 8 7
## 10 понимать_v 12 8 7
## 11 становиться_v 10 11 7
## 12 казаться_v 10 11 7
## 13 думать_v 9 15 7
## 14 хотеть_v 8 18 7
## 15 говорить_v 7 22 7
## 16 большой_a 9 15 6
## 17 год_s 8 18 6
## 18 считать_v 8 18 6
## 19 сказать_v 7 22 6
## 20 раз_s 6 27 5
## 21 помогать_v 6 27 5
## 22 друг_s 12 8 4
## 23 девочка_s 7 22 4
## 24 маленький_a 7 22 4
## 25 ребенок_s 6 27 4
## 26 приходиться_v 5 33 4
## 27 день_s 5 33 4
## 28 ходить_v 5 33 4
## 29 давать_v 5 33 4
## 30 момент_s 4 45 4
## 31 учиться_v 4 45 4
## 32 видеть_v 4 45 4
## 33 путь_s 4 45 4
## 34 взгляд_s 4 45 4
## 35 мальчик_s 10 11 3
## 36 школа_s 8 18 3
## 37 учитель_s 6 27 3
## 38 хороший_a 5 33 3
## 39 девушка_s 5 33 3
## 40 фраза_s 5 33 3
## 41 сделать_v 5 33 3
## 42 смеяться_v 5 33 3
## 43 время_s 5 33 3
## 44 желание_s 4 45 3
## 45 называть_v 4 45 3
## 46 готовый_a 4 45 3
## 47 узнавать_v 4 45 3
## 48 случаться_v 4 45 3
## 49 находить_v 4 45 3
## 50 замечать_v 4 45 3
## 51 особенный_a 4 45 3
## 52 странный_a 4 45 3
## 53 принимать_v 4 45 3
## 54 красивый_a 4 45 3
## 55 особенность_s 4 45 3
## 56 поступок_s 4 45 3
## 57 смотреть_v 4 45 3
## 58 конец_s 4 45 3
## 59 играть_v 4 45 3
## 60 недостаток_s 4 45 3
## 61 внимание_s 4 45 3
## 62 ум_s 3 75 3
## 63 вырастать_v 3 75 3
## 64 ждать_v 3 75 3
## 65 сладкий_a 3 75 3
## 66 желать_v 3 75 3
## 67 голова_s 3 75 3
## 68 часть_s 3 75 3
## 69 семья_s 3 75 3
## 70 подходить_v 3 75 3
## 71 решать_v 3 75 3
## 72 иметь_v 3 75 3
## 73 парень_s 3 75 3
## 74 главный_a 3 75 3
## 75 ответ_s 3 75 3
## 76 проблема_s 3 75 3
## 77 стараться_v 3 75 3
## 78 готовить_v 3 75 3
## 79 получать_v 3 75 3
## 80 бог_s 3 75 3
## 81 увидеть_v 3 75 3
## 82 любить_v 3 75 3
TokensNotLike %>%
tokens_subset(group == "music") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 2) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 быть_v 65 1 14
## 2 понимать_v 11 8 9
## 3 человек_s 18 2 8
## 4 знать_v 15 3 8
## 5 мочь_v 12 7 8
## 6 любить_v 13 5 7
## 7 жить_v 9 12 7
## 8 школа_s 14 4 6
## 9 год_s 13 5 6
## 10 мир_s 7 14 6
## 11 считать_v 6 18 6
## 12 ребенок_s 8 13 5
## 13 становиться_v 7 14 5
## 14 хотеть_v 7 14 5
## 15 день_s 6 18 5
## 16 казаться_v 5 22 5
## 17 иметь_v 5 22 5
## 18 девочка_s 11 8 4
## 19 жизнь_s 10 10 4
## 20 друг_s 5 22 4
## 21 говорить_v 5 22 4
## 22 принимать_v 5 22 4
## 23 сидеть_v 5 22 4
## 24 время_s 5 22 4
## 25 учиться_v 4 31 4
## 26 видеть_v 4 31 4
## 27 детство_s 10 10 3
## 28 обычный_a 6 18 3
## 29 музыка_s 6 18 3
## 30 родитель_s 5 22 3
## 31 раз_s 4 31 3
## 32 маленький_a 4 31 3
## 33 хороший_a 4 31 3
## 34 слышать_v 4 31 3
## 35 смочь_v 4 31 3
## 36 мама_s 4 31 3
## 37 любимый_a 4 31 3
## 38 проблема_s 4 31 3
## 39 должный_a 4 31 3
## 40 интересный_a 4 31 3
## 41 вспоминать_v 3 52 3
## 42 находить_v 3 52 3
## 43 странный_a 3 52 3
## 44 смотреть_v 3 52 3
## 45 играть_v 3 52 3
## 46 любовь_s 3 52 3
## 47 будущее_s 3 52 3
TokensNotLike %>%
tokens_subset(group == "dance") %>%
tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
dfm() %>%
textstat_frequency() %>%
filter(docfreq > 2) %>%
arrange(desc(docfreq)) %>%
select(-group)
## feature frequency rank docfreq
## 1 быть_v 69 1 14
## 2 человек_s 40 2 10
## 3 сказать_v 12 3 7
## 4 понимать_v 12 3 7
## 5 говорить_v 10 5 7
## 6 жизнь_s 9 9 7
## 7 разный_a 8 14 7
## 8 считать_v 10 5 6
## 9 хотеть_v 8 14 6
## 10 становиться_v 6 24 6
## 11 идти_v 6 24 6
## 12 бояться_v 10 5 5
## 13 казаться_v 9 9 5
## 14 делать_v 9 9 5
## 15 мочь_v 8 14 5
## 16 время_s 8 14 5
## 17 жить_v 7 19 5
## 18 думать_v 7 19 5
## 19 являться_v 6 24 5
## 20 дело_s 5 31 5
## 21 друг_s 10 5 4
## 22 особенный_a 9 9 4
## 23 мама_s 9 9 4
## 24 замечать_v 7 19 4
## 25 мнение_s 7 19 4
## 26 знать_v 6 24 4
## 27 взгляд_s 6 24 4
## 28 новый_a 5 31 4
## 29 слово_s 5 31 4
## 30 решать_v 5 31 4
## 31 начинать_v 5 31 4
## 32 внешность_s 5 31 4
## 33 год_s 4 39 4
## 34 уникальный_a 4 39 4
## 35 происходить_v 4 39 4
## 36 характер_s 4 39 4
## 37 заниматься_v 4 39 4
## 38 пытаться_v 4 39 4
## 39 провожать_v 4 39 4
## 40 толпа_s 4 39 4
## 41 желание_s 6 24 3
## 42 общество_s 6 24 3
## 43 школа_s 5 31 3
## 44 пример_s 5 31 3
## 45 мир_s 4 39 3
## 46 раз_s 4 39 3
## 47 семья_s 4 39 3
## 48 странный_a 4 39 3
## 49 ходить_v 4 39 3
## 50 выделяться_v 4 39 3
## 51 личность_s 4 39 3
## 52 творческий_a 4 39 3
## 53 момент_s 3 66 3
## 54 сила_s 3 66 3
## 55 находить_v 3 66 3
## 56 день_s 3 66 3
## 57 проблема_s 3 66 3
## 58 путь_s 3 66 3
## 59 оставаться_v 3 66 3
## 60 находиться_v 3 66 3
## 61 внимание_s 3 66 3
## 62 вести_v 3 66 3
## 63 уверенный_a 3 66 3
## 64 одежда_s 3 66 3
## 65 вопрос_s 3 66 3
## 66 идея_s 3 66 3