How to trim down data in an array
    8 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    Telema Harry
 il 10 Nov 2021
  
    
    
    
    
    Modificato: Walter Roberson
      
      
 il 8 Lug 2025
            Hi,
I have a column vector containing 1000 element. 
I really need to reduce the size of the vector to 100 to be able to use it further in my program. 
The reduced data must contain the first and last element of the original vector.
My current code is shown below. It does not capture the last element. 
Thanks for your help.
    a = 1;
    b = 200;
    A = (b-a).*rand(1000,1) + a;
% 
tt = floor(length(A)/10);
    if tt == 0
        tt = 1;
    end
red_A = A(1:tt:end)
4 Commenti
  Ünal Dikmen
 il 8 Lug 2025
				
      Modificato: Walter Roberson
      
      
 il 8 Lug 2025
  
			yes, you are right. I thought you wanted to get especially the last element in this vector. if you want to get a constant number of elements (100 as in this example) in a vector, you can use code below:
noel = 100;
npts = numel(A);
interval = ceil(npts-1)/noel; 
red_A=A(1:interval:npts);
using this code you can get the number of elements noel in the vector.
  Walter Roberson
      
      
 il 8 Lug 2025
				a = 1;
b = 200;
A = (b-a).*rand(1000,1) + a;
noel = 100;
npts = numel(A);
interval = ceil(npts-1)/noel; 
red_A=A(1:interval:npts);
size(red_A)
Your code has the warning about non-integer increment, and produces a vector that is 1 element too long
red_A(end) == A(end)
But at least the last element appears to be correct.
Risposta accettata
  Walter Roberson
      
      
 il 10 Nov 2021
        
      Modificato: Walter Roberson
      
      
 il 8 Lug 2025
  
      tt = floor(linspace(1,length(A),100));
red_A = A(tt) ;
2 Commenti
Più risposte (1)
  KSSV
      
      
 il 10 Nov 2021
         a = 1;
b = 200;
A = (b-a).*rand(1000,1) + a;
x1 = 1:length(A) ; 
x2 = linspace(1,length(A),100) ;
Anew = interp1(x1,A,x2) ; 
Vedere anche
Categorie
				Scopri di più su Resizing and Reshaping 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!



