排序非递减函数然后将它们添加到 R
ordering non-decreasing functions then adding them in R
需要有关基本 R 功能的帮助:
首先从 4 个不同的序列中排序非递减序列,然后将这 4 个序列排序为一个。
我在编程方面完全是新手,所以请尽量用最简单的方法。
Edit1:根据需要输入一些数据
A={3,2,1,2}
B={6,7,5,8}
C={12,11,9,10}
D={65,43,76,13}
我希望它首先对每个序列排序,所以
A={1,2,2,3}
B={5,6,7,8}
C={9,10,11,12}
D={13,43,65,76}
然后合并它
ABCD={1,2,2,4,5,6,7,8,9,10,11,12,13,43,65,76}
如果您想要一个接受向量 A、B、C 和 D 并输入和输出它们的排序版本的函数,您可以尝试:
sortAll <- function(A, B, C, D) sort(c(A, B, C, D))
然后你可以 运行 它像这样:
A <- c(1,2,2,3)
B <- c(5,6,7,8)
C <- c(9,10,11,12)
D <- c(13,43,65,76)
sortAll(A, B, C, D)
# [1] 1 2 2 3 5 6 7 8 9 10 11 12 13 43 65 76
如果您想编写一个函数来组合和排序任意数量的输入,您可以尝试:
sortAll <- function(...) sort(unlist(list(...)))
sortAll(A, B, C, D)
# [1] 1 2 2 3 5 6 7 8 9 10 11 12 13 43 65 76
sortAll(A)
# [1] 1 2 2 3
需要有关基本 R 功能的帮助:
首先从 4 个不同的序列中排序非递减序列,然后将这 4 个序列排序为一个。
我在编程方面完全是新手,所以请尽量用最简单的方法。
Edit1:根据需要输入一些数据
A={3,2,1,2}
B={6,7,5,8}
C={12,11,9,10}
D={65,43,76,13}
我希望它首先对每个序列排序,所以
A={1,2,2,3}
B={5,6,7,8}
C={9,10,11,12}
D={13,43,65,76}
然后合并它
ABCD={1,2,2,4,5,6,7,8,9,10,11,12,13,43,65,76}
如果您想要一个接受向量 A、B、C 和 D 并输入和输出它们的排序版本的函数,您可以尝试:
sortAll <- function(A, B, C, D) sort(c(A, B, C, D))
然后你可以 运行 它像这样:
A <- c(1,2,2,3)
B <- c(5,6,7,8)
C <- c(9,10,11,12)
D <- c(13,43,65,76)
sortAll(A, B, C, D)
# [1] 1 2 2 3 5 6 7 8 9 10 11 12 13 43 65 76
如果您想编写一个函数来组合和排序任意数量的输入,您可以尝试:
sortAll <- function(...) sort(unlist(list(...)))
sortAll(A, B, C, D)
# [1] 1 2 2 3 5 6 7 8 9 10 11 12 13 43 65 76
sortAll(A)
# [1] 1 2 2 3