【发布时间】:2017-12-10 14:12:56
【问题描述】:
我有一个复杂的字符向量,其中向量的每个元素都由数字和字母组成。我想简化这个向量,以便将数字和/或字母序列放入范围内。下面是一个例子,输入和输出向量应该是这样的:
# Input vector
input_vec <- c("1,2,3,4,5", "1,2,3,5,6,7,8", "2,3,4,5", "A,B,C", "1,2,3,4,5,A,B,8,9,10,11")
# Here some function should be applied, to create the desired output vector automatically
# Desired output vector
output_vec <- c("1-5", "1-3,5-8", "2-5", "A-C", "1-5,A-B,8-11")
我确信必须有一种方法来构建函数或使用包,以自动化的方式执行此操作,但不幸的是我正在努力寻找解决方案。非常感谢任何帮助!
更新:添加了一个更复杂的向量
input_vec2 <- c("1,2,3,4,5", "1,2,3,5,6,7,8", "2,3,4,5", "A,B,C", "1,2,3,4,5,A,B,8,9,10,11",
"1", "1,2,3,-4", "lala,3") # This part is new
output_vec2 <- c("1-5", "1-3,5-8", "2-5", "A-C", "1-5,A-B,8-11",
"1", "1-3,-4", "lala,3") # This part is new
【问题讨论】:
-
LETTERS 也可以是
A, B, C, K, L, M,这需要变成A-C, K-M吗? -
嗨,Sotos,是的,他们可以
标签: r function vector character