Sebastiano Putoto schrieb:
Good evening fellow Gretlians,
I am trying to run this command sheet but it doesn't work.
function LEVERAGE(matrix X, matrix y, matrix *u, matrix *h)
matrix beta = inv(X'X)*X'*y # calculates coeffs through OLS
matrix u = y - X*beta # residuals
matrix Px = X'(inv(X'X))*X # orthogonal projector Px
matrix h = diag(Px) # extract the elements fromt Px's diagonal
matrix dif={}
loop i=1..rows(X) --progressive # loop to work on each observation
matrix xi = X[i,] #exctracting rows from X
scalar u_i = u[i,]
scalar h_i = h[i,]
matrix dif[i,] = (-u_i/(1-h_i))*(inv(X'X)* xi) #calculate
the difference between beta(t) and beta. <--- THESE - I SUPPOSE -
ARE THE POINTS WHEN IT DOESN'T WORK.
Well it looks to me as if 'dif' is a matrix of dimension 0x0, so how are
you going to fit something in a slice [i,] of it?
-sven