0

次のマトリックスがあります

 aa =
  245.2708    2.6912   21.0000
  245.2778    2.3969   21.0000
  245.2847    4.9097   21.0000
  245.2917    5.5113   21.0000
  245.2986    6.9260   21.0000
  245.3056   20.5392   21.0000
  245.3403   40.6676   21.0000
  245.3472   28.8638   21.0000
  245.3542   45.3048   21.0000
  245.3611   47.9512   21.0000
  245.3681   NaN       NaN
  245.3889   15.3675   21.0000
  245.3958   15.0250   21.0000

 Time =aa(:,1);
 x    =aa(:,2);
 y    =aa(:,3);

ここで、新しいベクトル 'z' を作成する必要があります。'x' が 'y' より大きい場合は 'x' のすべての値を含み、'x' が 'y' より小さい場合は 'z' を ' y'. 'z' の出力は次のようになります。

z =

  21
  21
  21
  21
  21
  21
  40.6676
  28.8638
  45.3048
  47.9512
  NaN
  21
  21
4

3 に答える 3

0
z = zeros(size(x));
idx_x = x>y;
idx_y = x<y;
z(idx_x) = x(idx_x);
z(idx_y) = y(idx_y);

xこれは、とが等しい場合を考慮していないことに注意してください。y数値を と比較できるかどうかはわかりませんNaN

于 2013-09-24T10:37:27.203 に答える