# 数学函数 / 回归

## `LeastSquares_CurveFitting(f, y)`

声明：function

最小二乘法进行回归

| 参数 | 类型  | 说明                         |
| ---- | ----- | ---------------------------- |
| `f`  | array | 二维数字数组类型，系数矩阵   |
| `y`  | array | 一维数字数组类型，观察数据值 |

返回：array

## `LnRegression_CallBack(x)`

声明：function

Ln(x)回归回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `multipleRegression(x, y, call_back)`

声明：function

多元回归

| 参数        | 类型   | 说明                           |
| ----------- | ------ | ------------------------------ |
| `x`         | array  | 二维数字数组类型,观察数据点    |
| `y`         | array  | 一维数字数组类型,观察数据值    |
| `call_back` | string | 字符串类型，计算系数矩阵的回调 |

返回：array

### 示例

```tsl
x := array((0.00, 0.00), (0.00, 1.00), (1.00, 0.00), (1.00, 1.00));
y := array(1.00, 2.00, 2.00, 3.00);
call_back := 'MultipleRegression_CallBack';
multipleRegression(x, y, call_back);
// 输出：
```

## `MultipleRegression_CallBack(x)`

声明：function

多元线性回归的回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `MultipleRegression_Pgm(x, y)`

声明：function

多元线性回归测试

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |
| `y`  | array | 一维数字数组类型 |

返回：array

## `MultipleUnLinearRegression_Pgm(x, y, call_back)`

声明：function

多元非线性回归测试

| 参数        | 类型   | 说明                         |
| ----------- | ------ | ---------------------------- |
| `x`         | array  | 二维数字数组类型，观察数据点 |
| `y`         | array  | 一维数字数组类型，观察数据值 |
| `call_back` | string | 字符串类型                   |

返回：array

## `MultiUnLineralRegression_CallBack(x)`

声明：function

多元非线性回归的回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `polynomialRegression(x, y, m)`

声明：function

多项式回归

| 参数 | 类型    | 说明                        |
| ---- | ------- | --------------------------- |
| `x`  | array   | 一维数字数组类型,观察数据点 |
| `y`  | array   | 一维数字数组类型,观察数据值 |
| `m`  | integer | 整数类型，拟合最大阶数      |

返回：array

### 示例

```tsl
x := array(0.00, 1.00, 2.00);
y := array(1.00, 2.00, 3);
return polynomialRegression(x, y, 1);
```

## `PolynomialRegression_Pgm(x, y, m)`

声明：function

多项式回归测试

| 参数 | 类型  | 说明                   |
| ---- | ----- | ---------------------- |
| `x`  | array | 一维数字数组类型       |
| `y`  | array | 一维数字数组类型       |
| `m`  | any   | 整数类型，拟合最大阶数 |

返回：array

## `SingleLinearRegression_CallBack(x)`

声明：function

单元线性回归的回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `SingleLineralRegression_Pgm(x, y)`

声明：function

单元线性回归测试

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 一维数字数组类型 |
| `y`  | array | 一维数字数组类型 |

返回：array

## `singleRegression(x, y, call_back)`

声明：function

单元回归

| 参数        | 类型   | 说明                         |
| ----------- | ------ | ---------------------------- |
| `x`         | array  | 一维数字数组类型，观察数据点 |
| `y`         | array  | 一维数字数组类型，观察数据值 |
| `call_back` | string | 字符串，计算系数矩阵的回调   |

返回：array

### 示例

```tsl
x := array(0.00, 1.00, 2.00);
y := array(1.00, 2.00, 3);
call_back := 'SingleLinearRegression_CallBack';
return singleRegression(x, y, call_back);
```

## `SingleUnLineralRegression_CallBack(x)`

声明：function

单元非线性回归的回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 一维数字数组类型 |

返回：array

## `SingleUnLineralRegression_Pgm(x, y)`

声明：function

单元非线性回归测试

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 一维数字数组类型 |
| `y`  | array | 一维数字数组类型 |

返回：array
