rm(list = ls())
date()
## [1] "Sun Sep 22 17:35:41 2019"
sessionInfo()
## R version 3.5.1 (2018-07-02)
## Platform: x86_64-apple-darwin15.6.0 (64-bit)
## Running under: macOS  10.14.6
## 
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/3.5/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.5.1  magrittr_1.5    tools_3.5.1     htmltools_0.3.6
##  [5] yaml_2.2.0      Rcpp_1.0.0      stringi_1.2.4   rmarkdown_1.11 
##  [9] knitr_1.21      stringr_1.3.1   xfun_0.4        digest_0.6.18  
## [13] evaluate_0.12

Библиотеки

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)
## Warning: package 'quanteda' was built under R version 3.5.2
## Package version: 1.4.3
## 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")

ndoc(ToleranceS)
## [1] 51

Токенизация

TokensTolerance <- tokens(ToleranceS, what = "fastestword")

Облако слов

Все слова, использованные более чем в одном тексте (существительные, глаголы и прилагательные)

TokensTolerance %>% 
        tokens_keep(pattern = c("*_A", "*_V", "*_S")) %>%
        dfm() %>% 
        textplot_wordcloud(max_words = 1000, rotation = 0, min_count = 2)

Существительные

Слова использованные как минимум три раза

set.seed(100)
TokensTolerance %>% 
        tokens_keep(pattern = "*_S") %>% 
        dfm() %>% 
        textplot_wordcloud(max_words = 50, min_size = 1, rotation = 0)

Список слов, которые появились более чем в одном тексте

frequency - частота встречаемости слова rank - ранг частоты docfreq - количество текстов, где встречается это слов

TokensTolerance %>% 
        tokens_keep(pattern = "*_S") %>% 
        dfm() %>% 
        textstat_frequency() %>% 
        filter(docfreq > 2) %>% 
        arrange(desc(docfreq)) %>% 
        select(-group)
##            feature frequency rank docfreq
## 1        человек_s        64    1      38
## 2      отношение_s        21    2      18
## 3       уважение_s        16    3      16
## 4     терпимость_s        13    4      13
## 5          жизнь_s         8    7       8
## 6         мнение_s         9    5       7
## 7       принятие_s         7    8       7
## 8  толерантность_s         7    8       7
## 9         умение_s         9    5       5
## 10     поведение_s         5   10       5
## 11      качество_s         5   10       4
## 12          раса_s         4   12       4
## 13         образ_s         4   12       4
## 14     понимание_s         4   12       4
## 15             т_s         4   12       4
## 16      ситуация_s         4   12       4
## 17           мир_s         4   12       4
## 18   особенность_s         4   12       4
## 19        взгляд_s         4   12       3
## 20         выбор_s         4   12       3
## 21          вкус_s         3   21       3
## 22        любовь_s         3   21       3
## 23             д_s         3   21       3
## 24 мировоззрение_s         3   21       3
## 25      общество_s         3   21       3
## 26       интерес_s         3   21       3
## 27    недостаток_s         3   21       3
## 28      личность_s         3   21       3
## 29  предпочтение_s         3   21       3

Глаголы

Слова использованные как минимум три раза

set.seed(100)
TokensTolerance %>% 
        tokens_keep(pattern = "*_V") %>% 
        dfm() %>% 
        textplot_wordcloud(max_words = 50, min_size = 1, rotation = 0)

Список слов, которые появились более чем в одном тексте

TokensTolerance %>% 
        tokens_keep(pattern = "*_V") %>% 
        dfm() %>% 
        textstat_frequency() %>% 
        filter(docfreq > 1) %>% 
        arrange(desc(docfreq)) %>% 
        select(-group)
##           feature frequency rank docfreq
## 1     принимать_v         9    1       7
## 2          быть_v         9    1       7
## 3       уважать_v         6    3       6
## 4    относиться_v         6    3       6
## 5      понимать_v         5    5       4
## 6     нравиться_v         3    6       3
## 7          мочь_v         3    6       3
## 8        любить_v         2    8       2
## 9      казаться_v         2    8       2
## 10      унижать_v         2    8       2
## 11        вести_v         2    8       2
## 12  чувствовать_v         2    8       2
## 13   отличаться_v         2    8       2
## 14        знать_v         2    8       2
## 15      терпеть_v         2    8       2
## 16 использовать_v         2    8       2
## 17      значить_v         2    8       2
## 18        уметь_v         2    8       2
## 19     осуждать_v         2    8       2

Прилагательные

Слова использованные как минимум три раза

set.seed(100)
TokensTolerance %>% 
        tokens_keep(pattern = "*_A") %>% 
        dfm() %>% 
        textplot_wordcloud(max_words = 50, min_size = 1, rotation = 0)

Список слов, которые появились более чем в одном тексте

TokensTolerance %>% 
        tokens_keep(pattern = "*_A") %>% 
        dfm() %>% 
        textstat_frequency() %>% 
        filter(docfreq > 1) %>% 
        arrange(desc(docfreq)) %>% 
        select(-group)
##              feature frequency rank docfreq
## 1     уважительный_a         6    1       6
## 2           равный_a         5    2       4
## 3          внешний_a         4    3       4
## 4      толерантный_a         4    3       4
## 5            чужой_a         4    3       3
## 6         терпимый_a         3    6       3
## 7       правильный_a         2    7       2
## 8      собственный_a         2    7       2
## 9     человеческий_a         2    7       2
## 10         похожий_a         2    7       2
## 11   положительный_a         2    7       2
## 12    национальный_a         2    7       2
## 13      внутренний_a         2    7       2
## 14 снисходительный_a         2    7       2