楼主: xhcy23
5226 9

[问答] 请问要计算这种加和公式怎样用R编程? [推广有奖]

  • 2关注
  • 0粉丝

大专生

73%

还不是VIP/贵宾

-

威望
0
论坛币
1594 个
通用积分
0.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
16380 点
帖子
13
精华
0
在线时间
107 小时
注册时间
2014-3-8
最后登录
2023-5-26

楼主
xhcy23 发表于 2015-4-26 18:55:43 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
里面的p我是直接按[x,j]调用矩阵里面的数据的,但是写循环就会出问题。。。我写了一个。。。但是怎么都出问题。。。想问问为什么?怎样改正呢?
I<-function(x,y,z,r1,r2,A1,A2,A3){
C2<-matrix()
for(m in 1:(55-j-x)){
   for(j in (21-z):105){
      C2[m,j]=(c[z,j]-c[z,j+1])*(b[y,m+j]-b[y,m+j+1])*a[x,j]*A2/((1+r2)^(j+m+1))
   }
}
sum(C2)}
I(30,30,5,0.025,0.035,120000,80000,200000)


a、b、c都是生命表矩阵
二维码

扫码加我 拉你入群

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

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

关键词:R编程 怎样编程

保险.jpg (28.96 KB)

保险.jpg

沙发
waxxyeah 发表于 2015-4-26 19:11:36
你这两个for是不是写反了?你这样写第一个的j没定义啊……

藤椅
xhcy23 发表于 2015-4-26 20:54:16
waxxyeah 发表于 2015-4-26 19:11
你这两个for是不是写反了?你这样写第一个的j没定义啊……
我换了一下 顺序,但是还是报错,这种错误要怎么改呢?

出错.jpg (18.61 KB)

出错.jpg

板凳
nuomin 发表于 2015-4-27 15:27:14
xhcy23 发表于 2015-4-26 20:54
我换了一下 顺序,但是还是报错,这种错误要怎么改呢?
R里数组下标是从1开始。你的公式里的m,j都是从0开始,所以会出现问题。
不讲寿险精算好几年了,看到公式很亲切

报纸
a443115637 发表于 2015-4-27 16:06:37
都告诉你下标出界了

地板
xhcy23 发表于 2015-4-27 21:23:12
nuomin 发表于 2015-4-27 15:27
R里数组下标是从1开始。你的公式里的m,j都是从0开始,所以会出现问题。
不讲寿险精算好几年了,看到公式 ...
可是我程序里面m、j都不是从零开始的啊。。。我把公式里面的0都舍弃了,直接从0之后的算的。。。

7
xhcy23 发表于 2015-4-27 21:25:02
a443115637 发表于 2015-4-27 16:06
都告诉你下标出界了
我才学R的。。。但是要用来算东西。。。对于好多报错都不懂。。。百度了也看不懂。。。才过来问的。。。

8
xhcy23 发表于 2015-4-27 21:25:39
a443115637 发表于 2015-4-27 16:06
都告诉你下标出界了
我才学R的。。。但是要用来算东西。。。对于好多报错都不懂。。。百度了也看不懂。。。才过来问的。。。

9
nuomin 发表于 2015-4-28 08:41:10
xhcy23 发表于 2015-4-27 21:23
可是我程序里面m、j都不是从零开始的啊。。。我把公式里面的0都舍弃了,直接从0之后的算的。。。
C2是什么?

10
19hundred93 在职认证  学生认证  发表于 2017-10-2 15:55:59
首先是for写反了,其次,你换过来以后会发现,当j=100 的时候,55-j-x是负的数,所以报错了

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 16:19