创建矩阵M =(N * 50) 矩阵m = J(N,50 ,.)
由于我想改变观察加班次数,如何设定N =观察次数?
如何具体化矩阵的每个元素,例如M(1,2)(第1行,第2列中的元素)?
如何为矩阵的每个元素赋值?例如,我想将第一行的O设置为全0,即M(1,1)= M(1,2)= ...... M(1,50)= 0?
答案 0 :(得分:1)
. // an (empty) dataset with 5 observations
. clear all
. set obs 5
obs was 0, now 5
.
. // go to Mata
. mata:
------------------------------------------------- mata (type end to exit) -------------------------
:
: // collect the number of observations
: n = st_nobs()
:
: // create matrix M (n x 10)
: M = J(n, 10, .)
:
: // see it:
: M
1 2 3 4 5 6 7 8 9 10
+---------------------------------------------------+
1 | . . . . . . . . . . |
2 | . . . . . . . . . . |
3 | . . . . . . . . . . |
4 | . . . . . . . . . . |
5 | . . . . . . . . . . |
+---------------------------------------------------+
:
: // fill the first row with 0s
: M[1,.] = J(1,10,0)
:
: // See cell 1,2
: M[1,2]
0
:
: // see cell 2,3
: M[2,3]
.
: end
答案 1 :(得分:0)
创建.do文件。
只需使用任何文本编辑器,包括Stata的文件编辑器,并使用扩展名.do
保存。
相同的随机正常连续偏离。这是一种方式:
: m = J(5,5, .)
: m[1,] = J(1, 5, rnormal(1,1,0,1))
: m
1 2 3 4 5
+-----------------------------------------------------------------------+
1 | 2.285713101 2.285713101 2.285713101 2.285713101 2.285713101 |
2 | . . . . . |
3 | . . . . . |
4 | . . . . . |
5 | . . . . . |
+-----------------------------------------------------------------------+