【问题标题】:Using a data frame with x and y to fill in a matrix使用带有 x 和 y 的数据框填充矩阵
【发布时间】:2013-08-01 17:22:08
【问题描述】:

R 问题:我想使用一列中 x 坐标和第二列中 y 坐标的数据框来填充矩阵。然后heatmap() 将使用该矩阵来创建树状图。

这是一个例子:

> head(S1)
  DB_num AD_num
1      2   8060
2      7   3553
3      8   4812
4     13   7745
5     24   3315
6     24   6012

如果可能的话,我还需要知道如何制作矩阵。数据框的最大值是 15,490,所以我猜矩阵必须是 15,490 x 15,490。由于矩阵很大 我猜它必须用 NA 而不是零填充?

【问题讨论】:

  • 你想要填充什么? with(S1, table(DB_num, AD_num)) 可能会让你接近...

标签: r matrix heatmap dendrogram


【解决方案1】:
mtx <- matrix(NA, 15490 , 15,490)
mtx[ as.matrix(S1) ] <- 1   # two column matrix can be used to index

如果这是您的策略,您将需要拥有足够的机器资源。它不适合大多数 4GB 设备,或者它可能适合但如果你尝试用它做任何事情就会耗尽内存。除非使用 pkg::Matrix 中的稀疏矩阵,否则填充 NA 不会节省空间。我仍然相信你需要统计建议多于编码建议,即使你似乎已经删除了这个问题的早期版本。我确实认为这是构建分类结构的明智之举。

【讨论】:

  • 我想你多放了一个,,所以应该是:mtx &lt;- matrix(NA, 15490 , 15490)
  • 那么我在哪里/如何获得这个统计建议?
  • stats.stackexchange.com
猜你喜欢
  • 2018-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-29
  • 1970-01-01
  • 2015-12-20
  • 2014-11-21
  • 2021-10-02
相关资源
最近更新 更多