-
Hello,
I would like to check the estimated ultimates for total incurred from chain ladder, according to each of these estimators. When I fit the estimators to the chain ladder, all of them give the same result for ultimates.
I would expect the ultimates to differ according to different development factors. Is there something wrong how I fit the model? Maybe I should use a different model to check how my ultimates change according to different development patterns? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
Hi @paulinaKr , Once you fit an estimator, you don't need to fit it again. I think you're implicitly doing that using dev_est_t = cl.Development().fit(triangles['total_incurred']) # This is now fit
model = cl.Chainladder().fit(dev_est_t.transform(triangles['total_incurred'])) # Only calling Development.transform here Alternatively, if you're planning on transforming the same triangle you are fitting, pipe = cl.Pipeline(
[('dev', cl.Development()),
('model', cl.Chainladder())] # named this step as "model"
)
pipe.fit(triangles['total_incurred'])
pipe.named_steps.model.ultimate_ # Accessing the ultimate_ from the "model" step |
Beta Was this translation helpful? Give feedback.
Hi @paulinaKr ,
Once you fit an estimator, you don't need to fit it again. I think you're implicitly doing that using
fit_transform
. Instead you calltransform
only if you've already fit it:Alternatively, if you're planning on transforming the same triangle you are fitting,
Pipeline
estimators make the code a lot cleaner and not have to think aboutfit
vstransform
.