# Re: [R] Calculating monthly var-cov matrix on non-overlapping rooling window basis

From: Megh Dal <megh700004_at_yahoo.com>
Date: Wed, 27 Feb 2008 20:04:53 -0800 (PST)

> library(zoo)
> date.data = seq(as.Date("01/01/01", format = "%m/%d/%y"),as.Date("06/25/02", format = "%m/%d/%y"), by = 1)
> len = length(date.data)
> data1 = zoo(matrix(rnorm(len), nrow = len), date.data )

```2001-01-01 -1.5128990
2001-01-02 -0.2939971
2001-01-03  1.6387866
2001-01-04 -0.8107857
2001-01-05  0.7966224
2001-01-06  0.6007594
```

>
> lapply(split(data1, format(index(data1), "%m")), cov)
Error in FUN(X[[1L]], ...) : supply both 'x' and 'y' or a matrix-like 'x'

However I tried with an 'ifelse' condition :   > lapply(split(data1, format(index(data1), "%m")), ifelse(dim(data1) > 1, cov, var))

Still I am getting error. What to do?

Henrique Dallazuanna <wwwhsd_at_gmail.com> wrote:   Perhaps something like this:

lapply(split(data1, format(index(data1), "%m")), cov)

On 27/02/2008, Megh Dal wrote:
> let create a 'zoo' object :
>
> library(zoo)
> date.data = seq(as.Date("01/01/01", format = "%m/%d/%y"), as.Date("06/25/02", format = "%m/%d/%y"), by = 1)
> len = length(date.data)
> data1 = zoo(matrix(rnorm(2*len), nrow = len), date.data )
>
> Now I want to create an 3 dimensional array (suppose name " var.cov") where, var.cov[,,i] gives the Variance-covariance matrix for i-th month of data1. That is I want to calculate monthly variance-covariance matrix on non-overlapping rolling window basis.
>
> Any suggestion?
>
>
>
> ---------------------------------
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> and provide commented, minimal, self-contained, reproducible code.
>

```--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O

---------------------------------

[[alternative HTML version deleted]]

______________________________________________
R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help