kcca.r

来自「这是核学习的一个基础软件包」· R 代码 · 共 28 行

R
28
字号
setGeneric("kcca",function(x, y, kernel="rbfdot", kpar=list(sigma = 0.1), ...) standardGeneric("kcca"))setMethod("kcca", signature(x = "matrix"),          function(x,y,kernel="rbfdot",kpar=list(sigma=0.1), ...)          {            x <- as.matrix(x)            y <- as.matrix(y)            if(!(nrow(x)==nrow(y))) stop("Number of colums in x, y matrixes is not equall")            if(!is(kernel,"kernel"))              {                if(is(kernel,"function")) kernel <- deparse(substitute(kernel))                kernel <- do.call(kernel, kpar)              }            if(!is(kernel,"kernel")) stop("kernel must inherit from class `kernel'")            xpca <- kpca(x,kernel,...)            ypca <- kpca(y,kernel,...)            cca <- cancor(rotated(xpca), rotated(ypca))                        ret <- new("kcca")            kcor(ret) <- cca$cor            xcoef(ret) <- pcv(xpca) %*% cca$xcoef            ycoef(ret) <- pcv(ypca) %*% cca$ycoef            xvar(ret) <- rotated(xpca) %*% cca$xcoef            yvar(ret) <- rotated(ypca) %*% cca$ycoef            ret          })

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?