首页 > 解决方案 > R按字母顺序重新排列列值

问题描述

我在 R 中有一个这样的数据框:

在此处输入图像描述

我想像这样重新排序第二列“汽车”字母:

奥迪/宝马/大众

奥迪/宝马

奥迪/宝马/大众

奥迪/宝马/保时捷/大众

可能有 0 到 15 辆带有分隔符“/”的汽车

我的解决方案有点复杂。(使用此列构建一个新的 DataFrame,将它们拆分为多列,按字母顺序重新排列行,将它们粘贴在一起,插入原始数据框)

您知道更好更智能的解决方案吗?

多谢

标签: r

解决方案


这基本上就是您所做的,但没有创建新的数据框和新列。

df$Car <- sapply(strsplit(as.character(df$Car), "/"), function(x)
                  paste(sort(x), collapse = "/"))

推荐阅读