在R中连接字符串

Gue*_*290 1 r

我有以下清单.

l=list("home car train", "remote TV helicopter", "grenade hello")
Run Code Online (Sandbox Code Playgroud)

我的目标是按字母顺序设置列表中每个项目的单词.意思是,在这种情况下请求的结果将是:

"car home train", "helicopter TV remote", "hello grenade"
Run Code Online (Sandbox Code Playgroud)

起初我使用strsplit分隔每个字符串中的单词:

l2<-lapply(l,function(x){as.character(sort(unlist(strsplit(as.character(x), "\\ "))))})
Run Code Online (Sandbox Code Playgroud)

在此步骤之后,我不确定如何将每个项目的不同排序值连接到请求的列表格式.(到目前为止,粘贴功能没有运气)

Bac*_*lin 8

拆分单词,排序并粘贴在一起

lapply(strsplit(unlist(l), " "),
       function(x) paste(sort(x), collapse=" "))
Run Code Online (Sandbox Code Playgroud)

产量

[[1]]
[1] "car home train"

[[2]]
[1] "helicopter remote TV"

[[3]]
[1] "grenade hello"
Run Code Online (Sandbox Code Playgroud)

使用unlist(l)转换l从列表中的特征向量,这是必需的strsplit.

strsplit将输出一个列表,其中每个元素是元素中的单词的向量l.sort每个向量,然后paste通过设置将所有元素组合在一起collapse=" ".