【发布时间】:2014-10-24 15:43:00
【问题描述】:
假设我有两个向量:
a <- c("george", "harry", "harry", "chris", "steve", "steve", "steve", "harry")
b <- c("harry", "steve", "chris", "harry", "harry", "george", "chris", "george")
我想要做的是将第一对、第二对等粘贴在一起......但是,我想按字母顺序粘贴每对的两个元素。在上面的示例中,前 2 对已经按字母顺序排列,但第 3 对 'harry' 和 'chris' 不是。我想为这对返回“chris harry”。
我已经想出了如何分两步执行此操作,但想知道是否有一种仅使用 paste 的快速方法(单行方式)来执行此操作?
我的解决方案:
x <- apply(mapply(c, a, b, USE.NAMES = FALSE), 2, sort)
paste(x[1,], x[2,])
它按字母顺序给出对...但是有 1 行方式吗?
[1] "george harry" "harry steve" "chris harry" "chris harry" "harry steve" "george steve" "chris steve" "george harry"
【问题讨论】: