Move generated builtin and dotnet function docs into the upgraded taxonomy, remove legacy route pages, and regenerate function_index.tsv from markdown headings.
793 lines
22 KiB
Markdown
793 lines
22 KiB
Markdown
# Builtin - 数学 / 矩阵
|
||
|
||
## 矩阵运算
|
||
|
||
### `mInit(size_or_shape, value)`
|
||
|
||
生成指定尺寸并填充指定值的 FMArray。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `size_or_shape` | array | 一维长度,或形如 `array(rows, cols)` 的尺寸数组 |
|
||
| `value` | float | 填充值;值的类型决定 FMArray 单元格类型 |
|
||
|
||
返回:fmarray
|
||
|
||
### `mInitDiag(rows, cols, value)`
|
||
|
||
生成对角线填充值的 FMArray。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `rows` | integer | 行数 |
|
||
| `cols` | integer | 列数 |
|
||
| `value` | float | 对角线填充值 |
|
||
|
||
返回:fmarray
|
||
|
||
### `mRand(rows, cols)`
|
||
|
||
生成随机 FMArray。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `rows` | integer | 行数 |
|
||
| `cols` | integer | 列数 |
|
||
|
||
返回:fmarray
|
||
|
||
## 数值微积分
|
||
|
||
### `mtmF(n, m, _type)`
|
||
|
||
动力指标
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `n` | any | 天数 |
|
||
| `m` | any | 天数 |
|
||
| `_type` | any | 结果类型 |
|
||
|
||
返回:any
|
||
|
||
### `mtmMaV(n, m)`
|
||
|
||
动力指标MTM的移动平均MTMMa,与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()和复权基准日pn_rateday()相关。调用时需注意设置系统参数。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `n` | any | 整数,交易日天数 |
|
||
| `m` | any | 整数,交易日天数 |
|
||
|
||
返回:float
|
||
|
||
### `mtmV(n)`
|
||
|
||
动力指标MTM,计算当日收盘价C与N日前的收盘价Cn之差M,差值越来越大则意味着市势正加速上升,与系统证券pn_stock()、系统时间pn_date()、系统周期pn_cycle()、复权方式pn_rate()和复权基准日pn_rateday()相关。调用时需注意设置系统参数。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `n` | any | 整数,交易日天数 |
|
||
|
||
返回:float
|
||
|
||
### `frameMeanJs(data, b_type, equal_var, alpha)`
|
||
|
||
均值JS压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `b_type` | string | 字符串,压缩目标均值向量,b0:零向量,b1:均值,b2:波动率加权均值,b3:样本均值的均方误差 |
|
||
| `equal_var` | bool | object |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见JS均值压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `frameMeanBs(data, alpha)`
|
||
|
||
均值BS压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见BS均值压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `frameMeanBop(data, b_type, alpha)`
|
||
|
||
均值BOP压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `b_type` | string | 字符串,压缩目标均值向量,b0:零向量,b1:均值,b2:波动率加权均值,b3:样本均值的均方误差 |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见BOP均值压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `frameCovLw(data, alpha)`
|
||
|
||
协方差LW压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见LW协方差压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `frameCovOas(data, alpha)`
|
||
|
||
协方差OAS压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见OAS协方差压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `frameCovBs(data, alpha)`
|
||
|
||
协方差BS压缩估计
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 二维数据表,T×N,T期样本数量,N个股票 |
|
||
| `alpha` | float | 实数,压缩系数,0到1,缺省时系统自动计算(推荐),计算方式见BS协方差压缩估计 |
|
||
|
||
返回:array
|
||
|
||
### `arGetValue2()`
|
||
|
||
数组类型教学函数。返回当前股票历史资产负债表序列的第四项,与系统参数(股票)相关。
|
||
|
||
返回:array
|
||
|
||
### `arSubArray(stocks, rdate)`
|
||
|
||
字符串数组类型教学函数。返回字符串数组Stocks中每一只股票在指定报告期Rdate的十大股东情况。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `stocks` | array | 证券,股票代码 |
|
||
| `rdate` | datetime | 报告期 |
|
||
|
||
返回:array
|
||
|
||
### `arDefine1(_type)`
|
||
|
||
数组类型教学函数。跟据Type的值来返回相应的随机数组。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `_type` | any | 用户自定义 |
|
||
|
||
返回:array
|
||
|
||
### `arGetValue1(bkname)`
|
||
|
||
数组类型教学函数。对板块Bkname下证券代码遍历,获得每个证券当前时间的收盘价。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `bkname` | string | 市场与板块 |
|
||
|
||
返回:array
|
||
|
||
### `arDefine3()`
|
||
|
||
数组类型教学函数。创建一个10×10的二维随机数组,同时对列下标命名。
|
||
|
||
返回:array
|
||
|
||
### `demoMtVaCholesky()`
|
||
|
||
mt_va_Cholesky()函数教学函数。对指定对称正定矩阵的行列式值平方根,其中矩阵为array( (5.0,7.0,6.0,5.0),(7.0,12.0,8.0,7.0), (6.0,8.0,10.0,9.0),(5.0,7.0,9.0,10.0));。
|
||
|
||
返回:float
|
||
|
||
### `demoMtIvGaussJordan()`
|
||
|
||
mt_iv_Gauss_Jordan()函数教学函数。求一般实矩阵的逆矩阵,其中求逆的矩阵A=array((0.2368,0.2471,0.2568,1.2671),(0.1968,0.2071,1.2168,0.2271),(0.1581,1.1675,0.1768,0.1871),(1.1161,0.1254,0.1397,0.149))。
|
||
|
||
返回:any
|
||
|
||
### `demoMtSubtraction()`
|
||
|
||
mt_Subtraction()函数教学函数。矩阵减法,其中矩阵A=array((3,-3),(5,-5)),B=array((-2,4),(1,8)),返回A-B。
|
||
|
||
返回:any
|
||
|
||
### `demoMtAddition()`
|
||
|
||
mt_Addition ()函数教学函数。矩阵加法,其中矩阵A=array((3,-3),(5,-5)),B=array((-2,4),(1,8)),返回A+B。
|
||
|
||
返回:any
|
||
|
||
### `demoMtTransposition()`
|
||
|
||
mt_Transposition()函数教学函数。矩阵转置,返回转置后的矩阵,其中转置的矩阵A=array((3,-3,11),()5,-5,8)。
|
||
|
||
返回:any
|
||
|
||
### `framedropDuplicates(data, subset, keep, rowname)`
|
||
|
||
数据表-去重
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | Table,二维数据表,源数据 |
|
||
| `subset` | string | String,去重字段 |
|
||
| `keep` | string | String,去重保留方法,""f"":保留首个,""l"":保留最后 |
|
||
| `rowname` | string | String,保留原索引重置字段名 |
|
||
|
||
返回:array
|
||
|
||
### `framedropNa(data, how, subset)`
|
||
|
||
数据表-去掉含Nan的行
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | Table,二维数据表,源数据 |
|
||
| `how` | string | String,去na行方法,默认/1/""any"":任意,2/""all"":所有 |
|
||
| `subset` | string | String,去重字段 |
|
||
|
||
返回:array
|
||
|
||
### `framePivotTable(t, index, columns, vals, aggfunc, aggfuncnames)`
|
||
|
||
分组、透视、汇总,类似可见Pivot_table
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `t` | any | 数据表类型,数据表 |
|
||
| `index` | string | 字符串,行分类字段,字段值含有nill等不可设为索引 |
|
||
| `columns` | array | 一维字符串数组,列分类字段,字段值含有nill等不可设为索引 |
|
||
| `vals` | array | 一维字符串数组,值字段,未指定时,代表对所有除index、columns 指定字段之外的所有字段计算 |
|
||
| `aggfunc` | string | 字符串,值汇总函数,支持如下:;a、所有 TS_SQL 聚合函数:e.g:"avg"(avgof),"sum"(sumof);b、内置函数:;"\_details": 分组详情;"\_first": 第一个;"\_last": 最后一个;c、自定义函数中使用关键字thisgroup 得到当前分组数据。 |
|
||
| `aggfuncnames` | array | 一维字符串数组,自定义汇总函数名称对照表 |
|
||
|
||
返回:array
|
||
|
||
### `framelagZf(t, period, fillzero)`
|
||
|
||
数据表-推移涨幅(%) 涨幅(%)算法: period>0: 前n期涨幅 r\[i\] := (t(i)/t(i-period)-1)\*100; period<0: 到未来n期涨幅 r\[i\] := (t(i-period)/t(i)-1)\*100; 注意period>0时,与framePct_change的结果一致。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `t` | array | Array of number,数据表,支持一维和二维 |
|
||
| `period` | any | Integer,移动期数,默认1 |
|
||
| `fillzero` | bool | Bool,下标越界是,是否返回0.False返回inf |
|
||
|
||
返回:array
|
||
|
||
### `framepctChange(t, period, fillzero)`
|
||
|
||
数据表-到当期的变动百分比(%) 变动百分比(%)算法 r\[i\] := (t(i)/t(i-period)-1)\*100;
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `t` | array | Array of number,数据表,支持一维和二维 |
|
||
| `period` | any | Integer,变动期数,默认1 |
|
||
| `fillzero` | bool | Bool,下标越界是,是否返回0. False返回inf |
|
||
|
||
返回:array
|
||
|
||
### `frameAddprefix(t, prefix, ifcopy)`
|
||
|
||
数据表-数组下标批量加前缀 二维数组,对列名加前缀 一维数组,对行下标加前缀
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `t` | any | Table,源数组 |
|
||
| `prefix` | string | String,前缀 |
|
||
| `ifcopy` | bool | Bool,是否在拷贝后的数组改列名,默认True |
|
||
|
||
返回:array
|
||
|
||
### `frameAddsuffix(t, suffix, ifcopy)`
|
||
|
||
数据表-数组下标批量加后缀 二维数组,对列名加后缀 一维数组,对行下标加后缀
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `t` | any | Table,源数组 |
|
||
| `suffix` | string | String,后缀 |
|
||
| `ifcopy` | bool | Bool,是否在拷贝后的数组改列名,默认True |
|
||
|
||
返回:array
|
||
|
||
### `frameIndexFilter(rawkeys, filter_cond, filter_type, dz_valuetokey)`
|
||
|
||
数组筛选器,用于下标数组行名或列名的筛选器
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `rawkeys` | array | 一维字符串数组,下标数组(0开始的自增下标) |
|
||
| `filter_cond` | string | 字符串,筛选条件 |
|
||
| `filter_type` | any | 用户自定义,筛选类型 |
|
||
| `dz_valuetokey` | any | 整数,Out:类型1时,输出ivalue对照用 |
|
||
|
||
返回:array
|
||
|
||
### `frameIndexGetilocDz(raw_data_cols)`
|
||
|
||
用于方便获取 下标值 与 字段位置 下标数组对照(下标值->下标位置)
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `raw_data_cols` | array | 一维字符串数组,下标数组(从0开始自增数组) |
|
||
|
||
返回:array
|
||
|
||
### `mtMultiplication(a, b, c)`
|
||
|
||
求N×M阶矩阵A与M×L阶矩阵B的乘积矩阵,即C=A×B
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×M。被乘矩阵 |
|
||
| `b` | array | 实型二维数组,体积为M×L。乘矩阵 |
|
||
| `c` | array | 实型二维数组,体积为N×L。返回的结果矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtAddition(a, b, c)`
|
||
|
||
求N×M阶矩阵A与N×M阶矩阵B的和矩阵,即C=A+B
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×M。被加矩阵 |
|
||
| `b` | array | 实型二维数组,体积为N×M。加矩阵 |
|
||
| `c` | array | 实型二维数组,体积为N×M。返回的结果矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtSubtraction(a, b, c)`
|
||
|
||
求N×M阶矩阵A与N×M阶矩阵B的差矩阵,即C=A-B
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×M。被减矩阵 |
|
||
| `b` | array | 实型二维数组,体积为N×M。减矩阵 |
|
||
| `c` | array | 实型二维数组,体积为N×M。返回的结果矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtTransposition(a, c)`
|
||
|
||
求m×n阶矩阵A的转置矩阵,即C=
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×M。转置前矩阵 |
|
||
| `c` | array | 实型二维数组,体积为M×N。返回转置后的结果矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtIvGaussJordan(a, x)`
|
||
|
||
用高斯-约当(Gauss-Jordan)法求解n阶方阵A的逆矩阵
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×N。原矩阵 |
|
||
| `x` | array | 实型二维数组,体积为N×N。返回的逆矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtIvLdl(a, x)`
|
||
|
||
求n阶对称正定矩阵A的逆矩阵
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×N。原矩阵,必须为一个对称矩阵 |
|
||
| `x` | array | 实型二维数组,体积为N×N。返回的逆矩阵 |
|
||
|
||
返回:any
|
||
|
||
### `mtVaGaussJordan(a, v)`
|
||
|
||
用高斯-约当(Gauss-Jordan)法求解n阶方阵A的行列式值
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×N。 |
|
||
| `v` | float | 实型数。返回的行列式值 |
|
||
|
||
返回:any
|
||
|
||
### `mtVaCholesky(a, v)`
|
||
|
||
求对称正定矩阵的行列式值平方根
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 实型二维数组,体积为N×N。原矩阵,必须为一个对称矩阵 |
|
||
| `v` | float | 实型数。返回矩阵行列式值的平方根 |
|
||
|
||
返回:any
|
||
|
||
### `mtDecomposeLu(h, l, u)`
|
||
|
||
进行lu分解,H方阵,则可以得到下三角阵L,上三角矩阵U
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `h` | array | 需要被分解的对称矩阵 |
|
||
| `l` | array | 下三角阵 |
|
||
| `u` | array | 上三角阵 |
|
||
|
||
返回:any
|
||
|
||
### `chol(h, l, p, options, sneg)`
|
||
|
||
进行乔列斯基分解,H对称正定,则可以得到三角阵L
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `h` | array | 需要被分解的对称矩阵,正定矩阵的分解才能成功 |
|
||
| `l` | array | 变参返回乔列斯基分解得到的三角阵 |
|
||
| `p` | integer | 变参返回H的分解信息,-1表示全部分解成功,否则表示分解到第p步 |
|
||
| `options` | array | 三角阵选项,默认'upper'为上三角,'lower' 为下三角 |
|
||
| `sneg` | array | 当 H 非正定时计算曲率方向,正定时为空 |
|
||
|
||
返回:array
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
h := corr(rand(100, 4));
|
||
chol(h, l, p); // 乔列斯基分解
|
||
if p = -1 then return l; // p=-1表示分解成功
|
||
// 输出:
|
||
// Execute script error at Line:1
|
||
// function:__main__:line 1:instruction:rand: function:corr compile error or not found
|
||
// function:__main__:line 1:instruction:rand: function execute error
|
||
```
|
||
|
||
### `mtDecomposeQr(m, q, r, e, qr_type)`
|
||
|
||
E缺省的时候,对矩阵进行QR分解,M=Q :\*R,不缺省E的时候对矩阵进行QRe分解,M:\*e=Q:\*R.该分解使得R矩阵的对角元按绝对值从大倒小排列
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `m` | array | 待分解矩阵 |
|
||
| `q` | array | 可选参数,变参返回正交矩阵Q |
|
||
| `r` | array | 可选参数,变参返回上三角矩阵R |
|
||
| `e` | array | 可选参数,变参返回列置换矩阵E,默认E的结构是一个方阵,当有qr_Type参数时,0:E方阵,1:E为1维数组,2:忽略E参数。 |
|
||
| `qr_type` | any | 可选参数,整数,为0,1,2之一,用于设定E参数的行为。 |
|
||
|
||
返回:array
|
||
|
||
### `mtDecomposeEig(a, wr, wi, vr)`
|
||
|
||
计算特征值及特征向量
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 需要被计算的n\*m矩阵 |
|
||
| `wr` | array | 变参返回A的特征值的实部,一维数组 |
|
||
| `wi` | array | 变参返回A的特征值的虚部,一维数组 |
|
||
| `vr` | array | 变参返回A的特征向量,二维数组 |
|
||
|
||
返回:array
|
||
|
||
### `mtDecomposeSvd(a, s, u, d)`
|
||
|
||
矩阵的奇异值(SVD)分解
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 待分解的m\*n矩阵 |
|
||
| `s` | array | 变参返回A的奇异值,一维数组 |
|
||
| `u` | array | 变参返回A的左奇异矩阵,二维数组 |
|
||
| `d` | array | 变参返回A的右奇异矩阵,二维数组 |
|
||
|
||
返回:any
|
||
|
||
### `mtDecomposeChol(a, ra, flag)`
|
||
|
||
cholesky分解基础函数;如果不担心效率可以使用公用函数chol
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 待分解的方正矩阵(二维数字数组,行列数相同) |
|
||
| `ra` | array | 分解结果返回 |
|
||
| `flag` | bool | object |
|
||
|
||
返回:array
|
||
|
||
### `mtDecomposeLdl(a, ra, p)`
|
||
|
||
ldl 分解基础函数,如果a正定L\*D\*`L=A;
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 待分解的方正矩阵(二维数字数组,行列数相同) |
|
||
| `ra` | array | 分解结果返回,包括,三角矩阵,对角矩阵 |
|
||
| `p` | array | 分解结果的行列信息.a如果为正定矩阵那么p为1到length(a)递增序列.此时,ra的下三角为 L矩阵,对角元为D矩阵.当p为非递增序列,时表示行列置换信息.如果p\[i\]=k>0 and k<> i+1,那么a的i行和k-1行互换,i列与k-1列互换,p\[i\]=k<0 那么d在此处为2\*2的块,在ra的i-1,i行列的4个元,a的第i行和k-1行互换,i列和k-1列互换. |
|
||
|
||
返回:array
|
||
|
||
### `reIndex2(data, flag)`
|
||
|
||
修改数组的行标或列名,主要用于字符串下标修改为数字下标等
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array,tablearray | |
|
||
| `flag` | integer | |
|
||
|
||
返回:array,tablearray
|
||
|
||
#### 示例
|
||
|
||
范例数据表:a := array('C':('A':1,'B':'too'),'D':('A':2,'B':'two'));
|
||
|
||
```tsl
|
||
// 其显示如下:
|
||
```
|
||
|
||
范例一:将表列标改为数字
|
||
|
||
```tsl
|
||
a := array('C': ('A': 1, 'B': 'too'), 'D': ('A': 2, 'B': 'two'));
|
||
return reIndex2(a, 0);
|
||
// 输出:
|
||
// Execute script error at Line:2
|
||
// function:__main__:line 2:instruction:usercall: function:reIndex2 compile error or not found
|
||
// function:__main__:line 2:instruction:usercall: function execute error
|
||
```
|
||
|
||
范例二:将行列标作为首列首行
|
||
|
||
```tsl
|
||
a := array('C': ('A': 1, 'B': 'too'), 'D': ('A': 2, 'B': 'two'));
|
||
return reIndex2(a, 5);
|
||
// 输出:
|
||
// Execute script error at Line:2
|
||
// function:__main__:line 2:instruction:usercall: function:reIndex2 compile error or not found
|
||
// function:__main__:line 2:instruction:usercall: function execute error
|
||
```
|
||
|
||
### `orth(a)`
|
||
|
||
矩阵范围内的标准正交基向量
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 数组, |
|
||
|
||
返回:array
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
// 计算矩阵A的标准正交基
|
||
a := array((0, 1), (1, 1), (1, 0));
|
||
return orth(a);
|
||
// 输出:
|
||
// Execute script error at Line:3
|
||
// function:__main__:line 3:instruction:usercall: function:orth compile error or not found
|
||
// function:__main__:line 3:instruction:usercall: function execute error
|
||
```
|
||
|
||
### `det(a)`
|
||
|
||
行列式
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 二维数字数组 样本 |
|
||
|
||
返回:real
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
a := array((1, 2), (3, 4));
|
||
return det(a); // -2
|
||
```
|
||
|
||
### `isSymmetry(a, tol)`
|
||
|
||
判断是否为对称矩阵
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | array 二维数组 |
|
||
| `tol` | real | real 精度 |
|
||
|
||
返回:integer
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
a := array((2, 1), (1, 3));
|
||
return isSymmetry(a, 0.1); // 1
|
||
```
|
||
|
||
### `diag(a)`
|
||
|
||
对角阵
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | array 数组 |
|
||
|
||
返回:array
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
a := array((2, 1), (1, 3));
|
||
return diag(a); // array(2,3);
|
||
```
|
||
|
||
### `norm2(a, flag)`
|
||
|
||
范数
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | 二维数字数组 样本 |
|
||
| `flag` | string | string 范数类型 |
|
||
|
||
返回:real
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
a := array((2, 1), (1, 3));
|
||
return norm2(a, 'inf'); // 4
|
||
```
|
||
|
||
### `roots(p)`
|
||
|
||
一元n次方程求根
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `p` | array | array 多项式 |
|
||
|
||
返回:array
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
// 求根:3x^3+x^2+x^1+0^0=0
|
||
return roots(array(0, 1, 1, 3));
|
||
// 输出:
|
||
// Execute script error at Line:2
|
||
// function:__main__:line 2:instruction:array: function:roots compile error or not found
|
||
// function:__main__:line 2:instruction:array: function execute error
|
||
```
|
||
|
||
### `cond(x)`
|
||
|
||
求矩阵 X 的条件数,最大奇异值除最小奇异值
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `x` | array | array 需要求条件数的矩阵或二维数组 |
|
||
|
||
返回:real
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
x := array((9, 1), (-1, 0), (0, 2), (1, 1));
|
||
return cond(x); // 4.22
|
||
```
|
||
|
||
### `pinv(a, t)`
|
||
|
||
伪逆
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | array 矩阵 |
|
||
| `t` | real | real 精度 默认为 2.220446049250313e-016 |
|
||
|
||
返回:array
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
x := array((9, 1), (-1, 0), (0, 2), (1, 1));
|
||
return pinv(x);
|
||
// 输出:
|
||
// Execute script error at Line:2
|
||
// function:__main__:line 2:instruction:usercall: function:pinv compile error or not found
|
||
// function:__main__:line 2:instruction:usercall: function execute error
|
||
```
|
||
|
||
### `eigen(a, eigen, eigenvectors, isreal)`
|
||
|
||
特征根与特征向量
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `a` | array | array 特征值分解的数据 |
|
||
| `eigen` | array | array 变参返回特征值 |
|
||
| `eigenvectors` | array | array 变参返回特征向量 |
|
||
| `isreal` | integer | bool 是否只输出实特征值及特征向量 |
|
||
|
||
返回:integer
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
a := array((1, 2), (3, 4));
|
||
eigen(a, eigen);
|
||
return eigen;
|
||
// array(-0.37,5.37)
|
||
```
|
||
|
||
### `isDefinite(h)`
|
||
|
||
判断矩阵是否正定、半正定,采用 Cholesky 分解方法
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `h` | array | array 样本 |
|
||
|
||
返回:real
|
||
|
||
#### 示例
|
||
|
||
```tsl
|
||
x := array((3, 1), (1, 4));
|
||
return isDefinite(x); // 1
|
||
```
|
||
|
||
### `transPose(data)`
|
||
|
||
数组转置。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 数据表结构数据,第一列数据必须为字符串并且列数要大于3 |
|
||
|
||
返回:array
|
||
|
||
### `transPoseForChart(data)`
|
||
|
||
表格转置。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `data` | array | 数据表类型 |
|
||
|
||
返回:array
|
||
|
||
### `transPoseForChartSysParam()`
|
||
|
||
表格转置。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
|
||
|
||
返回:array
|
||
|
||
### `transPoseForChartSysParamEx()`
|
||
|
||
表格转置。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
|
||
|
||
返回:array
|
||
|
||
### `transDataStandardize(nil_v)`
|
||
|
||
空(NIL)数据标准化。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。
|
||
|
||
| 参数 | 类型 | 说明 |
|
||
| --- | --- | --- |
|
||
| `nil_v` | integer | Nil类型的数据标准化后的值 |
|
||
|
||
返回:array
|