2016-09-28 3 views
0

プロット用にマトリックス内のデータポイントを選択する方法について質問があります。私が持っているものは、行列(1504 x 2)です。ここで、最初の列は時間であり、2番目は測定値です。マトリックス内の行の違いによるデータの選択

多くの測定値は従来の測定値とほとんど同じですので、前回の測定値から0.1単位の値をグラフにしたいだけです。私は 'diff'を使って測定の違いを知ることができますが、以前の測定値から> 0.1までの行を(元のデータセットから)選択するにはどうすればよいですか?

私は

v= dataset; 
    v2= v(diff(v)<.1); 

答えて

0

がしきい値に比べて差分値のlogical indexを取得します:

例で
v = [1 2 3 4 5 6 7 8; .5 .56 .57 .7 .9 .87 .6 .4].'; % data 
th = .1; % threshold 
indKeep = [true; abs(diff(v(:,2)))>=th]; % this assumes the first value is always kept 
vPlot = v(indKeep,:); % apply as logical index into the rows of v 

v = 
    1.000000000000000 0.500000000000000 
    2.000000000000000 0.560000000000000 
    3.000000000000000 0.570000000000000 
    4.000000000000000 0.700000000000000 
    5.000000000000000 0.900000000000000 
    6.000000000000000 0.870000000000000 
    7.000000000000000 0.600000000000000 
    8.000000000000000 0.400000000000000 

vPlot = 
    1.000000000000000 0.500000000000000 
    4.000000000000000 0.700000000000000 
    5.000000000000000 0.900000000000000 
    7.000000000000000 0.600000000000000 
    8.000000000000000 0.400000000000000 
+1

すごいです!ありがとうルイス! – Sabre

+0

@Sabre Glad私は助けることができました:-) –

関連する問題