求助大神,在使用spdep包和spatialreg包时,想利用do_ldet函数,具体如何使用没问题。现在我想查看do_ldet函数使用的具体方法(如下面do_ldet函数源码中加粗函数),但所有加粗函数都找不到帮助文档。既然没有帮助文档,也找不到关于这些函数的任何信息,那do_ldet函数是如何使用这些函数的呢?能否认为R中就不存在这些加粗函数?或者应该从哪里找这些函数呢?
备注:
每一个加粗函数都是一种计算雅各比行列式的方法
【代码】:
library(spdep)
library(spatialreg)
do_ldet #查看do_ldet函数时显示的函数源码
【do_ldet函数源码】
function (coef, env, which = 1)
{
.Deprecated("spatialreg::do_ldet", msg = "Function do_ldet moved to the spatialreg package")
if (requireNamespace("spatialreg", quietly = TRUE)) {
return(spatialreg::do_ldet(coef = coef, env = env, which = which))
}
warning("install the spatialreg package")
method <- get("method", envir = env)
if (get("family", envir = env) == "SMA") {
ldet <- eigen_sma_ldet(coef, env, which = which)
}
else {
switch(method, eigen = {
ldet <- eigen_ldet(coef, env, which = which)
}, spam = {
ldet <- spam_ldet(coef, env, which = which)
}, spam_update = {
ldet <- spam_update_ldet(coef, env, which = which)
}, Matrix = {
ldet <- Matrix_ldet(coef, env, which = which)
}, Matrix_J = {
ldet <- Matrix_J_ldet(coef, env, which = which)
}, Chebyshev = {
ldet <- cheb_ldet(coef, env, which = which)
}, MC = {
ldet <- mcdet_ldet(coef, env, which = which)
}, LU = {
ldet <- LU_ldet(coef, env, which = which)
}, LU_prepermutate = {
ldet <- LU_prepermutate_ldet(coef, env, which = which)
}, moments = {
ldet <- moments_ldet(coef, env, which = which)
}, SE_classic = {
ldet <- SE_classic_ldet(coef, env, which = which)
}, SE_whichMin = {
ldet <- SE_whichMin_ldet(coef, env, which = which)
}, SE_interp = {
ldet <- SE_interp_ldet(coef, env, which = which)
}, stop("...\n\nUnknown method\n"))
}
ldet
}
<bytecode: 0x000000001ac00180>
<environment: namespace:spdep>