如何在Matlab中从稀疏向量中提取有效值?
我有很多像下面这样的向量,非常稀疏,很多“NaN”。我打算做的是从这个向量中提取有效的数字,并将它们放入一个没有“NaN”值的单独向量中 每个向量都有不同的位置和有效数字,所以我不能把它们放到矩阵中然后提取行 所以请帮我做这个如何在Matlab中从稀疏向量中提取有效值?,matlab,vector,nan,Matlab,Vector,Nan,我有很多像下面这样的向量,非常稀疏,很多“NaN”。我打算做的是从这个向量中提取有效的数字,并将它们放入一个没有“NaN”值的单独向量中 每个向量都有不同的位置和有效数字,所以我不能把它们放到矩阵中然后提取行 所以请帮我做这个 10459865 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN 8751943 NaN NaN NaN
10459865
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
8751943
NaN
NaN
NaN
NaN
NaN
NaN
6951680
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5991217
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5327653
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4740048
NaN
NaN
4265221
NaN
NaN
3973280
假设向量存储在变量
a
中
a(isfinite(a))
将只提取有效的(有限的)条目。您可以使用isnan()函数来确定条目是否为数字。然后像
x = vector of values;
new_x = x(~isnan(x));
new_x是只包含有效数字的向量