2

に重複はありませんA(:,2:end)

A(:,2:end)toの要素B(:,2)と対応する要素をNaNA(:,1)を無視して入れたいと思います。B(:1)

A = [2 3 5;
     1 9 NaN]


B = [2 3;
     2 5;
     1 9]

B(:,2)unique(A(:,2:end))と置くことによって作ることができますB(ismember(B(:,2),NaN),:)=[]

しかし、どのようにマッチング部分を行うのですか?

4

2 に答える 2

2

ベクトル化されたソリューションは次のとおりです。

[Y, X] = find(true(size(A, 1), size(A, 2) - 1));
B = [A(X(:), 1), reshape(A(:, 2:end), [], 1)];
B(any(isnan(B), 2), :) = []; %// Remove NaN values
于 2013-07-30T08:00:09.100 に答える