Relocate element from a row to another
    7 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
Hello,i want to relocate an element from a row to an another and delete the other row.For example i have the matrix
A=[1 2 4 8 3 1;
   1 9 7 6 1  ;
   1 5 1     ]
and i want to relocate the 5 so i will have the matrix
A=[1 2 4 8 3 1;
   1 9 7 5 6 1]
7 comentarios
  the cyclist
      
      
 el 22 de Mzo. de 2015
				It's not possible to understand the rule you want to follow, from the one example you give.
Respuestas (2)
  the cyclist
      
      
 el 22 de Mzo. de 2015
         A=[1 2 4 8 3 1;
    1 9 7 6 1 0;
    1 5 1 0 0 0]
 A = [A(1,:);
     A(2,1:3) A(3,2) A(2,4:5)]
This is my best guess at what you want.
0 comentarios
  dpb
      
      
 el 22 de Mzo. de 2015
        
      Editada: dpb
      
      
 el 22 de Mzo. de 2015
  
      Well, it's not possible to write anything except the specific answer without a definition of the logic. Anything else is indiscernible from magic, not science.
But, let's see, addressing the question as asked...
>> id76=sub2ind(size(A'),4,2);
>> id5=sub2ind(size(A'),2,3);
>> B=reshape(A',1,[]);
>> B=reshape([B(1:id76-1) B(id5) B(id76:id5-1) B(id5+1:end)],size(A,2),[]).';
>> B(all(B==0|B==1,2),:)=[]
B =
   1     2     4     8     3     1
   1     9     7     5     6     1
>>
Needless to say, to make this of much use in general you'll have to have rules to locate the magic numbers used to compute the indices id5 and id76
0 comentarios
Ver también
Categorías
				Más información sobre Matrix Indexing en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



