### 5.25.16 Parzen window function : parzen_window

parzen_window takes as arguments a real vector v of length n and optionally an interval n1 .. n2 (with default values n1=0 and n2=n−1 ), and returns the elementwise product of the vector [vn1,…,vn2] and the vector w of length N=n2−n1+1 defined by

wk=

⎧
⎪
⎪
⎨
⎪
⎪
⎩

⎛ ⎝ | 1−6 xk2 | ⎛ ⎝ | 1−xk | ⎞ ⎠ | ⎞ ⎠ | ,

⎪
⎪
⎪
⎪

N−1
2

−k

⎪
⎪
⎪
⎪

≤

N−1
4

,

2 | ⎛ ⎝ | 1−xk | ⎞ ⎠ | 3,

otherwise,

where xk=|1−2 k/N−1| , for k=0,1,…,N−1 . For example, input :

L:=parzen_window(randvector(1000,0..1)):;

followed by scatterplot(L).