Hello
I am attempting to replicate the proposed solution to creating an adjacency matrix provided by UCLA IDRE https://stats.idre.ucla.edu/stata/code/creating-an-adjacency-matrix/
However, my replication efforts have been unsuccessful. The line below
Code:
id = .id
seems to be the culprit impeding successful replication but I do not know what is wrong or how to fix this. Stata returns an r(3000) error ".id found where almost anything else expected." Any insight to what the problem at hand is with this small bit of code and how to solve it would be sincerely appreciated.

Code:
clear all
matrix drop _all
mata: mata clear

input id friend1 friend2 friend3 friend4 friend5
44006    45611    55610    74158    55898    .
45611    44006    45623    45621    74158    55898
45621    71643    45611    .    .    .
45623    59642    71643    45611    73452    55610
55610    45623    45611    44006    55898    71643
55898    74158    55610    45621    .    .
59642    55898    71643    45621    45611    74158
71643    55898    73452    59642    45611    44006
73452    71643    45623    .    .    .
74158    55898    45611    59642    45621    44006
end

mkmat friend*, mat(F)
mkmat id, mat(id)
scalar define n = _N
gen fid = _n

mata a = st_matrix("F")
id = st_matrix("id")
b = J(st_numscalar("n"), st_numscalar("n"), 0)
for(i = 1; i <= rows(a); i++) {
    for(j = 1; j <= cols(a); j++) {
        for(k = 1; k <= rows(id); k++) {
            if (st_data(k, "id") == a[i,j]) {
                b[i,k] = 1
            }
        }
    }
  }
 
c = id, b
id = .id
c = id'c

st_matrix("adj", c)
end

mat list adj

Thank you