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: Creating Adjacency Matrix from a dataset
Replies: 7   Last Post: Oct 29, 2013 6:36 AM

Advanced Search

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

Posts: 5
Registered: 4/10/13
Re: Creating Adjacency Matrix from a dataset
Posted: Apr 16, 2013 10:39 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

"Bruno Luong" <b.luong@fogale.findmycountry> wrote in message <kk3bb6$e55$1@newscl01ah.mathworks.com>...
> "Tehmina" wrote in message <kk33jl$nl2$1@newscl01ah.mathworks.com>...
> > "Bruno Luong" <b.luong@fogale.findmycountry> wrote in message <kk0n50$639$1@newscl01ah.mathworks.com>...
> > > A=[0 1
> > > 0 2
> > > 0 5
> > > 1 2
> > > 1 3
> > > 1 4
> > > 2 3
> > > 2 5
> > > 3 1
> > > 3 4
> > > 3 5
> > > 4 0
> > > 4 2
> > > 5 2
> > > 5 4];
> > >

> > > >> accumarray(A+1,1)
> > >
> > > ans =
> > >
> > > 0 1 1 0 0 1
> > > 0 0 1 1 1 0
> > > 0 0 0 1 0 1
> > > 0 1 0 0 1 1
> > > 1 0 1 0 0 0
> > > 0 0 1 0 1 0
> > >
> > > % Bruno

> >
> > hi Bruno Luong
> > thanks for the solution and your time. this solution works well with small example. the actuall size of dataset i am working on is big. it has 1049866 rows in array A. and when i applied your solution to that dataset it gives me following error massege:
> >
> > ??? Error using ==> accumarray
> > Maximum variable size allowed by the program is exceeded.
> >
> > now what shud i do? plz help
> > Thanks
> >

>
> Create in sparse format:
>
> accumarray(A+1,1,[],[],0,true)
>
> or equivalently use sparse() command
>
> sparse(A(:,1)+1,A(:,2)+1,1)
>
> % Bruno


Thanks a lot for your help
i have used ur sparse commad and it works well.
now i have another problem
the following is my code:

%% Sparse power method
n = 425875;
i = data(:,[1]);
j = data(:,[2]);
G=sparse(data(:,1)+1,data(:,2)+1,1);

%% Page Rank
p = 0.85;
delta = (1-p)/n;
c = sum(G,1);
k = find(c~=0);
D = sparse(k,k,1./c(k),n,n);
e = ones(n,1);j
I = speye(n,n);
x = (I - p*G*D)\e;
x = x/sum(x)

over here this command is taken from ur help
G=sparse(data(:,1)+1,data(:,2)+1,1); only A is replaced with data

but the command D = sparse(k,k,1./c(k),n,n); is giving error
the following is the error msg

??? Error using ==> sparse
Index exceeds matrix dimensions.

Error in ==> reading2 at 14
D = sparse(k,k,1./c(k),n,n);

can u plz correct this statement
thanks for ur time....



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.