Как unnest_tokens и сохранить дополнительные столбцы - PullRequest
0 голосов
/ 11 июля 2020

Применение функции unnest_tokens к твитам создает 1 столбец с каждым словом в отдельной строке. У меня есть дополнительные столбцы в исходном фрейме данных (день, час, мин) каждого твита. Есть ли способ, чтобы в каждой строке слов было еще три столбца дня, часа и минуты для каждого соответствующего слова? Я пробовал следующее:

tweet_words$text <- tweet_words %>%
  select(text) %>%
  unnest_tokens(word, text)

Исходный фрейм данных имеет текстовый столбец «tweet_words $ text», где каждая строка представляет собой 1 твит. Я попытался переписать текстовый столбец в столбец из отдельных слов, но получил следующую ошибку, потому что в столбцах день, час, минимум не одинаковое количество строк. Я получаю следующую ошибку.

Ошибка в $<-.data.frame (*tmp*, text, value = list (word = c («то же»,: замена имеет 4571 строку, данные - 300

Есть идеи, как облегчить желаемый результат?

1 Ответ

0 голосов
/ 11 июля 2020

См. mutate в dplyr

https://dplyr.tidyverse.org/reference/mutate.html

Еще лучше, см. Введение к dplyr: https://cran.r-project.org/web/packages/dplyr/vignettes/dplyr.html

Просто предположение, но попробуйте что-то вроде этого:

tweet_words<- tweet_words %>%
  select(everything()) %>%
  mutate(text = unnest_tokens(word, text))

Забегая вперед, если действительно помогает вставить образец данных в ваш вопрос. Введите dput, чтобы получить код для воссоздания данных. т.е.

tmp<- tweet_words[1:3,]
dput(tmp) # Copy and paste the output of this into your question. 

Я просто предполагаю, что может работать без выборки данных. Тем не менее, виньетка dplyr должна вас подтолкнуть.

Удачного кодирования!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...