当前位置: 首页 > 知识库问答 >
问题:

计算两个相邻数字之间的最大和最小差值

连坚白
2023-03-14

具有矩阵A的:

     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]   11   14   17   20   23   26
[2,]   12   15   18   21   24   27
[3,]   13   16   19   22   25   28

我想计算所有行中两个相邻数字之间的最大和最小差异。然后过滤以仅限制相邻数字min小于4和7之间的行,最大值在6和12之间的行。输出应该返回无行。

对于以下矩阵:

     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]   11   16   17   28   23   26
[2,]   12   15   18   21   24   27
[3,]   13   16   19   22   25   28

结果应该是第1行

共有2个答案

楚意
2023-03-14

这是一种矢量化方法

library(matrixStats)
m1 <- abs(m[,-ncol(m) ] - m[,-1])
m[rowMins(m1) %in% 4:7 & rowMaxs(m1) %in% 6:12,]
#     [,1] [,2] [,3] [,4] [,5] [,6]
#[1,]   21   15   22   13   23   17
#[2,]   27   18   13   25   16   11
set.seed(2)
m <- matrix(sample(11:28, 54, TRUE), nrow = 9)
施德元
2023-03-14

你可以这样做:

d <- abs(apply(m, 1, diff))

m[apply(d, 2, min) %in% 4:7 & apply(d, 2, max) %in% 6:12,]

其中给出:

     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]   21   15   22   13   23   17
[2,]   27   18   13   25   16   11

使用数据

set.seed(2)
m <- matrix(sample(11:28, 54, TRUE), nrow = 9)
 类似资料:
  • 我正在尝试解决此问题: 一位物理教授给班上的学生做项目。学生们必须组成一个两人小组来做这个项目。教授让学生来决定队伍。一个班级的学生人数将是偶数。 每个学生都有自己的知识水平。它告诉每个学生有多少知识。一个团队的知识水平是两个学生知识水平的总和。 学生们决定组成小组,这样知识最高的团队和知识最低的团队之间的差异就最小了。 投入 输入的第一行将包含测试用例的数量t;在接下来的t行中,第一个数字是n,

  • 您将获得一个包含n个元素的数组:<代码>d[0],d[1]。。。,d【n-1】。计算所有相邻子数组的最大差值之和。 形式上:S=sum{max{d[l,..., r]}-min{d[l,..., r}},Δ0 输入: 输出: 解释: l=0;r=1;数组:[1,3]和=最大值([1,3])-最小值([1,3])=3-1=2 l=0;r=2;数组:[1,3,2]和=最大值([1,3,2])-最小值(

  • 本文向大家介绍Java数组中最大质数和最小质数之间的差异,包括了Java数组中最大质数和最小质数之间的差异的使用技巧和注意事项,需要的朋友参考一下 问题陈述 对于给定的整数数组,其中所有元素均小于1000000。找到数组中最大素数和最小素数之间的差。 示例 解 使用Eratosthenes筛分法,这是找出小于给定数的所有素数的有效方法。然后,我们将找出最大和最小的质数以获得所需的差。 示例 以下是

  • 问题内容: 我想返回该数字,只要它在限制范围内,否则返回限制的最大值或最小值。我可以结合使用和和。 我想知道,如果有一个现有的或我俯瞰功能。 如果第三方库很常见(例如Commons或Guava),则欢迎它们 问题答案: 从版本21开始,Guava包括(以及其他原语的等效方法)。从发行说明中: 添加了将给定值限制在和值定义的封闭范围内的方法。如果值在范围内,则返回值本身,如果值在范围内,则返回值,如

  • 所以我试着使用一个嵌套循环,将长度加到一个int数组中,然后遍历int数组,找到最大的数,但它没有通过测试用例,我开始想,也许我把这个问题复杂化了,有一个更简单的方法。这是我试过的。

  • 这个问题可能是封闭的,因为它听起来很模糊,但我真的问这个,因为我不知道或者我的数学背景不够。 我试图实现一个挑战,其中一部分挑战要求我计算矩阵的最小值和最大值。我对矩阵的实现及其操作没有任何问题,但是什么是矩阵的最小值和最大值?考虑到3x3矩阵是9个数中最小的数,最大的是最大的还是其他什么?