Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
聚合相关性(R::dplyr)_R_Aggregate_Dplyr - Fatal编程技术网

聚合相关性(R::dplyr)

聚合相关性(R::dplyr),r,aggregate,dplyr,R,Aggregate,Dplyr,我试图在数据帧的不同子集上计算相关矩阵。我发现这段代码用于计算数据框中两个变量之间的相关性: library(dplyr) mtcars %>% group_by(cyl) %>% summarise(V1=cor(hp,wt)) 但是我想计算数据框中几个变量之间的相关矩阵。我希望这是返回(最好)作为相关矩阵列表。比如: mtcars %>% group_by(cyl) %>% cor(data.frame(hp,wt,qsec) 我可以用dplyr做这个吗?在我看来

我试图在数据帧的不同子集上计算相关矩阵。我发现这段代码用于计算数据框中两个变量之间的相关性:

library(dplyr)
mtcars %>% group_by(cyl) %>% summarise(V1=cor(hp,wt))
但是我想计算数据框中几个变量之间的相关矩阵。我希望这是返回(最好)作为相关矩阵列表。比如:

mtcars %>% group_by(cyl) %>% cor(data.frame(hp,wt,qsec)

我可以用dplyr做这个吗?

在我看来,由或dlply制作的好老
在这里更好,但是如果你真的想用
dplyr
,我想你可以用
do

o <- mtcars %>% group_by(cyl) %>% do(cor=cor(cbind(.$hp, .$wt, .$qsec)))
# Source: local data frame [3 x 2]
# Groups: <by row>

#   cyl        cor
# 1   4 <dbl[3,3]>
# 2   6 <dbl[3,3]>
# 3   8 <dbl[3,3]>
使用基本R和
by

o <- by(mtcars[, c('hp', 'wt', 'qsec')], mtcars$cyl, cor, simplify=F)

在我看来,由
或dlply编写的好老
在这里更好,但是如果你真的想使用
dplyr
,我想你可以使用
do

o <- mtcars %>% group_by(cyl) %>% do(cor=cor(cbind(.$hp, .$wt, .$qsec)))
# Source: local data frame [3 x 2]
# Groups: <by row>

#   cyl        cor
# 1   4 <dbl[3,3]>
# 2   6 <dbl[3,3]>
# 3   8 <dbl[3,3]>
使用基本R和
by

o <- by(mtcars[, c('hp', 'wt', 'qsec')], mtcars$cyl, cor, simplify=F)

在我看来,由
或dlply编写的好老
在这里更好,但是如果你真的想使用
dplyr
,我想你可以使用
do

o <- mtcars %>% group_by(cyl) %>% do(cor=cor(cbind(.$hp, .$wt, .$qsec)))
# Source: local data frame [3 x 2]
# Groups: <by row>

#   cyl        cor
# 1   4 <dbl[3,3]>
# 2   6 <dbl[3,3]>
# 3   8 <dbl[3,3]>
使用基本R和
by

o <- by(mtcars[, c('hp', 'wt', 'qsec')], mtcars$cyl, cor, simplify=F)

在我看来,由
或dlply编写的好老
在这里更好,但是如果你真的想使用
dplyr
,我想你可以使用
do

o <- mtcars %>% group_by(cyl) %>% do(cor=cor(cbind(.$hp, .$wt, .$qsec)))
# Source: local data frame [3 x 2]
# Groups: <by row>

#   cyl        cor
# 1   4 <dbl[3,3]>
# 2   6 <dbl[3,3]>
# 3   8 <dbl[3,3]>
使用基本R和
by

o <- by(mtcars[, c('hp', 'wt', 'qsec')], mtcars$cyl, cor, simplify=F)

这是一个老问题,但我在这里更新,以防对大家有所帮助

您可以使用
purrr
包中的函数将包含相关矩阵的TIBLE转换为可进一步操作的对象列表

具体来说,要扩展@mathematic.coffee提供的答案:

库(tidyverse)
数据(mtcars)
mtcars%>%
dplyr::分组人(气缸)%>%
dplyr::do(cor=cor(cbind(.$hp、.$wt、.$qsec))%%

purrr::transpose()%>%#%#这是一个老问题,但我在这里更新,以防对大家有所帮助

您可以使用
purrr
包中的函数将包含相关矩阵的TIBLE转换为可进一步操作的对象列表

具体来说,要扩展@mathematic.coffee提供的答案:

库(tidyverse)
数据(mtcars)
mtcars%>%
dplyr::分组人(气缸)%>%
dplyr::do(cor=cor(cbind(.$hp、.$wt、.$qsec))%%

purrr::transpose()%>%#%#这是一个老问题,但我在这里更新,以防对大家有所帮助

您可以使用
purrr
包中的函数将包含相关矩阵的TIBLE转换为可进一步操作的对象列表

具体来说,要扩展@mathematic.coffee提供的答案:

库(tidyverse)
数据(mtcars)
mtcars%>%
dplyr::分组人(气缸)%>%
dplyr::do(cor=cor(cbind(.$hp、.$wt、.$qsec))%%

purrr::transpose()%>%#%#这是一个老问题,但我在这里更新,以防对大家有所帮助

您可以使用
purrr
包中的函数将包含相关矩阵的TIBLE转换为可进一步操作的对象列表

具体来说,要扩展@mathematic.coffee提供的答案:

库(tidyverse)
数据(mtcars)
mtcars%>%
dplyr::分组人(气缸)%>%
dplyr::do(cor=cor(cbind(.$hp、.$wt、.$qsec))%%

purrr::transpose()%%>%#%#它计算每个单独的
cyl
hp
wt
之间的相关性。它计算每个单独的
cyl
hp
wt
之间的相关性。它计算每个单独的
cyl
hp
wt
之间的相关性。它是为每个单独的
cyl
计算
hp
wt
之间的相关性。非常感谢。这个答案非常全面@mathematic.coffee。我并没有致力于dplyr,我只是在努力学习。也许有一天我会发展到一个启蒙阶段,在这个阶段,所有的数据操作都会简化为基本的R命令<代码>do.call(rbind,lappy(o,`[`,lower.tri(o[[1]]))
或类似的呼叫后的
将允许每组一个接一个地报告双变量相关性。非常感谢。这个答案非常全面@mathematic.coffee。我不致力于dplyr,我现在只是尝试学习它。也许有一天我会发展到启蒙阶段所有数据操作都简化为基本的R命令。:)do.call(rbind,lappy(o,`[`,lower.tri(o[[1]]))
或类似的呼叫后的
将允许每组一个接一个地报告双变量相关性。非常感谢。这个答案非常全面@mathematic.coffee。我不致力于dplyr,我现在只是尝试学习它。也许有一天我会发展到启蒙阶段所有数据操作都简化为基本的R命令。:)do.call(rbind,lappy(o,`[`,lower.tri(o[[1]]))
或类似的呼叫后的
将允许每组一个接一个地报告双变量相关性。非常感谢。这个答案非常全面@mathematic.coffee。我不致力于dplyr,我现在只是尝试学习它。也许有一天我会发展到启蒙阶段所有数据操作都简化为基本的R命令。:
do.call(rbind,lappy(o,`[`,lower.tri(o[[1]])
或类似于
by
调用后的操作将允许为每组逐个报告双变量相关性。