如何确定两个以上数字的相等性?MATLAB
我需要确定4个数的相等性。数字是大小(A,1)、大小(B,1)、大小(C,1)和大小(D,1),其中,例如 A=[12;34],B=[123,456],C=[12;34;56]和D=[12;34;56;78] 我试过这个,但它不起作用,因为它从左到右比较如何确定两个以上数字的相等性?MATLAB,matlab,equality,Matlab,Equality,我需要确定4个数的相等性。数字是大小(A,1)、大小(B,1)、大小(C,1)和大小(D,1),其中,例如 A=[12;34],B=[123,456],C=[12;34;56]和D=[12;34;56;78] 我试过这个,但它不起作用,因为它从左到右比较 size(A,1)==size(B,1)==size(C,1)==size(D,1) 我该怎么做?您可以使用功能isequal 哪一个进行数组相等性检查: isequal(size(A,1),size(B,1),size(C,1),size(
size(A,1)==size(B,1)==size(C,1)==size(D,1)
我该怎么做?您可以使用功能
isequal
哪一个进行数组相等性检查:
isequal(size(A,1),size(B,1),size(C,1),size(D,1))
将大小放入向量中。你可以使用的
Q=[size(A,1) size(B,1) size(C,1) size(D,1)];
var(Q)==0
ans = 0 % // Values are not equal
range(Q)==0
ans = 0 % // Values are not equal
range(B)==0
ans = 1 % // Values are equal
range(T)==0
ans = 0 % // Values are not equal
其他几个例子
B=[6 6 6 6];
var(B)==0
ans = 1 % // All values are equal
T=[5 4 6];
var(T)==0
ans = 0 % // values are not equal
Q=[size(A,1) size(B,1) size(C,1) size(D,1)];
var(Q)==0
ans = 0 % // Values are not equal
range(Q)==0
ans = 0 % // Values are not equal
range(B)==0
ans = 1 % // Values are equal
range(T)==0
ans = 0 % // Values are not equal
@Traker不客气,还请注意isequal适用于数组比较和单值比较。@Traker还注意,由于舍入错误,通常这不是一个好主意(即比较双精度的相等性)。但在这里是安全的,因为大小是直接从整数转换而来的。我认为这是不正确的。如果你有
T=[5 4 6]
并且你这样做:mean(T)==T(1)
结果是1,并且不是每个分量都相等