Constrained regression with constrains on the slopes
조회 수: 1(최근 30일)
표시 이전 댓글
I was the following regeression specification
ln Q = ln A + alpha * ln K + beta * ln L
I want to fins alpha and beta such that alpha + beta < 1 and alpha > 0 and beta > 0.
I am trying to use lsqlin but I don't understand how to write the specification.
댓글 수: 5
답변(1개)
Matt J
2022년 7월 26일
편집: Matt J
2022년 7월 26일
AA=log(K(:)./L(:));
bb=log(Q(:)./A(:)./L(:));
alpha=min( max(AA\bb,0) ,1 );
beta=1-alpha;
댓글 수: 2
Matt J
2022년 7월 27일
편집: Matt J
2022년 7월 27일
Darn it. Well then, why not with lsqlin as originally proposed,
C=[log(K(:)) log(L(:));
d=log(Q(:)./A(:));
x0=lsqlin(C,d,[1,1],1,[],[],[0 0],[1,1]);
alpha=x0(1);
beta=x0(2);
If desired, you can use x0 to initialize a a nonlinear least squares fit to the original non-logged model,
fun = @(x,KL) A(:).'*KL.^x;
lb = [0, 0];
ub = [1, 1];
x=lsqcurvefit(fun,x0(:)',[K(:),L(:)], Q(:), lb,ub);
alpha=x(1);
beta=x(2);
참고 항목
범주
Find more on Linear Least Squares in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!