A = 1*1000 matrix
I need another matrix Y which has all the rows as A
Y = 1000*1000 matrix
How to do that??

 採用された回答

Torsten
Torsten 2022 年 3 月 12 日

0 投票

Y = repmat(A,1000,1)

2 件のコメント

Amy Topaz
Amy Topaz 2022 年 3 月 12 日
Thank you
What about when Y has all columns as A?
Torsten
Torsten 2022 年 3 月 12 日
編集済み: Torsten 2022 年 3 月 12 日
My guess is that you mean
Y = repmat(A.',1,1000)
Since the columns of A have 1 element and those of Y have 1000 elements, Y cannot have all its columns as A.

サインインしてコメントする。

その他の回答 (1 件)

John D'Errico
John D'Errico 2022 年 3 月 12 日
編集済み: John D'Errico 2022 年 3 月 12 日

0 投票

An alternative to repmat is to use a dot product (if you are an old APL person like me, then the phrase "outer product" will come to mind.) Thus, if A is a 1x1000 vector, then
B = ones(1000,1)*A;
B will be a matrix that has rows identical to A, with 1000 copies thereof.
Similarly, if you instead want columns that are copies of the row vector A, you can do this:
C= A.'*ones(1,1000);
C will be a 1000x1000 matrix, with columns given as A, and 1000 such columns.
Note my use of the .' operator there, since if you use the ' operator instead, then it will form the conjugate transpose if A had any complex or purely imaginary elements.

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

質問済み:

2022 年 3 月 12 日

コメント済み:

2022 年 3 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by