R - 在单个变量中将多个值作为一个字符串处理

iNy*_*yar 7 r

在a中data.frame,我有一个用于文本语言的分类变量.但是,虽然大多数文本只使用一种语言,但有些语言只有多种语言.在我的数据中,它们出现在同一列中,除以逗号:

text = c("Text1", "Text2", "Text3")
lang = c("fr", "en", "fr,en")
d = data.frame(text, lang)
Run Code Online (Sandbox Code Playgroud)

视觉:

   text  lang
1 Text1    fr
2 Text2    en
3 Text3 fr,en
Run Code Online (Sandbox Code Playgroud)

我想绘制每种语言的文本数量,Text3在内部fr和内部计算en.

我找到了如何拆分,用:

d$lang <- strsplit(d$lang, ",")
Run Code Online (Sandbox Code Playgroud)

但后来我无法找到正确绘制方法,例如使用qplot像这样的条形图:

qplot(lang, data=d)
Run Code Online (Sandbox Code Playgroud)

我做得对吗?有更好的方法吗?

Ste*_*pré 6

你可以尝试:

library(splitstackshape)
dl <- cSplit(d, "lang", ",", "long")
qplot(lang, data = dl)
Run Code Online (Sandbox Code Playgroud)