Subtracting 1 matrix from several columns in a larger matrix
    3 views (last 30 days)
  
       Show older comments
    
    Jamie England
 on 11 Feb 2019
  
    
    
    
    
    Commented: madhan ravi
      
      
 on 11 Feb 2019
            Hi all, this is probably an easy one but my minds gone blank. Basically I have a matrix 3553450x8 containing different measured data, I am looking to subtract 3 of these columns by a seperate matrix. anyone know how to do this, cheers
2 Comments
Accepted Answer
  madhan ravi
      
      
 on 11 Feb 2019
         M(:,1:3) - N
  %  ^^^---- represent three columns can be any three columns 
%M is of size 3553450x8 
%N is of size 3553450x1 
1 Comment
More Answers (1)
  aara
      
 on 11 Feb 2019
        You could form a similar sized matrix of zeros, place the desired values which you wish to subtract from the original data and the perfrom the subtraction operation:
placeholder = zeros(3553450,8);
placeholder(:,i:j) = data_to_remove %choose i and j to be the columns you wish to subtract,
%  they must be adjacent to each other.
%if data is not adjacent to each other then do them manually via:
placeholder(:,i) = column1_data_to_remove;
placeholder(:,j) = column2_data_to_remove;
placeholder(:,k) = column3_data_to_remove;
dataMatrix = dataMatrix - data_to_remove;
Save on memory by using a sparse matrix with the placeholder. 
0 Comments
See Also
Categories
				Find more on Sparse Matrices in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!