【发布时间】:2013-02-05 08:06:16
【问题描述】:
VZ.Close CBOU.Close SBUX.Close T.Close
VZ.Close 1.0000000 0.5804478 0.8872978 0.9480894
CBOU.Close 0.5804478 1.0000000 0.7876277 0.4988890
SBUX.Close 0.8872978 0.7876277 1.0000000 0.8143305
T.Close 0.9480894 0.4988890 0.8143305 1.0000000
所以,假设我在股票价格之间存在这些相关性。我想查看第一行并找到相关性最高的对。那将是 VZ 和 T。然后我想删除这 2 只股票作为期权。然后,在剩余的股票中找到相关性最高的对。依此类推,直到所有股票配对。在此示例中,显然是 CBOU 和 SBUX,因为它们是仅剩的 2 个,但我希望代码能够容纳任意数量的对。
【问题讨论】:
-
为什么第一步只看第一行?你不想在所有行之间找到更高的相关性吗?
-
这个问题有点模棱两可,需要更好的解释。您是否想将这两只股票作为第一行中的期权移除(即与第一行本身相关的股票和具有次大相关性的股票),然后从剩余的股票中返回,无论有多少,在第一行中具有最大相关性的两个(即本例中与 VZ.close 的最大相关性),并对每一行执行此操作?
-
这个问题与股票无关:纯粹是评估矩阵行中的匹配项。我不确定这是对“相关性”一词的良好使用,因为您似乎只想找到给定行中彼此最接近的 2 个值。在这种情况下,@SimonO101 的答案看起来不错。
标签: r correlation