全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1867 2
2019-03-04
悬赏 3 个论坛币 未解决

求助!我在做Lee-Carter的SVD分解,出现了如下错误,求助各位大神应该如何解决?

我尝试了interpolate=TRUE还是会报错





> ###transform the data so that it can beuesd in the packages

> age_svd<-c(1:19)

>std.m<-demogdata(m,E,ages=age_svd,years=oldyear,type="mortality",label="China",name="Total",lambda=0)

> ###fit the data with Lee-Carter modelusing SVD

>China<-lca(std.m,years=std.m$year,ages=std.m$age,adjust="dt",restype="logrates")

Error in if (sum(ax < -1e+09) > 0)stop(sprintf("Some %s rates are zero.\n Try reducing the maximum age orsetting interpolate=TRUE.",  :

  需要TRUE/FALSE值的地方不可以用缺少值


二维码

扫码加我 拉你入群

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

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

全部回复
2019-6-17 11:18:36
你数据中的年龄的组数是不是大于100了?因为lca函数中默认的max.age=100,如果大于100的话,试着写China<-lca(std.m,adjust="dt",max.age=你自己数据中年龄的组数)。
二维码

扫码加我 拉你入群

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

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

2019-6-17 11:20:41
不好意思,我看错了,你的年龄组数是19,lca默认的是minperiod=20,请改成19
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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