compute aggregated mean with group by
Change your call apply
self-def function to
out = df.groupby(['Cluster']).apply(lambda x : KPI_Pred_mean(x['ConversionPred'],x['VolumePred'])) .reset_index(name = 'KPI_Pred_mean')
Out[267]:
Cluster KPI_Pred_mean
0 0-3 0.480000
1 4-6 0.285714
2 7-9 0.655172