首页 > 解决方案 > 如何计算向量与 data.frame 的每一列之间的相关性

问题描述

嘿,我有一点误解,需要一点指导。我想计算向量(或具有 1 列的 df)与数据帧的每一行之间的相关性。

为了更好地理解,我做了一个图形:!(https://ibb.co/51Fk5KB

所有行都有一个日期并适合as.Date另一个数据框的唯一性。因为我想在 12 个月的滚动窗口中计算它,所以我运行:

df1 <- read.zoo(df1)
df2 <- read.zoo(df2)
new_df <- rollapplyr(??????????, 12, function(x) cor(x[, 1], x[, 2]), by.column = TRUE, fill = NA)
new_df <- fortify.zoo(new_df)

现在我问你:我必须在????????????中插入什么?点?还是我什至必须更改/添加其他内容?

标签: rdataframe

解决方案


You can use calculate the correlation between a vector and columns of a dataframe like so cor(vector, dataframe)

Example

Create a vector and dataframe :

set.seed(1234)
vec <- (runif(150, 0, 10))

iris2 <- iris[,c(1:4)] # 150 x 4 dataframe

Now calculate correlations

cor(vec, iris2)

# Correlations
# -0.0187099581910839078691 -0.0233219261874525844724 -0.0063229780212239634907  0.0138003706052788940178 

推荐阅读