私は、それぞれの行が別の人を表す調査回答を含むデータフレームを持っています。 1つの列(「テキスト」)は自由なテキストの質問です。その後、Tidytext :: Unnest_Tokensと一緒にネストされたリストの列のアプローチとPurrrを使用する
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)
私は:私は、各行によってテキスト分析を行うように私は感情得点、ワードカウント、などここで
は、この例では、単純なデータフレームである含め、Tidytext :: unnest_tokensを使用したいですテキスト列を文字に変換しました。df$Text<-as.character(df$Text)
次はid列でグループ化し、データフレームをネストしました。
df<-df%>%mutate(id=row_number())%>%group_by(id)%>%unnest_tokens(word,Text)%>%nest(-id)
ここまでOK働いているようだが、今どのように私は、ネストされたリストの列に「単語」上で動作するように::マップ機能purrr使うのですか?取得たとえば、各行に単語数を指定してdplyr :: mutateを使用して新しい列を作成する場合は、
また、「テキスト」列のみがネストされたリストになるようにデータフレームをネストするより良い方法がありますか?
あなたが望むものはあまり明確ではありません。 'unnest_tokens'の後に停止するだけで、' purrr :: nest'を使わなくてもテキスト解析ができます。単語列のみをネストしたい場合は、 'nest(word)'を実行することができますが、最初にデータフレームを 'ungroup 'する必要があります(または、idでグループ化しないでください) – FlorianGD