[問題] 函數的矩陣已回收
在執行iprobit時出現下面的錯誤,
但將這行錯誤指令拿出來獨立執行時是ok,放在函數裡就不行。
請問是函數哪的定義下錯了?
謝謝 ^^"
??? Error using ==> times
Matrix dimensions must agree.
Error in ==> iprobit>ll_prob at 19
ll = -sum( y.*log(prob)+(1-y).*log(tail) );
%%%%%%%%%%%% Code:
% probit DGP
nobs = 1000;
a = 0.1;
b = 0.2;
u = randn(nobs,1);
x = rand(nobs,1);
% Letent y
ys = a+b*x+u;
% cutoff points
y = double(ys>0);
bhat = iprobit(y,x);
function bhat = iprobit(y,x)
[n,k] = size(y);
mx = [ones(n,1) x];
bv = mx\y;
xb = mx*bv;
opt = optimset('Display','iter', 'HessUpdate','bfgs');
bhat = fsolve(@llprob,bv,opt,y,x,xb);
function ll = llprob(y,x,bv,xb)
prob = normcdf(xb);
tail = 1- prob;
ll = - sum( y.*log(prob)+(1-y).*log(tail) );
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.86.139
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章