Extracting Rows of a Matrix
    157 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
I have a matrix 'A' of size 8*5. How to extract the first 4 rows of this Matrix.
 A =  90.6848   72.5836   54.4646   36.3276   18.1728
      99.7018   79.8089   59.8924   39.9521   19.9880
     110.7026   88.6271   66.5192   44.3788   22.2058
     124.4195   99.6278   74.7902   49.9066   24.9766
     141.9931  113.7314   85.4017   57.0036   28.5365
     165.3005  132.4561   99.5049   66.4459   33.2780
     197.6559  158.4928  119.1482   79.6196   39.9045
     245.4805  197.0868  148.3494   99.2610   49.8139
1 commentaire
Réponse acceptée
  Star Strider
      
      
 le 27 Mar 2017
        First_Four_Rows = A(1:4,:);
4 commentaires
  Star Strider
      
      
 le 28 Mar 2017
				No worries. I needed to understand what you want.
This works:
Extracted = A((A(:,1)>99) & (A(:,1)<140),:);
Plus de réponses (2)
  John BG
      
 le 27 Mar 2017
        With
A(1:4,:)
you still get a 2D matrix as result
If you want to pull elements and get a 1D vector then
A([1:4 1:end])
same elements, lined up, 4x5 now 1x44
if you find these lines useful would you please mark my answer as Accepted Answer?
To any other reader, if you find this answer of any help, please click on the thumbs-up vote link,
thanks in advance for time and attention
John BG
1 commentaire
  Jan
      
      
 le 28 Mar 2017
				If the original matrix has the dimension [8 x 5] and A M wants to extract 4 rows, how could the result be a [1 x 44] vector? Your "1:end" means "1:numel(A)" here and is not useful.
Voir également
Catégories
				En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




