将变量的值插入矩阵 - Stata
Inserting variable's values into a matrix - Stata
我生成了一个 10x10 矩阵和一个 10 观测变量(它的值无关紧要)。
我想将所有变量值插入矩阵的第一列。
我正在努力对变量和矩阵进行“子集化”。
matrix M = J(10, 10, .)
egen V = seq(), f(1) t(10)
matrix M[1:_N, 1] = V[1:_N]
如果右边的表达式求值为矩阵(不是标量),这将用给定的左上角元素替换子矩阵,因此只有等式左侧的左上角元素就足够了.
关于变量下标,恐怕你只能参考一个观察。您将需要一个额外的步骤,使用 mkmat
.
将变量中的数据放入矩阵中
clear
set obs 10
matrix M = J(10, 10, .)
egen V = seq(), f(1) t(10)
mkmat V in 1/10 // Put observations 1 to 10 from variable V into matrix V
matrix M[1,1] = V // Replace submatrix of M with top left element 1,1 with V
我生成了一个 10x10 矩阵和一个 10 观测变量(它的值无关紧要)。
我想将所有变量值插入矩阵的第一列。
我正在努力对变量和矩阵进行“子集化”。
matrix M = J(10, 10, .)
egen V = seq(), f(1) t(10)
matrix M[1:_N, 1] = V[1:_N]
如果右边的表达式求值为矩阵(不是标量),这将用给定的左上角元素替换子矩阵,因此只有等式左侧的左上角元素就足够了.
关于变量下标,恐怕你只能参考一个观察。您将需要一个额外的步骤,使用 mkmat
.
clear
set obs 10
matrix M = J(10, 10, .)
egen V = seq(), f(1) t(10)
mkmat V in 1/10 // Put observations 1 to 10 from variable V into matrix V
matrix M[1,1] = V // Replace submatrix of M with top left element 1,1 with V