# 数学函数 - 回归分析 文档类型:函数事实页 是否可直接用于生成代码:是;本页函数条目均包含参数表 遇到不确定时:回到 [../math.md](../math.md)、[../../index.md](../../index.md) 本页收录回归建模、回归诊断、回归检验、加权回归、岭回归、Logistic/Binary 回归和回归辅助统计函数。 ## 服务器回归函数 ### `regress_domin_formula(y_values, x_values)` 用途:计算回归解释变量的相对重要性。 参数个数:2 返回值:数组表;包含 `变量名`、`贡献度`、`贡献率(%)`、`排名` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | ### `regress_domin_marginal(y_values, x_values, variable_names, method)` 用途:用边际效用法计算回归解释变量的相对重要性。 参数个数:4 返回值:数组表;包含 `变量名`、`贡献度`、`贡献率(%)`、`排名` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | ---------- | ------------------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `variable_names` | 是 | `nil`/数组 | 变量名;不指定时传 `nil` | | 4 | `method` | 是 | 整数 | 边际效用计算方式 | ### `regress_Ridge(y_values, x_values[, k_values][, trace_mode])` 用途:执行岭回归,或按 `k_values` 输出岭迹。 参数个数:2 或 4 返回值:数组表/数组 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ------------ | ---- | -------- | -------------------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `k_values` | 否 | 数值数组 | 岭参数序列;省略时自动选择 | | 4 | `trace_mode` | 否 | 布尔值 | 是否按岭迹模式输出 | ### `regress_AdjustedR2(r_square, sample_count, variable_count)` 用途:根据 R2、样本数和变量数计算调整后 R2。 参数个数:3 返回值:实数 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | -------- | ---------- | | 1 | `r_square` | 是 | 数值 | R2 | | 2 | `sample_count` | 是 | 整数 | 样本数量 | | 3 | `variable_count` | 是 | 整数 | 自变量数量 | ### `regress_Logistic(y_values, x_values, constant, alpha)` 用途:执行 Logistic 回归。 参数个数:4 返回值:数组表;包含 `Coefficient`、`-2LogLikeHood`、`Wald Test` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 0/1 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `constant` | 是 | 布尔值 | 是否包含常数项 | | 4 | `alpha` | 是 | 数值 | 显著性水平 | ### `regression(y_values, x_values, alpha, constant)` 用途:执行普通最小二乘回归。 参数个数:4 返回值:数组表;包含 `Coefficient`、`Resid`、`Residual Test`、`R-Squared` 等结果项 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | ----------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `alpha` | 是 | 数值 | 显著性水平 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `regress_DWTest(residuals)` 用途:计算 Durbin-Watson 统计量。 参数个数:1 返回值:实数 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | -------- | ------------ | | 1 | `residuals` | 是 | 数值数组 | 回归残差序列 | ### `regress_White(y_values, x_values, constant, alpha)` 用途:执行 White 异方差检验。 参数个数:4 返回值:数组表;包含 `F`、`NR2` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | ----------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 4 | `alpha` | 是 | 数值 | 显著性水平 | ### `regress_MLS(y_values, x_values, residuals)` 用途:执行最小二乘回归并输出残差。 参数个数:3 返回值:数组;返回回归系数,同时写入 `residuals` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | -------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `residuals` | 是 | 变量引用 | 接收残差序列 | ### `regress_CMLS(y_values, x_values, residuals, constant)` 用途:执行带常数项控制的最小二乘回归并输出残差。 参数个数:4 返回值:数组;返回回归系数,同时写入 `residuals` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | ----------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `residuals` | 是 | 变量引用 | 接收残差序列 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `regress_JBTest(values, alpha)` 用途:执行 Jarque-Bera 正态性检验。 参数个数:2 返回值:数组表;包含 `JB-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------- | ---- | -------- | ---------- | | 1 | `values` | 是 | 数值数组 | 待检验序列 | | 2 | `alpha` | 是 | 数值 | 显著性水平 | ### `regress_FTest(y_values, residuals, variable_count, alpha)` 用途:执行回归 F 检验。 参数个数:4 返回值:数组表;包含 `F-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | -------- | ------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 3 | `variable_count` | 是 | 整数 | 自变量数量 | | 4 | `alpha` | 是 | 数值 | 显著性水平 | ### `regression_WLS(y_values, x_values, alpha, constant, mode, restrictiveness, x0, y0, weights)` 用途:执行加权最小二乘回归。 参数个数:9 返回值:数组表;包含 `Coefficient`、`Resid`、`Residual Test` 等结果项 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------------- | ---- | -------------- | ---------------------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `alpha` | 是 | 数值 | 显著性水平 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 5 | `mode` | 是 | 整数 | 回归模式参数 | | 6 | `restrictiveness` | 是 | `nil`/数组 | 约束参数;无约束时传 `nil` | | 7 | `x0` | 是 | `nil`/数值矩阵 | 预测自变量;不需要时传 `nil` | | 8 | `y0` | 是 | `nil`/数值数组 | 预测因变量;不需要时传 `nil` | | 9 | `weights` | 是 | 数值数组 | 权重序列 | ### `regress_Binary(y_values, x_values, link_name, iteration_count, constant, alpha)` 用途:执行二元响应回归。 参数个数:6 返回值:数组表;包含 `Coefficient`、`-2LogLikeHood`、`Wald Test` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------------- | ---- | -------- | -------------------------- | | 1 | `y_values` | 是 | 数值数组 | 0/1 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `link_name` | 是 | 字符串 | 链接函数名;常用 `"logit"` | | 4 | `iteration_count` | 是 | 整数 | 迭代或模型参数 | | 5 | `constant` | 是 | 布尔值 | 是否包含常数项 | | 6 | `alpha` | 是 | 数值 | 显著性水平 | ### `regress_TTest(x_values, coefficients, residuals, variable_count, alpha, constant)` 用途:执行回归系数 T 检验。 参数个数:6 返回值:数组表;包含 `T-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | ----------------- | -------------------------- | | 1 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 2 | `coefficients` | 是 | 数值数组 | 回归系数 | | 3 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 4 | `variable_count` | 是 | 整数 | 自变量数量或自由度相关参数 | | 5 | `alpha` | 是 | 数值 | 显著性水平 | | 6 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `regress_WLS(y_values, x_values, weights, residuals)` 用途:执行加权最小二乘回归并输出残差。 参数个数:4 返回值:数组表;同时写入 `residuals` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | ----------------- | ------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 3 | `weights` | 是 | 数值数组 | 权重序列 | | 4 | `residuals` | 是 | 变量引用 | 接收残差序列 | ### `regress_AicAndSbic(residuals, variable_count, sample_count)` 用途:计算 AIC 和 SBIC。 参数个数:3 返回值:数组表;包含 `Akaike Info Criterion`、`Schwarz Info Criterion` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | -------- | ------------ | | 1 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 2 | `variable_count` | 是 | 整数 | 自变量数量 | | 3 | `sample_count` | 是 | 整数 | 样本数量 | ### `regress_RSquare(y_values, residuals)` 用途:根据因变量序列和残差序列计算 R2。 参数个数:2 返回值:实数 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | -------- | ------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `residuals` | 是 | 数值数组 | 回归残差序列 | ### `regress_QRlsq(y_values, x_values, residuals, constant)` 用途:用 QR 分解执行最小二乘回归并输出残差。 参数个数:4 返回值:数组;返回回归系数,同时写入 `residuals` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------- | ---- | ----------------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 3 | `residuals` | 是 | 变量引用 | 接收残差序列 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `boxcox(values)` 用途:执行 Box-Cox 变换。 参数个数:1 返回值:数组表;包含 `data`、`lambda` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------- | ---- | -------- | ---------- | | 1 | `values` | 是 | 数值数组 | 待变换数据 | ### `regress_VIF(x_values)` 用途:计算方差膨胀因子和条件数。 参数个数:1 返回值:数组表;包含 `VIF`、`Cond` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | -------------- | | 1 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | ### `regress_Constraint(y_values, x_values, constant, a, b, aeq, beq, alpha, option, lower_bounds, upper_bounds)` 用途:执行带线性约束和边界约束的回归。 参数个数:11 返回值:数组表;包含 `Coefficient`、`Fval`、`R-Squared`、`Adjusted R-Squared`、`Residual Series`、`Residual Test`、`F Test`、`T Test` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------------- | ---- | --------------- | ------------------------------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 4 | `a` | 是 | 数值矩阵/空数组 | 不等式约束左侧矩阵;无约束时传空数组 | | 5 | `b` | 是 | 数值数组/空数组 | 不等式约束右侧向量;无约束时传空数组 | | 6 | `aeq` | 是 | 数值矩阵/空数组 | 等式约束左侧矩阵;无约束时传空数组 | | 7 | `beq` | 是 | 数值数组/空数组 | 等式约束右侧向量;无约束时传空数组 | | 8 | `alpha` | 是 | 数值 | 显著性水平 | | 9 | `option` | 是 | 整数 | 优化目标或约束回归模式参数 | | 10 | `lower_bounds` | 是 | 数值数组/空数组 | 系数下界;无下界时传空数组 | | 11 | `upper_bounds` | 是 | 数值数组/空数组 | 系数上界;无上界时传空数组 | ### `regress_HettestSpearman(y_values, x_values, alpha, constant)` 用途:执行 Spearman 等级相关异方差检验。 参数个数:4 返回值:数组表;包含 `Statistic`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | ----------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `alpha` | 是 | 数值 | 显著性水平 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `regression_OLS_White(y_values, x_values)` 用途:执行普通最小二乘回归,并输出 White 稳健标准误相关结果。 参数个数:2 返回值:数组表;包含 `Coefficient`、`Resid`、`R-Squared`、`Adjusted R-Squared`、稳健 `T Test` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | ### `regression_OLS_NW(y_values, x_values)` 用途:执行普通最小二乘回归,并输出 Newey-West 稳健标准误相关结果。 参数个数:2 返回值:数组表;包含 `Coefficient`、`Resid`、`R-Squared`、`Adjusted R-Squared`、稳健 `T Test` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | -------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | ### `nw_Adjustment_Simplification(values)` 用途:对序列执行 Newey-West 调整的简化计算。 参数个数:1 返回值:数组表;包含 `stderr`、`T-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------- | ---- | -------- | ---------------- | | 1 | `values` | 是 | 数值数组 | 待调整的样本序列 | ### `regress_TTest_RWLS(x_values, coefficients, residuals, variable_count, alpha, constant)` 用途:执行线性约束加权最小二乘回归的系数 T 检验。 参数个数:6 返回值:数组表;包含 `T-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------------- | ---- | ----------------- | -------------------------- | | 1 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 2 | `coefficients` | 是 | 数值数组 | 回归系数 | | 3 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 4 | `variable_count` | 是 | 整数 | 自变量数量或自由度相关参数 | | 5 | `alpha` | 是 | 数值 | 显著性水平 | | 6 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | ### `regress_TTest_White(x_values, coefficients, residuals, alpha, constant, white_result)` 用途:基于 White 稳健结果执行回归系数 T 检验。 参数个数:6 返回值:数组表;包含 `stderr`、`T-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------------- | ---- | ----------------- | -------------------------------- | | 1 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 2 | `coefficients` | 是 | 数值数组 | 回归系数 | | 3 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 4 | `alpha` | 是 | 数值 | 显著性水平 | | 5 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 6 | `white_result` | 是 | 数组表/矩阵 | White 稳健方差结果或对应回归结果 | ### `regress_TTest_NW(x_values, coefficients, residuals, alpha, constant, lag_order, robust_result)` 用途:基于 Newey-West 稳健结果执行回归系数 T 检验。 参数个数:7 返回值:数组表;包含 `stderr`、`T-Stat`、`P-Value`、`Hypothesis` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | --------------- | ---- | ----------------- | -------------------------- | | 1 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 2 | `coefficients` | 是 | 数值数组 | 回归系数 | | 3 | `residuals` | 是 | 数值数组 | 回归残差序列 | | 4 | `alpha` | 是 | 数值 | 显著性水平 | | 5 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 6 | `lag_order` | 是 | 整数 | Newey-West 滞后阶数 | | 7 | `robust_result` | 是 | 数组表/矩阵 | 稳健方差结果或对应回归结果 | ### `robustfit_M(y_values, x_values, alpha, constant, weight_name, tune)` 用途:执行 M 估计稳健回归。 参数个数:6 返回值:数组表;包含 `Coefficient`、`Resid` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ------------- | ---- | ----------------- | ------------------------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值数组/数值矩阵 | 自变量样本 | | 3 | `alpha` | 是 | 数值 | 显著性水平 | | 4 | `constant` | 是 | 整数/布尔值 | 是否包含常数项 | | 5 | `weight_name` | 是 | 字符串 | 稳健权重函数名;如 `"andrews"` | | 6 | `tune` | 是 | 数值 | 权重函数调节常数 | ### `regress_GRStest(alpha_values, residual_matrix, factor_matrix)` 用途:执行 GRS 检验。 参数个数:3 返回值:数组表;包含 `FGRS`、`pGRS` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ----------------- | ---- | ----------------- | ---------------------- | | 1 | `alpha_values` | 是 | 数值数组/数值矩阵 | 截距项或 alpha 向量 | | 2 | `residual_matrix` | 是 | 数值矩阵 | 回归残差矩阵 | | 3 | `factor_matrix` | 是 | 数值矩阵 | 因子收益或因子暴露矩阵 | ### `leastSquares_CurveFitting(factors, y_values)` 用途:执行最小二乘曲线拟合;当 `y_values` 中存在 `nil` 或 `nan` 时,跳过对应位置后计算。 参数个数:2 返回值:数值矩阵/数组;拟合系数 | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ---------- | ---- | -------- | ------------ | | 1 | `factors` | 是 | 数值矩阵 | 拟合因子矩阵 | | 2 | `y_values` | 是 | 数值数组 | 目标值序列 | ### `regress_Stepwise(y_values, x_values, enter_alpha, remove_alpha)` 用途:执行逐步回归。 参数个数:4 返回值:数组表;包含 `x`、`regress` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | -------------- | ---- | -------- | ------------------------ | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `enter_alpha` | 是 | 数值 | 变量进入模型的显著性阈值 | | 4 | `remove_alpha` | 是 | 数值 | 变量移出模型的显著性阈值 | ### `regress_pri(y_values, x_values, contribution_rate, alpha)` 用途:执行按累计贡献率选择主成分的回归。 参数个数:4 返回值:数组表;包含 `Coefficient`、`Resid`、`R-Squared`、`Adjusted R-Squared`、`SSR`、`HelpRegress` | 参数位置 | 参数名 | 必填 | 接收类型 | 说明 | | -------- | ------------------- | ---- | -------- | -------------------- | | 1 | `y_values` | 是 | 数值数组 | 因变量样本 | | 2 | `x_values` | 是 | 数值矩阵 | 自变量样本矩阵 | | 3 | `contribution_rate` | 是 | 数值 | 主成分累计贡献率阈值 | | 4 | `alpha` | 是 | 数值 | 显著性水平 |