Indexing and replacing value in a zero matrix based on a table
    5 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    Sunny
 il 19 Dic 2018
  
    
    
    
    
    Risposto: Walter Roberson
      
      
 il 19 Dic 2018
            Hello,
I am trying to input a value in a zeros matrix of size 11*10. This is based on a variable which has three columns (Number, ID, ANS) as shown below. Now I want to insert the value in ANS which is -1 in the zeros matrix at 10x5 (ID x Number) position (index). Any suggestion on how this can be done?
Number      ID    ANS
      5             10     -1
0 Commenti
Risposta accettata
  Walter Roberson
      
      
 il 19 Dic 2018
        If your Number and ID and ANS are scalar then
YourMatrix(Number, ID) = ANS;
If they are vectors then there are multiple approaches, including:
YourMatrix( sub2ind(size(YourMatrix), Number(:), ID(:)) ) = ANS(:);
Or
YourMatrix = YourMatrix + accumarray( Number(:), ID(:), ANS(:), size(YourMatrix) );
and there are approaches using sparse.
0 Commenti
Più risposte (1)
  Arvind Sathyanarayanan
      
 il 19 Dic 2018
        Is this what you're looking for?
ID = 10; Number = 5; Ans = -1;
tmat = zeros(11,10);
tmat(ID,Number)=Ans;
0 Commenti
Vedere anche
Categorie
				Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!