다음 정의 된 함수를 사용하여 변수를 계산하려고합니다.
나는 그것이 Function (0 : n) 이고 Function (0 : last (age_mortality)) 가 오류를 일으킨다 는 것을 알아 냈습니다. 그러나 내 목적은 0에서 n까지 벡터 시작을 얻을 수 있다는 것입니다.
누구든지 어떻게 해결할 수 있는지 알고 있습니까?
이 문제가 해결되면 몇 가지 오류와 경고가 표시되고 수렁에 빠졌습니다.
age_mortality==age
=> age_mortality %in% age
: 당신이의 요소의 인덱스를 취득하면됩니다하려는 age_mortality
에서 발견되는 그 age
요소 1이 경우 먼저 확인되며,이은으로, 두 번째 코드에 의해 달성 될 수 age_mortality
의 요소 1과 같다 age
, 어떤 age
와 길이가 다른 그대로 경고를 표시 age_mortality
합니다. 모두 찾기 바꾸기로 변경 사항을 적용하십시오. 이것은 적어도 결과를 출력하는 함수를 얻습니다.N = length(age_mortality[index:length(age_mortality)])
다음과 같은 경고가 발생합니다.in index : length (age_mortality) : 수치 표현에는 81 개의 요소가 있으며 처음 사용 된 요소 만 있습니다.
계산하려는 것은 남은 년 수이므로 다음으로 변경하는 것이 좋습니다. N = length(age_mortality) - index +1
또한 다음과 같은 줄을 변경해야합니다.
ax <- sapply(1:length(index), function(i) sum( (v^(1:(N[i]-1))) * L[(index[i]+1):(length(L))] / L[index[i]] ))
이것이 당신이 의견을 얻으려는 것이 아니라면 우리는 그것을 알아낼 것입니다.
1 : In AnnuityDue (age + t)-nEx (t) * AnnuityDue (age + n) : 긴 물체 길이는 짧은 물체 길이의 배수가 아닙니다.
2 : In S * Benefit (0 : last (age_mortality)) * (1 + f) + Premium * (e * : 긴 물체 길이는 짧은 물체 길이의 배수가 아닙니다.
우리는의 출력을 인쇄한다면 Benefit
, AnnuityDue
그리고 nEx
기능은 우리가 그것을 일으키는 것을 볼 수 있습니다, 분명히 어떤 NA
S, NAN
s와 Inf
S는 벡터의 길이가 다른 원인을 무엇인가. omit
벡터를 입력으로 받고 유한하고 정의 된 요소 만 반환 하는 함수를 정의하여이 문제를 해결할 수 있습니다 .
omit <- function(x) x[is.finite(x)]
그런 다음 값을 반환하기 전에 이전 함수 각각의 출력을 리디렉션합니다.
Benefit <- function(t){
### your code here
return(omit(B))
}
# same thing for the other functions stated above
이제 코드가 경고없이 작동하며 출력이 올바른지 확실하지 않습니다.
> Insurance(age_x1=40, age_y1=NA, age_x2=NA, age_y2=NA,
+ r=4, S=1, n=25, I=0, e=0, f=0, n_guaranteed=NA,
+ PremiumPayment="single", PremiumFrequency="yearly",
+ BenefitType_x="whole life assurance", BenefitType_y=NA, BenefitType_joint=NA,
+ BenefitPayment="year end", BenefitFrequency="yearly", Policyholder="Group x")
$`PV Benefit`
[1] 0.2305597
$`PV Expenses`
[1] 0
$`PV Premium`
[1] 0.2305597
$Premium
[1] 0.2305597
$Reserve
[1] 0.000000000 0.008509399 0.017309504 0.026403962 0.035796264 0.045489822 0.055485862 0.065786354 0.076391321 0.087299629 0.098510445 0.110019422 0.121823431 0.133915583 0.146289267
[16] 0.158935859 0.171845028 0.185004428 0.198400619 0.212018291 0.225840105 0.239847703 0.254020586 0.268336638 0.282771726 0.297301263 0.311898937 0.326537415 0.341188133 0.355821656
[31] 0.370408020 0.384917092 0.399318583 0.413582476 0.427679070 0.441579072 0.455254361 0.468678022 0.481824380 0.494669926 0.507192372 0.519371971 0.531190799 0.542633303 0.553686424
[46] 0.564339674 0.574584613 0.584415520 0.593828910 0.602823466 0.611400236 0.619562371 0.627314658 0.634663662 0.641617653 0.648186080 0.654379478 0.660209598 0.665688864 0.670830245
[61] 0.675647388 0.680153925 0.684363793 0.688290888 0.691949218 0.695352424 0.698514828 0.701448744 0.704168487 0.706688199 0.709024689 0.711218119 0.713232273 0.715455505 0.717778932
[76] 0.720412393 0.730978749
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다