自分より大きい次元数​をもつ配列に自分を代​入する方法

1 visualización (últimos 30 días)
Yuki Koyama
Yuki Koyama el 29 de Mzo. de 2019
Comentada: Yuki Koyama el 29 de Mzo. de 2019
たとえば,代入される側の行列をAとして
A=zeros(100,100);
として初期化します.
そのあと,あるデータの列ベクトル dataが
data=[1;2;3;4;5];
のようにあるとします.
ここで,Aにdataを代入した結果として,A(1,1)からA(5,1)までのところにデータが格納したいです.つまり代入によって行列Aは
A=
1 0 0 0 0 ...
2 0 0 0 0 ...
3 0 0 0 0 ...
4 0 0 0 0 ...
5 0 0 0 0 ...
0 0 0 0 0 ...
.............
のようにするためにはどうすればいいですか?
一例として,for構文によって
for i = 1:size(data,1)
A(i,1)=data(i,1)
end
のようにすれば一応所望の結果は得られますが,より簡潔な方法はないでしょうか.

Respuesta aceptada

madhan ravi
madhan ravi el 29 de Mzo. de 2019
No loops needed , use simple indexing:
A=zeros(100);
Data=(1:5).';
A(1:numel(Data),1)=Data
  1 comentario
Yuki Koyama
Yuki Koyama el 29 de Mzo. de 2019
Thank you for your very prompt answer!
I'm so happy to know the much simpler code :)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre 行列および配列 en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!