Как провести семантический анализ текста: различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) Нет описания правки |
||
| Строка 1: | Строка 1: | ||
{{Scripting Tutorials | {{Scripting Tutorials | ||
|Description=Анализ тональности - анализ эмоциональной окраски текста (позитивная, негативная, нейтральная) | |Description= | ||
* Анализ тональности - анализ эмоциональной окраски текста (позитивная, негативная, нейтральная) | |||
* Анализ личностных маркеров (LIWC-подход) Психолингвистический анализ, основанный на выявлении определённых категорий слов, отражающих психологические процессы | |||
|Field_of_knowledge=Лингвистика, Статистика | |Field_of_knowledge=Лингвистика, Статистика | ||
|FieldActivity=Global Collaborator | |FieldActivity=Global Collaborator | ||
| Строка 42: | Строка 44: | ||
theme(legend.position = "none") | theme(legend.position = "none") | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Анализ личностных маркеров (LIWC-подход) == | |||
Текущая версия от 17:45, 10 декабря 2025
| Описание |
|
|---|---|
| Область знаний | Лингвистика, Статистика |
| Область использования (ISTE) | Global Collaborator |
| Возрастная категория | 16
|
| Поясняющее видео | |
| Близкие рецепту понятия | |
| Среды и средства для приготовления рецепта: | R |
Анализ тональности
- Анализ эмоциональной окраски текста (позитивная, негативная, нейтральная).
# Пример с простым русским словарем
sentiment_dict <- tibble(
word = c("хороший", "отличный", "великолепный", "позитивный", "успех",
"плохой", "ужасный", "негативный", "проблема", "ошибка", "конфликт"),
sentiment = c(1, 1, 1, 1, 1, -1, -1, -1, -1, -1, -1)
)
text_sentiment <- tokens_clean %>%
left_join(sentiment_dict, by = "word") %>%
group_by(title, category) %>%
summarise(
positive_words = sum(sentiment == 1, na.rm = TRUE),
negative_words = sum(sentiment == -1, na.rm = TRUE),
neutral_words = sum(is.na(sentiment), na.rm = TRUE),
sentiment_score = (positive_words - negative_words) / n(),
.groups = "drop"
)
# Визуализация
ggplot(text_sentiment, aes(x = category, y = sentiment_score, fill = category)) +
geom_boxplot(alpha = 0.6) +
geom_jitter(width = 0.2, alpha = 0.3) +
geom_hline(yintercept = 0, linetype = "dashed", color = "gray") +
labs(
title = "Анализ тональности текстов",
x = "Категория",
y = "Sentiment Score",
subtitle = "Положительные значения = позитивная тональность"
) +
theme_minimal() +
theme(legend.position = "none")
