値の配列があり、値が最初の配列にない別の配列を作成したいと考えています。
例:
load('internet.mat')
最初の列には MB 単位の値が含まれています。次のように考えました。
MB_no = setdiff(v, internet(:,1))
ここで、v は、internet.mat の行数に等しい長さの 0 ベクトルです。しかし、それはうまくいきません。
では、どうすればよいのでしょうか。
値の配列があり、値が最初の配列にない別の配列を作成したいと考えています。
例:
load('internet.mat')
最初の列には MB 単位の値が含まれています。次のように考えました。
MB_no = setdiff(v, internet(:,1))
ここで、v は、internet.mat の行数に等しい長さの 0 ベクトルです。しかし、それはうまくいきません。
では、どうすればよいのでしょうか。
にない値を定義するには、可能な値の範囲を指定する必要がありますinternet
。範囲がであるとすると、 の最初の列にないv = 1:10
のsetdiff(v,internet(:,1))
値が得られます。1:10
internet
最初の列は必要ないようです。あなたは簡単に行うことができます:
MB_no=internet(:,2:end);
正の整数のみがあり、その範囲に表示されない整数internet(:,1)
を見つけたいと仮定すると、簡単に実行できます。[1,...,max( internet(:,1) )]
app = [];
app( internet(:,1) ) = 1;
MB_no = find( app == 0 );
これはバケットソートに似ています。