MatLab-用不会被赋值的东西填充数组?

MatLab-用不会被赋值的东西填充数组?,matlab,nan,pad,Matlab,Nan,Pad,我正在比较不同大小的数组以找到匹配项 Results = (DistancesB >= DistancesA * 0.1 & DistancesB < DistancesA * 1.5); % anything in this thres is matched 结果=(DistancesB>=DistancesA*0.1和DistancesB

我正在比较不同大小的数组以找到匹配项

Results = (DistancesB >= DistancesA * 0.1 & DistancesB < DistancesA * 1.5); % anything in this thres is matched
结果=(DistancesB>=DistancesA*0.1和DistancesB
阵列需要具有相同的大小,因此
padarray
0
配合使用。 但是现在正在比较和匹配0。。。 我是否应该执行循环以仅使用大于0的结果?
或者还有什么我可以用的吗?可能是
NaN

NaN

首先,仅创建与最长向量一样长的
NaN

PaddedA = NaN(max(length(A), length(B)), 1);
PaddedB = NaN(max(length(A), length(B)), 1);
然后用数据填充这些。较短的向量现在将在末尾用
NaN
填充:

PaddedA(1:length(A)) = A;
PaddedB(1:length(B)) = B;

NaN

首先,仅创建与最长向量一样长的
NaN

PaddedA = NaN(max(length(A), length(B)), 1);
PaddedB = NaN(max(length(A), length(B)), 1);
然后用数据填充这些。较短的向量现在将在末尾用
NaN
填充:

PaddedA(1:length(A)) = A;
PaddedB(1:length(B)) = B;

我总是建议阅读文档。例如,可以使用
NaN
填充:

padarray(1:3,[1,1],NaN,'post')
ans =
     1     2     3   NaN
   NaN   NaN   NaN   NaN

有关更多详细信息,请查看文档链接中的padval说明。

我始终建议阅读文档。例如,可以使用
NaN
填充:

padarray(1:3,[1,1],NaN,'post')
ans =
     1     2     3   NaN
   NaN   NaN   NaN   NaN


有关更多详细信息,请查看文档链接中的padval说明。

您是否尝试过
NaN
?如何使用NaN进行pad?featuresA=padarray(数据集2,大小(MaxArray)-size(数据集2),'post');只是不要使用
padarray
,手动操作当我说我在比较阵列时,我的意思是将一个阵列与200多个其他阵列进行比较,这需要花费很多时间,而且不太可靠。请看我的答案,当我手动操作时,我的意思是编码出padarray使用的相同逻辑。对于1D阵列来说,这很简单。您是否尝试过NaN
?如何使用NaN进行填充?featuresA=padarray(数据集2,大小(MaxArray)-size(数据集2),'post');只是不要使用
padarray
,手动操作当我说我在比较阵列时,我的意思是将一个阵列与200多个其他阵列进行比较,这需要花费很多时间,而且不太可靠。请看我的答案,当我手动操作时,我的意思是编码出padarray使用的相同逻辑。对于1D数组,这很简单。好吧,前两行代码中缺少一个括号,我想我把它放错地方了?我相信你的语法无效,所以我编辑了它@汤姆:现在应该可以了。谢谢@DennisJaheruddin,我真是瞎了眼!好的,你在前两行代码中缺少一个括号,我想我把它放错地方了?我相信你的语法是无效的,所以我编辑了它@汤姆:现在应该可以了。谢谢@DennisJaheruddin,我真是瞎了眼+我不知道我怎么会错过这个,因为我特别去了文档中寻找它,哈哈。@Dan我个人会同意你的手动建议,以避免padarray的开销,但有时作为一个纯粹主义者是没有回报的。是的,
padarray
适合填充2D数组。对于1D来说,这似乎是不必要的。但是如果你已经有了工具箱,而且性能不是一个关键问题,那么它确实会产生非常可读的代码。这是正确的吗?NaNArray1=padarray(数据集,大小(MaxArray)-size(数据集),NaN,“post”)+我不知道我怎么会错过这个,因为我特别去了文档中寻找它,哈哈。@Dan我个人会同意你的手动建议,以避免padarray的开销,但有时作为一个纯粹主义者是没有回报的。是的,
padarray
适合填充2D数组。对于1D来说,这似乎是不必要的。但是如果你已经有了工具箱,而且性能不是一个关键问题,那么它确实会产生非常可读的代码。这是正确的吗?NaNArray1=padarray(数据集,大小(MaxArray)-size(数据集),NaN,“post”);