• 締切済み

matlab初心者の質問

matlabに関する質問です。(私は初心者です。) 例えば A=[1 2 3 … n] のような行列があった場合、 B=[1 1+2 1+2+3 … sum(A(1:n))] のような行列を表示するにはどのようなコードを書けばいいのでしょうか。

みんなの回答

  • Kules
  • ベストアンサー率47% (292/619)
回答No.2

cumsumを使うとかですかね。 http://www.mathworks.co.jp/jp/help/matlab/ref/cumsum.html 参考になれば幸いです。

hiderigami
質問者

お礼

私、cumsumは今回初めて知ることとなり、非常に参考になりました。 ご回答、本当にありがとうございます。

  • masudaya
  • ベストアンサー率47% (250/524)
回答No.1

私も初心者です. A=[a1,a2,・・・,an] という行ベクトルの時, B=[a1,a1+a2,a1+a2+a3,・・・,Σ(k=1 to n)ak] と言うという行ベクトルを求めるという意味でしょうか. そうであれば,つたないコードになりますが, n=size(A,2); B=zeros(1,n); for k=1:n B(k)=sum(A(1:k)); end で求められると思います. きっともっとうまい方法あると思いますが, これでも求められます.

hiderigami
質問者

お礼

本当にありがとうございます。 おかげさまで作業がスムースに進みそうです。大変助かりました。 私もこれから精進していこうと思います。

関連するQ&A