我想创建一个数字序列作为一个字符串。我有“开始”和“结束”列,指示序列的开始和结束。所需的输出是一个序列为 1 的字符串。请参见下面的示例。
df <- data.frame(ID=seq(1:5),
start=seq(2,10,by=2),
end=seq(5,13,by=2),
desired_output_aschar= c("2,3,4,5", "4,5,6,7", "6,7,8,9", "8,9,10,11", "10,11,12,13"))
View(df)
提前致谢...
最佳答案
下面的解决方案只需要一个*apply
循环。
mapply(function(x, y) paste(x:y, collapse = ","), df$start, df$end)
#[1] "2,3,4,5" "4,5,6,7" "6,7,8,9" "8,9,10,11" "10,11,12,13"
使用新的 lambda 表达式,输出相同。
mapply(\(x, y) paste(x:y, collapse = ","), df$start, df$end)
关于r - 在字符串 R 中创建数字序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68438171/