Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.matlab

Topic: Converting z data to matrix
Replies: 3   Last Post: Jan 28, 2013 11:11 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Steven Lord

Posts: 17,944
Registered: 12/7/04
Re: Converting z data to matrix
Posted: Jan 28, 2013 11:11 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply



"Ian " <ikirby23@yahoo.com> wrote in message
news:ke0stn$is9$1@newscl01ah.mathworks.com...
> Hi guys,
>
> I wonder if any one could be so kind to help me with what I'm sure is
> probably relatively straight forward. If I have x,y, and z data as
> follows:
>
> X= 1 2 3 4 5
> y= 1 2 3 4 5
> z= 8 4 9 7 3
>
> Is there any way of making z into the matrix from the above:
>
> Z= 0 0 0 0 3
> 0 0 0 7 0
> 0 0 9 0 0
> 0 4 0 0 0 8 0 0 0 0


How do you get from x, y, and z to this matrix? If x(k) and y(k) are the
indices of the element whose value is z(k) then this should result in a
diagonal matrix NOT an off-diagonal. If instead you flipped x then we'd
receive the z you requested.

x= [5 4 3 2 1].';
y= [1 2 3 4 5].';
z= [8 4 9 7 3].';
accumarray([x, y], z)

Alternately, if your matrix is going to be sparsely populated (only a small
percentage of the elements will be nonzero) then look at the help for SPARSE
and use it instead of ACCUMARRAY or use ACCUMARRAY with the ISSPARSE input
set to true.

--
Steve Lord
slord@mathworks.com
To contact Technical Support use the Contact Us link on
http://www.mathworks.com




Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.