【发布时间】:2015-07-24 05:19:30
【问题描述】:
我不知道我做错了什么。我正在尝试重新排序字符串,我能想到的最简单的方法是删除元素,然后使用 paste 将它们放回原处。但我不知道如何删除元素。这是一个字符串:
x <- "the.cow.goes.moo"
但是当我使用
x <- strsplit(x, '[.]')
导致列表“the”“cow”“goes”“moo”。 并尝试使用
删除第二个元素x <- x[-2]
或
[x <- x[x != "cow"]
我得到完全相同的列表。 但是当我将 x 声明为
x <- list("the", "cow", "goes", "moo")
然后
x <- x[-2]
有效!
有什么不同?我究竟做错了什么?另外,有没有更简单的方法来重新排序字符串?
编辑:我刚刚意识到我需要的是“moo.goes.the.cow”,但我需要对许多其他字符串重复相同的更改。所以我需要重新排序元素,实际上不能删除它们。我该怎么做?
【问题讨论】:
-
paste(strsplit(x, '.', fixed=T)[[1]][c(4,3,1,2)], collapse='.')