将 if 循环结果存储在矩阵中(八度)
store if loop results in a matrix (Octave)
我有一个矩阵,其中有许多随机值,范围从 -600 到 +600。这些值在矩阵内部相互混合。
我想做的是将负值和正值分离到它们自己的矩阵中。甚至可以将大于 400 的值也分离到它自己的矩阵中。
我对编码还很陌生,所以我脑海中浮现的第一件事就是 if 语句。我正在使用八度。我不知道是否有更好的方法来解决这个问题,但我将不胜感激我能得到的所有帮助。谢谢
最好的方法是使用逻辑索引。您可以根据所需条件创建数据大小的逻辑矩阵。
因此,例如仅获取负值:
negatives = your_data(your_data < 0);
和正值
positives = your_data(your_data >= 0);
您可以更改用于生成逻辑矩阵的表达式以满足您的需要。
此外,如果您只是使用 Octave,则可以停止标记 C++,因为它们是不同的语言。
我有一个矩阵,其中有许多随机值,范围从 -600 到 +600。这些值在矩阵内部相互混合。
我想做的是将负值和正值分离到它们自己的矩阵中。甚至可以将大于 400 的值也分离到它自己的矩阵中。
我对编码还很陌生,所以我脑海中浮现的第一件事就是 if 语句。我正在使用八度。我不知道是否有更好的方法来解决这个问题,但我将不胜感激我能得到的所有帮助。谢谢
最好的方法是使用逻辑索引。您可以根据所需条件创建数据大小的逻辑矩阵。
因此,例如仅获取负值:
negatives = your_data(your_data < 0);
和正值
positives = your_data(your_data >= 0);
您可以更改用于生成逻辑矩阵的表达式以满足您的需要。
此外,如果您只是使用 Octave,则可以停止标记 C++,因为它们是不同的语言。