如何使用tidyverse计算横截面相关性的时间序列

如何使用tidyverse计算横截面相关性的时间序列,r,tidyverse,tidy,R,Tidyverse,Tidy,我有一个面板数据集。我想计算相关性。我已经计算了横截面相关性,现在我想计算这些横截面相关性的时间序列平均值。我举了一个很小的例子 library(tidyverse) library(corrr) data<- tribble( ~year, ~V1, ~V2, ~V3, ~misc_var, 2018, 5, 6, 5, "a", 2018, 4, 6, 4, "

我有一个面板数据集。我想计算相关性。我已经计算了横截面相关性,现在我想计算这些横截面相关性的时间序列平均值。我举了一个很小的例子

library(tidyverse)
library(corrr)

data<- tribble(
        ~year, ~V1, ~V2, ~V3, ~misc_var,
        2018,   5,   6,   5,       "a",
        2018,   4,   6,   4,       "b",
        2018,   3,   2,   3,        NA,
        2013,   5,   8,   2,       "4",
        2013,   6,   3,   8,       "8",
        2013,   4,   7,   5,        NA
)


pearson_corr<-data%>%
        select_if(is.numeric)%>%
        group_by(Month)%>%
        group_map(~correlate(.x))
库(tidyverse)
图书馆(corrr)
数据%
分组单位(月)%>%
组映射(~correlate(.x))

问题中未指定精确输出,但这会产生两列输出,其中第一列为年份,第二列为相关矩阵列表

library(dplyr)
library(corrr)

out <- data %>%
  select(where(is.numeric)) %>%
  group_by(year) %>%
  summarize(corr = list(correlate(.[-1])), .groups = "drop")

str(out)
## tibble[,2] [2 x 2] (S3: tbl_df/tbl/data.frame)
##  $ year: num [1:2] 2013 2018
##  $ corr:List of 2
##   ..$ : cor_df[,4] [3 x 4] (S3: cor_df/tbl_df/tbl/data.frame)
##   .. ..$ term: chr [1:3] "V1" "V2" "V3"
##   .. ..$ V1  : num [1:3] NA 0.163 0.598
##   .. ..$ V2  : num [1:3] 0.163 NA -0.371
##   .. ..$ V3  : num [1:3] 0.598 -0.371 NA
##   ..$ : cor_df[,4] [3 x 4] (S3: cor_df/tbl_df/tbl/data.frame)
##   .. ..$ term: chr [1:3] "V1" "V2" "V3"
##   .. ..$ V1  : num [1:3] NA 0.163 0.598
##   .. ..$ V2  : num [1:3] 0.163 NA -0.371
##   .. ..$ V3  : num [1:3] 0.598 -0.371 NA

out$corr[[1]]
## # A tibble: 3 x 4
##   term      V1     V2     V3
##   <chr>  <dbl>  <dbl>  <dbl>
## 1 V1    NA      0.163  0.598
## 2 V2     0.163 NA     -0.371
## 3 V3     0.598 -0.371 NA  
库(dplyr)
图书馆(corrr)
超出%
选择(其中(为数值))%>%
组别(年份)%>%
汇总(corr=list(correlate(.[-1]),.groups=“drop”)
str(外)
##tibble[,2][2x2](S3:tbl_df/tbl/data.frame)
##$year:num[1:2]2013年至2018年
##$corr:2人名单
##..$:cor_df[,4][3 x 4](S3:cor_df/tbl_df/tbl/data.frame)
##   .. ..$ 术语:chr[1:3]“V1”“V2”“V3”
##   .. ..$ V1:num[1:3]NA 0.163 0.598
##   .. ..$ V2:num[1:3]0.163 NA-0.371
##   .. ..$ V3:num[1:3]0.598-0.371 NA
##..$:cor_df[,4][3 x 4](S3:cor_df/tbl_df/tbl/data.frame)
##   .. ..$ 术语:chr[1:3]“V1”“V2”“V3”
##   .. ..$ V1:num[1:3]NA 0.163 0.598
##   .. ..$ V2:num[1:3]0.163 NA-0.371
##   .. ..$ V3:num[1:3]0.598-0.371 NA
out$corr[[1]]
###tibble:3 x 4
##术语V1 V2 V3
##         
##1 V1 NA 0.163 0.598
##2 V2 0.163 NA-0.371
##3 V3 0.598-0.371 NA