0

次のように、反復プロセスの結果が得られます。各反復の結果は、次のように並べて配置されます。

res = 
   43.7826   38.8460   38.6889   38.6912   38.6915
  107.0735   98.5577   98.1212   98.1170   98.1175
 -134.6218 -131.6938 -131.5378 -131.5352 -131.5352
 -105.9498 -103.1403 -102.9195 -102.9139 -102.9139

私がやりたいことは、各列の違いを示す 1 つのマトリックスと、ある列から次の列へのパーセンテージ変化を示す 1 つのマトリックスを作成することです。

これはループを使用して行うのは明らかに簡単ですが、ループを使用せずにこれを行う賢い方法はありますか (おそらく組み込みの Matlab 関数を使用します)。

ありがとう。

4

1 に答える 1

2

コマンド diff(...) は違いを実行します:

diff_res = diff(res,1,2)

この場合、2 番目の次元 (列) の最初の順序の差です。パーセンテージを計算できたら、次のようにします。

per_res = diff_res(:,1:4)./res(:,1:4).*100
于 2013-05-11T13:40:33.267 に答える