r - 如何按顺序找到向量的最小值
问题描述
假设我有一个向量x
,我想找到这个向量的最小值。然后,我想返回一个x
没有选定元素的新元素,然后从剩余值中提取最小值,依此类推。
例如,
x <- c(3,4,2,1,6,10.14,100,7)
我想提取这个向量的最小值。在这个例子中,最小值是 1。然后,我想不x
返回1
.
x_1 <- c(3,4,2,6,10.14,100,7)
之后,我需要从中选择最小值x_1
,然后获取x_2
等等。
如何在 R 中自动执行此操作?
解决方案
我们可以创建一个remove_small_vec
从向量中删除最小值的函数。然后我们运行一个while
循环,直到length
向量为>=
1。
remove_small_vec <- function(vec) {
vec[vec != min(vec)]
}
list_vec <- list()
while (length(x) >= 1) {
list_vec <- c(list_vec, list(x))
x <- remove_small_vec(x)
}
list_vec
#[[1]]
#[1] 3.00 4.00 2.00 1.00 6.00 10.14 100.00 7.00
#[[2]]
#[1] 3.00 4.00 2.00 6.00 10.14 100.00 7.00
#[[3]]
#[1] 3.00 4.00 6.00 10.14 100.00 7.00
#[[4]]
#[1] 4.00 6.00 10.14 100.00 7.00
#[[5]]
#[1] 6.00 10.14 100.00 7.00
#[[6]]
#[1] 10.14 100.00 7.00
#[[7]]
#[1] 10.14 100.00
#[[8]]
#[1] 100
这将返回与在每个列表元素中删除一个元素length
相同的向量列表。x
数据
x <- c(3,4,2,1,6,10.14,100,7)
推荐阅读
- php - 使用 LinkedIn API 在人员提要上创建文章始终创建帖子而不是文章 | 领英分享 | ugcPosts
- ios - 第二次访问wkwebview的backForwardList.backList或backForwardList.forwardList会导致crash
- ruby-on-rails - 未找到接受的嵌套属性的 Rails 更新属性记录
- sorting - jenkins groovy 管道排序
- rest - 使用 Perl 使用 Basic auth 对 REST API 执行 POST 请求
- c# - 使用多级层次关系(SQL 或 LINQ)对多表连接进行搜索查询
- windows - 无法使批处理宏工作(cmd.exe)?
- postgresql - Prisma - Postgres 事务 - 并发事务中读取增量数的问题
- c++ - 实例化变量模板时 gcc 和 -Wfloat-conversion 不一致
- python - python元素树插入在所需位置和最后添加两次子项