- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 corr() 函数来计算加权权重。它的工作方式是第一个参数应该是一个矩阵,其中有两列对应于我们希望计算其相关性的两个变量,第二个参数是要应用于每对观察值的权重向量。
这是一个例子。
> head(d)
Shade_tolerance htot
1 4.56 25.0
2 2.73 23.5
3 2.73 21.5
4 3.97 17.0
5 4.00 25.5
6 4.00 23.5
> head(poids)
[1] 5.200440e-07 5.200440e-07 1.445016e-06 1.445016e-06 1.445016e-06 1.445016e-06
> corr(d,poids)
[1] 0.1357279
所以我明白了,我可以在我的矩阵上使用它,但我想根据一个因素的水平计算不同的相关性。假设我正在使用 tapply() 函数。
> head(d2)
Shade_tolerance htot idp
1 4.56 25.0 19
2 2.73 23.5 19
3 2.73 21.5 19
4 3.97 17.0 18
5 4.00 25.5 18
6 4.00 23.5 18
所以我的梦想是做这样的事情:
tapply(as.matrix(d2[,c(1,2)]), d2$idp, corr)
除了如您所知在 tapply() 中第一个元素需要是矢量而不是矩阵。
有人能为我提供任何解决方案吗?
非常感谢您的帮助。
编辑:我刚刚意识到我在向您展示的数据框部分中缺少加权相关性的权重。所以它会知道如何根据因子的水平来获取矩阵和权重。
> head(df)
Shade_tolerance htot idp poids
1 4.56 25.0 19 5.200440e-07
2 2.73 23.5 19 5.200440e-07
3 2.73 21.5 19 1.445016e-06
4 3.97 17.0 19 1.445016e-06
5 4.00 25.5 19 1.445016e-06
6 4.00 23.5 19 1.445016e-06
我希望它是清楚的。
最佳答案
如果您有一个“巨大的”data.frame,那么使用 data.table
可能会有所帮助:
require(data.table)
dt <- as.data.table(df)
setkey(dt, "idp")
dt[, list(corr = corr(cbind(Shade_tolerance, htot), poids)), by=idp]
# idp corr
# 1: 18 0.9743547
# 2: 19 0.8387363
关于r - 使用因子水平将 corr 函数应用于矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15380797/
我试图使用 cor 函数找到 data.frame 对象每一列中的最大相关性。假设这个对象看起来像 A N A B C
它运行良好,直到它不是,并且不知道我做错了什么。我已将其简化为一个非常简单的 datsaset t: 1 2 3 4 5 6 7 8 0 3 16 3
我正在尝试使用 tqdm 或其他一些库在以下代码行中显示进度条: corrmatrix = adjClose.corr('spearman') 其中 adjClose 是一个数据框,其中包含许多股票代
我想在本质上创建列 bool 值后计算 Pandas 数据框的两列之间的相关系数。原版table有两列:一个 Group带有两个处理组之一的列,现在是 bool 值,还有一个 Age团体。这些是我要计
我想知道 MATLAB 是否有一个工具箱可以对稀疏矩阵进行常见的矩阵运算。 使用稠密矩阵,我可以计算相关图矩阵: R = rand(10,100) [r,p] = corr(R) 对于稀疏矩阵,我很想
我正在尝试使用 corr() 函数来计算加权权重。它的工作方式是第一个参数应该是一个矩阵,其中有两列对应于我们希望计算其相关性的两个变量,第二个参数是要应用于每对观察值的权重向量。 这是一个例子。 >
我有一个数据框如下: fsym EOS BTC BNB time
我有以下 pandas 数据框 Top15: 我创建了一个列来估计每人可引用文档的数量: Top15['PopEst'] = Top15['Energy Supply'] / Top15['Energ
我多次使用 pandas corr() 方法。但我不知道 pandas corr() 是否应用自动数据规范化。我知道必须在数据归一化之后进行关联。 我的问题是,如果我使用 pandas corr()
我想创建一个相关性,其中一个变量作为自变量,多个附加变量作为因变量,然后将其转换为热图。 我正在关注这些directions 。 我的代码: df_corr_interest = df[df.colu
我正在学习如何在 python3 中使用 pandas 库,并且遇到了 dataframe.corr() 的问题 这是我的数据集的示例 Date,Gender,Age at Booking,Curre
我有两个完美(或完全不完美?)相关的数字,我想找到它们之间的相关性。原始场景不同且更复杂,但问题出在 pg 使用的相关方法中的某个地方。请考虑以下查询: WITH all_series AS
我有几个价格返回系列,我想以日期之间没有重叠的方式计算滚动 N 天相关性,即,如果我的第一个相关矩阵属于 [2000-04-05 - 2000 -06-04],下一个相关矩阵应该属于[2000-06-
我是 pandas/python 的新手。我想知道函数 .corr 在计算相关性时如何删除具有多个变量的数据帧的空数据。 例如,假设我有以下数据框: # 'A1' 'A2' 'A3' 1
在 Pandas 中,我们可以用 .corr() 生成相关矩阵.我的问题很简单:是否保留了原始数据框的列顺序?从我的测试来看似乎是这样,但我想确定一下。 我问是因为我在 Python 3.7.3 上,
Pandas 提供两种不同关联函数的原因是什么? DataFrame.corrwith(other, axis=0, drop=False): Correlation between rows or
编辑以显示原始数据框的示例: df.head(4) shop category subcategory season date 20
我在 R 中使用随机森林的回归模型,我发现参数 corr.bias 根据手册是“实验性的”,我的数据是非线性的,我只是想知道将此参数设置为 true 是否可以增强结果,加上我不知道它对于非线性数据到底
x=[0.3, 0.3, 0.3, ..., 0.3](0.3 的数量:10) y=x x 和 y 之间的线性相关系数是多少? 对于此x 和y,所有对都指向同一点(0.3, 0.3)。我们可以说 x
我正在尝试在数据帧上运行我认为应该是一个简单的相关函数,但它在我认为不应该返回的地方返回 NaN。 代码: # setup import pandas as pd import io csv = io
我是一名优秀的程序员,十分优秀!