私は持ってい32x1 struct array
ます。この配列の各要素には、いくつかのフィールドがあります。どの要素が空(完了)であるかを確認しようとしていますが、空ではなかったすべての要素を含むベクトルを作成したいと思います。
たとえば、struct array
という名前があり、そこからフィールドが空かsatdata
どうかを確認したいので、 。SVIDは、私のさまざまな要素に対して1から32までの範囲である必要があります。ただし、欠落している要素がある場合は、である可能性があります。したがって、(この場合は)次のような列ベクトルを作成します。SVID
satdata(i).SVID
[1:4 6:10 11:32]
[1;2;3;4;6;7;8;9;10;11;12;13;14;15;16;17;18;19...32].
これは私がこれまでに持っているものです:
for i = 1:32
if isempty(satdata(i).SVID)
continue
else
svid = satdata(i).SVID;
svIdVec(i,:) = svid;
end
end
これは空のスロットを正しくチェックしますが、ベクトルを作成すると、のようなものが得られますsvIdVec = [0,2,3,4...32]
。この場合、最初の要素のみが空です。31x1
したがって、のようなベクトルを取得したいと思い[2,3,4...32]
ます。