3
我有存储矩阵,像这样的一些原始数据:如何显示零,如果你的变量小于1,用Matlab
A = [1 2 0.05 5
0.01 0.02 1 1
0.09 1 1 1];
我想A
改变,使这些小于1的值变自动为零,所以像这样:
A = [1 2 0 5
0 0 1 1
0 1 1 1];
有没有办法在MATLAB中做到这一点?
我有存储矩阵,像这样的一些原始数据:如何显示零,如果你的变量小于1,用Matlab
A = [1 2 0.05 5
0.01 0.02 1 1
0.09 1 1 1];
我想A
改变,使这些小于1的值变自动为零,所以像这样:
A = [1 2 0 5
0 0 1 1
0 1 1 1];
有没有办法在MATLAB中做到这一点?
如果数据是矩阵...叫它A
,它是那样简单:
A(A < 1) = 0;
为了证明这一点,让我们宣布的数据,并将其存储到A
:
A = [1 2 0.05 5;
0.01 0.02 1 1;
0.09 1 1 1];
A(A < 1) = 0
A =
1 2 0 5
0 0 1 1
0 1 1 1
这个故事的寓意是逻辑索引是你在MATLAB世界中的朋友和盟友。关于它的更多信息可以在这里找到:http://blogs.mathworks.com/steve/2008/01/28/logical-indexing/ - 来自MathWorks的Steve Eddins为此提供了一个很好的案例。