def lag(a, n=1):
		"""
		Calculate the nth order discrete lag for time-series data.
		"""
		a = asanyarray(a)
						
		n = ravel(n)						# convert any input (int, range, list, tuple) to an array
		nmax = n.max()						# determines length of array to be returned

		ret_a = a[nmax-n[0]:-n[0]]			# lag for 1st element in n

		for i in n[1:]:						# lags for other elements in n
			ret_a = c_[ret_a,a[nmax-i:-i]]	# concatenate column-wise, along last axis
											
		return ret_a
