如何合并和取消合并角色向量?

时间:2015-10-18 18:14:15

标签: r indexing merge character

我需要通过一系列计算来跟踪我的数据。

我有以下向量:

start_date <- "2010-11-04"
end_date <- "2010-11-10"

我希望将它们合并为一个看起来像这个

的单个字符向量
"2010-11-04 to 2010-11-10"

然后我想反过来:

从:"2010-11-04 to 2010-11-10"回到原来的两个向量

1 个答案:

答案 0 :(得分:3)

这不使用任何包:

p <- paste(start_date, "to", end_date)
p
## [1] "2010-11-04 to 2010-11-10"

沿另一个方向移除第一个空格后的所有内容以获取表示第一个日期的字符串,并删除最后一个空格的所有内容以获取表示第二个日期的字符串:

sub(" .*", "", p)
## [1] "2010-11-04"
sub(".* ", "", p)
## [1] "2010-11-10"

另一种方法是使用strsplit分割字符串:

s <- unlist(strsplit(p, " to "))
s
## [1] "2010-11-04" "2010-11-10"

所以s [1]是表示第一个日期的字符串,s [2]是表示第二个日期的字符串。

更新:根据Richard Scriven的评论修改。