重塑除对角线之外的数据框

时间:2017-08-02 18:00:52

标签: r dataframe reshape

以下是R中的数据框:

d <- data.frame(c = 1:3, c2 = 4:6, c3 = 7:9)
rownames(d) <- c('r1', 'r2', 'r3')
d

   c1 c2 c3
r1  1  4  7
r2  2  5  8
r3  3  6  9

我想基于d中的所有元素(不包括对角线)组装新的数据框,如下所示:

row col value
r1  c2   4
r1  c3   7
r2  c1   2
r2  c3   8
r3  c1   3
r3  c2   6

行的顺序无关紧要。实现这一目标的有效方法是什么?这个问题还有一个额外的部分来自典型的重塑,因为我想排除那些对角元素。

0 个答案:

没有答案