Тидетекстовые слова с положительным и отрицательным настроением
Я работал с набором данных sentiments и обнаружил, что наборы данных bing и nrc содержат несколько слов, которые имеют как положительные, так и отрицательные чувства.
** бинг - три слова с положительным и отрицательным настроением **
env_test_bing_raw <- get_sentiments("bing") %>%
filter(word %in% c("envious", "enviously","enviousness"))
# A tibble: 6 x 2
word sentiment
<chr> <chr>
1 envious positive
2 envious negative
3 enviously positive
4 enviously negative
5 enviousness positive
6 enviousness negative
** nrc - 81 слово с положительным и отрицательным настроением **
test_nrc <- as.data.frame(
get_sentiments("nrc") %>%
filter(sentiment %in% c("positive","negative")) %>%
group_by(word) %>%
summarize(count = n()) %>%
filter(count > 1))
env_test_nrc <- get_sentiments("nrc") %>%
filter(sentiment %in% c("positive","negative")) %>%
filter(word %in% test_nrc$word)
# A tibble: 162 x 2
word sentiment
<chr> <chr>
1 abundance negative
2 abundance positive
3 armed negative
4 armed positive
5 balm negative
6 balm positive
7 boast negative
8 boast positive
9 boisterous negative
10 boisterous positive
# ... with 152 more rows
Мне было любопытно, сделал ли я что-то неправильно или как слово может иметь как негативные, так и позитивные чувства в одном наборе исходных данных. Каковы стандартные практики для обработки этих ситуаций?
Спасибо!
1 ответ
Нету! Вы не сделали ничего плохого.
Эти лексиконы были построены по-разному. Например, лексикон NRC был создан с помощью Amazon Mechanical Turk, показывая людям много слов и спрашивая их, связывают ли они каждое слово с радостью, грустью, положительным или отрицательным воздействием и т. Д. Затем исследователи тщательно поработали над утверждением, калибровка и т. д. Есть некоторые английские слова, которые мы, как пользователи человеческого языка, можем ассоциировать как с положительным, так и с отрицательным ощущением, например, "шумный", и исследователи, создавшие эти конкретные лексиконы, решили включить эти слова в оба.
Если у вас есть текстовый набор данных, в котором есть слово "шумный", и вы используете лексикон, подобный этому, он будет способствовать как позитивному, так и негативному направлению (а также гневу, предвкушению и радости, в данном конкретном случае). Если в итоге вы рассчитаете чистое настроение (положительное минус отрицательное) для какого-то настроения, раздела или документа, эффект этого конкретного слова будет отменен.
library(tidytext)
library(dplyr)
get_sentiments("nrc") %>%
filter(word == "boisterous")
#> # A tibble: 5 x 2
#> word sentiment
#> <chr> <chr>
#> 1 boisterous anger
#> 2 boisterous anticipation
#> 3 boisterous joy
#> 4 boisterous negative
#> 5 boisterous positive