Mar 17 2020 09:08 AM
Good day to everyone.
I am trying to create a diagonal matrix of dimension (900x900) from a vector data of n=900. Can someone guide me through how best I can generate the matrix?
Thanks
Mar 17 2020 09:14 AM
Mar 17 2020 09:22 AM
ok, Thanks.@Savia
I have a single column that has 900 cells contained with data. I want to split these 900-cell vector data into a diagonal matrix with each data on the column spread across the diagonal of the matrix formed. e.g. say a1=2, a2=3 and a3=5....I want a diagonal matrix that will have a1=2, b2=3,c3=5 etc. with other cells of the matrix having "0" values.
Mar 17 2020 09:45 AM
@ogungbile Thanks, that helped a lot.
I attach a file with both a traditional formula approach and one based on the newer dynamic array functions (Office 365 only).
Mar 17 2020 09:48 AM
Thanks, I got the code already.
It is:
{=IF(A1:A3=TRANSPOSE(A1:A3),A1:A3,"0")}
Where A1:A3 indicates the vector column range. They can be adjusted as appropriate depending on the size of the vector column. For example, mine is a 900-cell vector. Therefore, I'll have:
{=IF(A1:A900=TRANSPOSE(A1:A900),A1:A900,"0")}
Thank you
Mar 17 2020 09:50 AM
Thank you very much. This is very helpful. I really do appreciate.
Mar 18 2020 03:24 AM
@ogungbile No problem. There are many ways of doing this, it turns out :)
Jun 06 2022 03:20 PM