各行が異なる人物を表す調査回答を含むデータフレームがあります。1 つの列 (「テキスト」) は、自由形式のテキストの質問です。Tidytext::unnest_tokens を使用して、感情スコア、単語数などを含む各行ごとにテキスト分析を行いたいと思います。
この例の単純なデータフレームは次のとおりです。
Satisfaction<-c ("Satisfied","Satisfied","Dissatisfied","Satisfied","Dissatisfied")
Text<-c("I'm very satisfied with the services", "Your service providers are always late which causes me a lot of frustration", "You should improve your staff training, service providers have bad customer service","Everything is great!","Service is bad")
Gender<-c("M","M","F","M","F")
df<-data.frame(Satisfaction,Text,Gender)
次に、テキスト列を文字に変えました...
df$Text<-as.character(df$Text)
次に、id 列でグループ化し、データフレームをネストしました。
df<-df%>%mutate(id=row_number())%>%group_by(id)%>%unnest_tokens(word,Text)%>%nest(-id)
ここまでは順調に進んでいるように見えますが、どのように purrr::map 関数を使用して、入れ子になったリストの列 "word" を処理するのでしょうか? たとえば、dplyr::mutate を使用して各行の単語数を含む新しい列を作成したい場合はどうすればよいでしょうか?
また、「テキスト」列のみがネストされたリストになるようにデータフレームをネストするより良い方法はありますか?