diff general/arrutils/lags.m @ 4:e44f49929e56

Adding reorganised general toolbox, now in several subdirectories.
author samer
date Sat, 12 Jan 2013 19:21:22 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/general/arrutils/lags.m	Sat Jan 12 19:21:22 2013 +0000
@@ -0,0 +1,20 @@
+function Y=lags(X,tau)
+% lags - returns lagged versions of sequence in X
+%
+% lags :: [[N,T]], [[K]->integer]~'K lags' -> [[N,T2,K]].
+% 
+% T2 is the maxmimum length such that all lagged sequences contain valid data.
+
+% doesn't work for data sequences yet
+if isdata(X), X=head(X); end
+
+tau=tau-min(tau); % zero base lags
+[N T0]=size(X);
+M=length(tau);
+T=T0-max(tau);
+Y=zeros(N,T,M);
+
+tt=1:T; 
+for i=1:length(tau)
+	Y(:,:,i)=X(:,tau(i)+tt);
+end