1

因为我是这种编程语言的新手,所以我在 matlab 中遇到了一些问题。好的,这里是:

我有Matrix并且我已经对它进行了升序排序,例如:

1
1
1
3
4
4
4
5
6
6
7
7
9
9
9
9
9

它只有 1 列矩阵。我想用一些标量值将矩阵分成两组。我是否选择 5 作为标量,所以我的矩阵将分为高于 5 和低于 5 的两组:

预期结果 :

下矩阵:

1
1
1
3
4
4
4
5

高级矩阵:

6
6
7
7
9
9
9
9
9

我曾尝试使用maxandmin命令,但此命令保持矩阵大小并将所有低于标量 (5) 的数字替换为 5。这是一个问题,因为下一步我想对每个较低和较高的矩阵求和。

你能给我一些技巧吗?非常感谢

4

1 回答 1

5

您可以使用逻辑寻址来执行此操作:

LowValuesMatrix = Matrix(Matrix <= 5);
HighValuesMatrix = Matrix(Matrix > 5);

LowValuesMatrix =
 1
 1
 1
 3
 4
 4
 4
 5

HighValuesMatrix =
 6
 6
 7
 7
 9
 9
 9
 9
 9
于 2012-05-04T08:24:48.857 回答