Matlab 如何求单元矩阵的平均值?
我想求单元矩阵的平均值。假设矩阵中的一个元素为奇数时要递增,矩阵中的一个元素为偶数时要递减。如果您还记得,当您除以2时,余数为1的数字是奇数,没有余数的数字是偶数。您可以使用mod命令轻松捕获此信息 首先,假设我们有一个5 x 5矩阵:Matlab 如何求单元矩阵的平均值?,matlab,Matlab,我想求单元矩阵的平均值。假设矩阵中的一个元素为奇数时要递增,矩阵中的一个元素为偶数时要递减。如果您还记得,当您除以2时,余数为1的数字是奇数,没有余数的数字是偶数。您可以使用mod命令轻松捕获此信息 首先,假设我们有一个5 x 5矩阵: A = vec2mat(1:25,5) A = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
A = vec2mat(1:25,5)
A =
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
让我们找出所有数字除以2后的余数
remA = mod(A,2)
remA =
1 0 1 0 1
0 1 0 1 0
1 0 1 0 1
0 1 0 1 0
1 0 1 0 1
如您所见,所有1的数字都是奇数,而0的数字都是偶数。让我们将所有0的数字设置为-1
现在,只需将此矩阵添加到:
如果你想减少奇数,增加偶数,我们可以颠倒这个逻辑,在把条目从0改为-1,然后用减法代替加法,然后取remA。换言之:
finalA = A - remA
finalA =
0 3 2 5 4
7 6 9 8 11
10 13 12 15 14
17 16 19 18 21
20 23 22 25 24
祝你好运 举例说明增量:x=x+1,减量:x=x-1@Dan我真的不相信OP自己不能找到这样一个基本的答案,我想他/她还想要别的东西@然后,欢迎Nishant澄清。我的评论并没有阻止OP收到更多的答案,如果有人通过心灵感应知道被问到的是什么而不是被问到的。我想我知道他想要什么,但答案是渴望评论,因为我只是猜测不适合回答。。。您想要一种方法,可以根据元素的奇数或偶数指定增量或减量吗,是否可以根据列列顺序检查矩阵元素,然后检查偶数和奇数。如果是偶数,则将此特定元素增加1,并将此矩阵存储在新矩阵中,最后打印此新矩阵。我想我已经完成了您在我的帖子中提出的要求。
finalA = A + remA
finalA =
2 1 4 3 6
5 8 7 10 9
12 11 14 13 16
15 18 17 20 19
22 21 24 23 26
finalA = A - remA
finalA =
0 3 2 5 4
7 6 9 8 11
10 13 12 15 14
17 16 19 18 21
20 23 22 25 24