全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
827 2
2021-09-03
如题,根据卡尔曼滤波计算出来的矩阵第二列的数据小数点位数比其他列的少一位,做乔氏分解一直显示非正定,有哪位大神可以指点一下么~感激不尽!!
1630661291783156.png
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-9-4 08:32:05
是要计算马氏距离吗?

第二列的问题,确实很奇怪,不知道你用什么函数做的。

library(Rmpfr)
prec=8*log2(10) #浮点精度8位
#比较一下两种计算的结果
exp(2)
#[1] 7.389056
exp(mpfr(2, prec))
#1 'mpfr' number of precision  26   bits
#[1] 7.38905609

你参考上面的例子,浮点数指定精度后计算,看看出来的结果是不是可以进行Cholesky分解。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-9-4 09:33:12
llb_321 发表于 2021-9-4 08:32
是要计算马氏距离吗?

第二列的问题,确实很奇怪,不知道你用什么函数做的。
不是,是卡尔曼滤波,状态空间模型中需要计算波动V_t_T这个矩阵,但是R算出来的结果不对称,小数点位数第二列总是少一位,没法做乔氏分解。而且有的矩阵计算的没问题,有的矩阵却不行,太玄乎了。<br>
这位大神,问下这是什么情况
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群