📄 regressionihdrt2.m
字号:
function [ret, Yout1, Yout2] = regressionIHDRT(tid, X, nX1dim, nX2dim, varargin)
% Retrieve a couple (Xout, Yout) from an IHDR tid tree based on X.
% [ret, Yout1, Yout2] = regressionIHDRT(tid, X, varargin, nX1dim, nX2dim)
%
% OUTPUT:
% ret - 0: success, other: fail
% Yout1 - retrieved Y
% nX1dim - dimension of first part of X
% nX2dim - dimension of second part of X
% INPUTS:
% tid - The tree's handler
% X - X vector
% knn - Size of neighborhood
if ~libisloaded('IHDRDLL')
loadlibrary('IHDRDLL', 'IHDRDLL.h');
end
knn = 10;
lambda = 0.01;
args = varargin;
nargs = length(args);
for i=1:2:nargs
switch args{i}
case 'knn', knn = args{i+1};
case 'lambda', lambda = args{i+1};
otherwise, error(['unrecognized argument ' args{i}])
end
end
sX = calllib('IHDRDLL','GetXdim', tid);
sY = calllib('IHDRDLL','GetYdim', tid);
Yout1 = zeros(sY,1);
Yout2 = zeros(sY,1);
pX = libpointer('doublePtr', X);
pYout1 = libpointer('doublePtr', Yout1);
pYout2 = libpointer('doublePtr', Yout2);
ret = calllib('IHDRDLL','Regression2', tid, pX, sX, pYout1, pYout2, sY, nX1dim, nX2dim, knn, lambda);
Yout1 = get(pYout1,'Value');
Yout2 = get(pYout2,'Value');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -