【问题标题】:cluster analysis with weight权重聚类分析
【发布时间】:2018-02-12 10:47:49
【问题描述】:

我有一个数据框“热度”来展示人们在一段时间内的表现。

'Var1'代表人物代码。

'Var2' 表示时间线(以从起点开始的天数衡量)。

“变量”是他们在给定时间点获得的分数。

     Var1       Var2      value
1       1   36       -0.6941826
2       2   36       -0.5585414
3       3   36        0.8032384
4       4   36        0.7973031
5       5   36        0.7536959
6       6   36       -0.5942059
  ....
54     10   73        0.7063218
55     11   73       -0.6949616
56     12   73       -0.6641516
57     13   73        0.6890433
58     14   73        0.6310124
59     15   73       -0.6305091
60     16   73        0.6809655
61     17   73        0.8957870
  ....
101    13  110        0.6495796
102    14  110        0.5990869
103    15  110       -0.6210600
104    16  110        0.6441960
105    17  110        0.7838654
  ....

现在我想对它们的性能进行聚类并将其反映在热图上。所以我使用函数 dist() 和 hclust() 对数据框进行聚类,并用 ggplot2 绘制:

ggplot(data = heat) + geom_tile(aes(x = Var2, y = Var1 %>% as.character(), 
fill = value)) +
  scale_fill_gradient(low = "yellow",high = "red") +
  geom_vline(xintercept = c(746, 2142, 2917))

看起来像这样:

但是,我对第 746 天、第 2142 天和第 2917 天(黑线)前后发生的事情更感兴趣。我希望这些天的分数在聚类中具有更大的权重。我希望这些天表现出类似表现的人们有更多的优先权聚集在一起。有没有办法做到这一点?

【问题讨论】:

    标签: r cluster-computing cluster-analysis hierarchical-clustering


    【解决方案1】:

    只要你的权重是整数,你应该可以人为地复制那些日子。

    如果您想要更多控制,只需自己计算距离矩阵,使用您想要使用的任何加权距离。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-12
      • 2018-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-14
      相关资源
      最近更新 更多