【问题标题】:Connect IDs based on values in rows, ignoring connection between identical IDs根据行中的值连接 ID,忽略相同 ID 之间的连接
【发布时间】:2019-10-15 14:28:09
【问题描述】:

这是我上一个问题的后续:Connect IDs based on values in rows

我现在想考虑这种情况,相同的idb 之间的连接应归类为0

输出类似于我之前帖子中的矩阵,但对角线元素等于0

      62014 62015 62016 62017 62018
62014   0     1     0     1     1
62015   1     0     0     0     0
62016   0     0     0     0     1
62017   1     0     0     0     1
62018   1     0     1     1     0

我如何在 Stata 中做到这一点?

【问题讨论】:

    标签: stata


    【解决方案1】:

    您可以轻松更改矩阵对角线中的值,如下所示:

    : B
    [symmetric]
           1   2   3   4   5
        +---------------------+
      1 |  1                  |
      2 |  1   1              |
      3 |  0   0   1          |
      4 |  1   0   0   1      |
      5 |  1   0   1   1   1  |
        +---------------------+
    
    
    : _diag(B, 0)
    
    : B
    [symmetric]
           1   2   3   4   5
        +---------------------+
      1 |  0                  |
      2 |  1   0              |
      3 |  0   0   0          |
      4 |  1   0   0   0      |
      5 |  1   0   1   1   0  |
        +---------------------+
    

    根据您的问题,您可以简单地执行以下操作:

    mata: B = foo1(A)
    mata: _diag(B, 0)
    
    getmata (idb*) = B
    
    list
    
         +------------------------------------------------------------------------+
         |   idb      idd1      idd2      idd3   idb1   idb2   idb3   idb4   idb5 |
         |------------------------------------------------------------------------|
      1. | 62014    370490    879271   1112878      0      1      0      1      1 |
      2. | 62015    457013   1112878    370490      1      0      0      0      0 |
      3. | 62016    341863   1366174    533773      0      0      0      0      1 |
      4. | 62017    879271    327069    341596      1      0      0      0      1 |
      5. | 62018   1391443   1366174    879271      1      0      1      1      0 |
         +------------------------------------------------------------------------+
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多