2016-05-19 2 views
0

Я очень новичок в R и недавно начал работать над проектом текстовой аналитики. Я пытаюсь сделать слово вслух словами, которые составляют мою историю. пакеты, которые я смонтированные:Как удалить ненужные данные из текстовой аналитики

tm 
SnowballC 
wordcloud 

Данные, что обратных связей и содержит много ненужных слов для генерации билетов, которые не являются частью английского языка. Есть ли способ удалить мусорные слова и работать только на тех, которые являются правильными английскими? Я попытался составить список слов, которые нужно удалить, но их слишком много, чтобы их можно было добавить в список.

Пожалуйста, помогите ... Спасибо

+0

'tm' делает это. Если вы добавите воспроизводимый пример, вам будет проще помочь вам – Sotos

+0

Удаление неанглийских слов довольно просто. Загрузите любой из массивных словарей (например, коричневый или reuters) и преобразуйте их в dataframe и сделайте '! (Df1 $ word% in% dictionary $ word)' subset ... предоставление воспроизводимого примера поможет нам дать вам точный код для ваших данных ... – Gaurav

+0

Hi Gaurav, My wordcloud показывает частоту в порядке убывания as: jqxwb, gghtf, neelam, jhwqex, lkjbne, taslima, вышивка, согласие, datatime ... Единственные подходящие слова для меня - вышивка и дать согласие. хочу устранить остальные ... надеюсь, что этот пример помогает лучше понять проблему! – eclairs

ответ

0

Чтобы удалить стоп-слова, попробуйте следующее:

df %>% 
    unnest_tokens(word_column, text_column) %>% 
    anti_join(stop_words, by = "word_column") 

Я не знаю, если у вас есть текст уже разделены на отдельные слова, по этой причине есть функция notest tokens (имя выходного столбца, имя входного столбца (столбец с настройками)).

против присоединиться к функции, то удалит стоп-слова

0

Чтобы удалить не английские слова, внутреннее соединение данных с помощью фрейма данных «parts_of_speech» из tidytext пакета, а затем удалить стоп-слова, используя dataframe из того же tidytext пакет.

library(dplyr) # loads inner_join, anti_join 
# load unnest_tokens(); parts_of_speech stop_words data frames: 
library(tidytext) 
data(package="tidytext") # show built-in data frames 

# optional, show richness of parts_of_speech dataset 
all_english_words <- parts_of_speech$word # , > 200000 rows 
grep("apple", all_english_words, value=TRUE) 

# assume data-frame df containing your data was already created, 
# contains column `text_column`, all lowercase 
new_df <- df %>% 
    unnest_tokens(word, text_column) %>% 
    inner_join(word, parts_of_speech, by = "word") %>% 
    anti_join(stop_words, by = "word") 

glimpse(new_df) 

некоторые физкультура может потребоваться.

Смежные вопросы