我有一个csv文件,该文件的一列中每个单元格中都有多个单词。我想知道是否有任何R函数将每个单元格中的单词移动到单个单元格。 以下是数据集中两个单元格中的数据:
槟榔,槟榔,konkan,自然,旅行社,无镜框 passangerstories,chakarmanee,atranginikhil,马哈拉施特拉邦,印度
谢谢。任何帮助表示赞赏。
Chamil
答案 0 :(得分:0)
让我们假设这个data.frame:
require(dplyr)
require(tidyr)
df<-data.frame(id=1:2, words=c("arecapalm,betelnut,konkan,nature,traveldiaries,mirrorlessframes","passangerstories,chakarmanee,atranginikhil,maharashtra,india"))
df
# id words
#1 1 arecapalm,betelnut,konkan,nature,traveldiaries,mirrorlessframes
#2 2 passangerstories,chakarmanee,atranginikhil,maharashtra,india
然后我们可以使用dplyr
和tidyr
来运行此操作,以将单词单元分解为多列:
df %>% separate_rows(words) %>%
group_by(id) %>%
mutate(wordid=row_number()) %>%
spread(wordid,words,sep=".")
# A tibble: 2 x 7
# Groups: id [2]
id wordid.1 wordid.2 wordid.3 wordid.4 wordid.5 wordid.6
<int> <chr> <chr> <chr> <chr> <chr> <chr>
1 1 arecapalm betelnut konkan nature traveldiaries mirrorlessframes
2 2 passangerstories chakarmanee atranginikhil maharashtra india NA