mkurtosis

语法

mkurtosis(X, window, [biased=true], [minPeriods])

窗口计算规则请参考:mFunctions

参数

X 是一个向量/矩阵/表/由等长向量组成的元组。其中,mmse, mslr 仅支持输入向量。

window 是大于等于 2 的正整型或 DURATION 标量。表示滑动窗口的长度。
注: 在流计算引擎中调用滑动窗口函数时,window 的上限为 102400。

biased 是一个布尔值,表示是否是有偏估计。默认值为 true,表示有偏估计。

minPeriods 是一个正整数。为滑动窗口中最少包含的观测值数据。

详情

在给定长度(以元素个数或时间长度衡量)的滑动窗口内计算 X 的峰度。

例子

m=matrix(1 9 3 100 3 2 1 -100 9 10000, 1 2 3 4 5 6 7 8 9 100);
m.mkurtosis(8);
#0 #1
3.989653641279048 1.761904761904762
3.989840910744778 1.761904761904762
6.140237905908072 6.101712240467206
m.rename!(date(2020.04.06)+1..10, `col1`col2)
m.setIndexedMatrix!()
mkurtosis(m, 8d)
label col1 col2
2020.04.07
2020.04.08
2020.04.09 1.5 1.5
2020.04.10 2.3195 1.64
2020.04.11 3.2251 1.7
2020.04.12 4.163 1.7314
2020.04.13 5.1141 1.75
2020.04.14 3.9897 1.7619
2020.04.15 3.9898 1.7619
2020.04.16 6.1402 6.1017
mkurtosis(m, 1w)
label col1 col2
2020.04.07
2020.04.08
2020.04.09 1.5 1.5
2020.04.10 2.3195 1.64
2020.04.11 3.2251 1.7
2020.04.12 4.163 1.7314
2020.04.13 5.1141 1.75
2020.04.14 3.4937 1.75
2020.04.15 3.4937 1.75
2020.04.16 5.1645 5.145

DolphinDB 的 kurtosis 默认情况(当 biased=true 时)存在偏差,而 pandas 的 kurt 默认为无偏估计,且减去正态分布的峰值3。下面例子示意了使用滑动窗口时,两者的等价转换关系:

python
m = [[1111,2], [323,9], [43,12], [51,32], [6,400]]
df = pandas.DataFrame(m)
y = df.rolling(4).kurt()

dolphindb
m=matrix(1111 323 43 51 6, 2 9 12 32 400)
m.mkurtosis(4, false)-3
#0 #1
2.504252 2.366838
3.675552 3.941262

相关函数:kurtosis