全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1278 4
2019-04-19
我就是想做一个修改矩阵数据的循环,但是它总是说我“too many ')' or ']'”,有没有大佬帮帮我啊。
matrix input M1 = (0,0,0,0 \ 0,0,0,0 \ 0,0,0,0 \ 0,0,0,0)
forvalues i = 1(1)4 {
附件列表
problem.PNG

原图尺寸 15.03 KB

problem.PNG

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2019-4-19 10:06:09
matrix input M1 = (0,0,0,0 \ 0,0,0,0 \ 0,0,0,0 \ 0,0,0,0)
forvalues i = 1(1)4 {
                                        forvalues j = 1(1)4{
                                                                                matrix input e = (0 \ 0 \ 0 \ 0)
                                                                                matlist e
                                                                                mat e[`i'] = 1
                                                                                matlist e
                                                                                mat e`i' = e
                                                                                matlist e`i'
                                                                                matrix input e = (0 \ 0 \ 0 \ 0)
                                                                                matlist e
                                                                                mat e[`j'] = 1
                                                                                matlist e
                                                                                mat e`j' = e
                                                                                matlist e`j'
                                                                                mat d_`i'`j' = (1/COV[`j',`j'])*(invsym(e`i') * A0 * COV * e`j')^2  /   invsym(e`i') * A0 * COV * invsym(A0) * e`j'
                                                                                mat M1[`i',`j'] = d_`i'`j'
                                                                                }
                                        }
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-8-25 00:32:03
mat e[`i'] = 1的引法不對吧?比如:
mat x=1,2,3,4
mat x[1,2]=0
則x=(1,0,3,4)
但若用
mat x[2]=0
則錯
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-8-27 08:32:35
caozhaowen 发表于 2019-8-25 00:32
mat e[`i'] = 1的引法不對吧?比如:
mat x=1,2,3,4
mat x[1,2]=0
谢谢啦,虽然已经通过别的方式解决了,但是还是很感谢,您的解释我觉得很有道理,下次我再遇到同样的问题可以尝试此法,也不用转别的弯了。非常感谢啦。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-8-27 15:51:35
学无止境经世济民 发表于 2019-8-27 08:32
谢谢啦,虽然已经通过别的方式解决了,但是还是很感谢,您的解释我觉得很有道理,下次我再遇到同样的问题 ...
感谢评分。mat前缀标明后面一定是一个矩阵,所以下标引用的话一定要一个数字对,,但是如果用mata语言,则你的赋值就是一个向量而非矩阵,这时用你的引用法就没有问题了。
捕获.PNG
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群