1

variable にデータが格納されていますdata

 data =  
    [43.98272955    39.55809471;            
    -49.51656799    28.57164726;
    -9.475861028    -44.31264255;
    27.14884251     2.603921223;
    -2.914496888    7.864022006;
    4.093025860     4.816211687;
    -12.11007479    5.797539648;
    -1.653535904    -12.49864642;
    5.978990391     1.229984916;
    0.9837133282    -2.001124423;
    5.674977844     6.323209942;
   -9.574459589     3.696791663;
    0.3410452503    -7.338955191]

ただし、複数の x に対応するデータのみを使用する必要があります。例:

   if x = 3,

3の複数行のみを保存したいので、

newdata = [-9.475861028 -44.31264255; 
4.093025860 4.816211687; 
5.978990391 1.229984916;
-9.574459589 3.696791663]

それ、どうやったら出来るの?

PS コマンド textscan を使用します。

4

3 に答える 3

5

これは、索引付けを使用すると簡単です。

newData = data(3:3:end,:)
于 2013-04-15T14:10:49.380 に答える
1

質問を正しく理解した場合:

データ(x:x:長さ(データ),:)

于 2013-04-15T14:10:56.530 に答える
-1

mod(モジュロ)関数を使用して行ごとにスキャンするだけで、目的の倍数に対応する行を抽出できます。例えば:

x=3;
newdata=[];

for k=1:size(data,1)
  if mod(k,x)==0
    newdata=[newdata; data(k,:)];
  end
end
于 2013-04-15T14:17:55.450 に答える