全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
790 10
2023-04-16
我发现问题出在matrix X=J()这部分,反复报错,请问大家知道怎么修改吗?我想生成全为1的列矩阵作为X0和beta0相乘
附件列表
二维码

扫码加我 拉你入群

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

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

全部回复
2023-4-16 08:40:50
不要贴图片,别人很难尝试
难道让想帮你的人在自己输入一遍代码吗

直接贴出文本格式的代码,直接拷贝黏贴就可以测试哪里问题了
二维码

扫码加我 拉你入群

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

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

2023-4-16 09:03:55
蓝色 发表于 2023-4-16 08:40
不要贴图片,别人很难尝试
难道让想帮你的人在自己输入一遍代码吗
好的谢谢你!我立刻把代码附上
二维码

扫码加我 拉你入群

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

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

2023-4-16 09:04:22

clear

set seed 12345

local n = 100

local R = 1000

matrix true_beta = (1, 0, -1, 3)'

matrix bias_beta = J(4, 1, .)

matrix sd_beta = J(4, 1, .)

matrix rmse_beta = J(4, 1, .)

forvalues i = 1/`R' {

    // Generate data

    set seed `i'

    matrix x1 = rnormal(`n', 0, 1)

    matrix x2 = runiform(`n', -1, 1)

    matrix x3 = rnormal(`n', 0, sqrt(2))

    matrix X = J(`n', 1, 1) \ x1 \ x2 \ x3

    matrix e = rnormal(`n', 0, 1)

    matrix y = X * true_beta + e

    // OLS estimation

    qui reg y x1 x2 x3

    matrix b_hat = e(b)

    // Calculate bias, standard deviation, and RMSE

    matrix bias_beta = (bias_beta*(i-1) + (b_hat - true_beta))/i

    matrix sd_beta = (sd_beta*(i-1) + (b_hat - mean(b_hat)))/i

    matrix rmse_beta = (rmse_beta*(i-1) + (b_hat - true_beta)^2)/i

}

matrix table = (bias_beta, sd_beta, sqrt(rmse_beta))

matlist table, format(%9.3f) title("Table 1: OLS estimation over 1000 repetitions")

二维码

扫码加我 拉你入群

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

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

2023-4-16 09:06:07
clear
set seed 12345
local n = 100
local R = 1000
matrix true_beta = (1, 0, -1, 3)'
matrix bias_beta = J(4, 1, .)
matrix sd_beta = J(4, 1, .)
matrix rmse_beta = J(4, 1, .)

forvalues i = 1/`R' {
    // Generate data
    set seed `i'
    matrix x1 = rnormal(`n', 0, 1)
    matrix x2 = runiform(`n', -1, 1)
    matrix x3 = rnormal(`n', 0, sqrt(2))
    matrix X = J(`n', 1, 1) \ x1 \ x2 \ x3
    matrix e = rnormal(`n', 0, 1)
    matrix y = X * true_beta + e

    // OLS estimation
    qui reg y x1 x2 x3
    matrix b_hat = e(b)

    // Calculate bias, standard deviation, and RMSE
    matrix bias_beta = (bias_beta*(i-1) + (b_hat - true_beta))/i
    matrix sd_beta = (sd_beta*(i-1) + (b_hat - mean(b_hat)))/i
    matrix rmse_beta = (rmse_beta*(i-1) + (b_hat - true_beta)^2)/i
}

matrix table = (bias_beta, sd_beta, sqrt(rmse_beta))
matlist table, format(%9.3f) title("Table 1: OLS estimation over 1000 repetitions")
二维码

扫码加我 拉你入群

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

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

2023-4-16 09:23:31
     matrix x1 = rnormal(`n', 0, 1)
    matrix x2 = runiform(`n', -1, 1)
    matrix x3 = rnormal(`n', 0, sqrt(2))
    matrix e = rnormal(`n', 0, 1)

这些函数都不对,你的按照看函数的帮助里面是如何写参数的
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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