我想计算每个迭代中的平均适应度候选人,但我不知道怎么做。
import pandas as pd
import numpy as np
while iteration < n_iterations:
print('iteration fitness_candidate')
for i in range(n_particles):
temp = []
fitness_cadidate = fitness_function(particle_position_vector[i])
print(iteration,' ', -(fitness_cadidate))
temp.append(iteration)
temp.append(particle_position_vector[i])
temp.append(-(fitness_cadidate))
ls.append(temp)
iteration = iteration + 1
ls = pd.DataFrame(ls)
正如您可以看到的,每个迭代生成几个合适的候选者。所以我只需要计算迭代中适应度候选的平均值。如果它有4次迭代,那么它需要产生4个平均值。 输出:
iteration fitness_candidate
0 20.24475
0 15.720000000000002
0 16.242250000000002
0 11.0975
0 20.923250000000007
0 15.720000000000002
0 22.924500000000002
0 17.472250000000003
0 24.247250000000005
0 24.305750000000003
iteration fitness_candidate
1 21.72342
1 16.798420000000004
1 19.321920000000002
1 10.945920000000001
1 21.601420000000008
1 17.598920000000003
1 23.202420000000007
1 20.55192
1 24.124920000000003
1 24.305750000000003
iteration fitness_candidate
2 22.801840000000002
2 19.47784
2 21.601090000000003
2 15.597339999999999
2 22.279590000000002
2 19.878089999999997
2 23.080090000000002
2 22.152920000000005
2 24.402840000000005
2 24.305750000000003
iteration fitness_candidate
3 23.050510000000006
3 20.52701
3 21.44951
3 17.447010000000002
3 22.12801
3 19.72651
3 22.528260000000003
3 22.001340000000003
3 24.402840000000005
3 24.00259
问题来源StackOverflow 地址:/questions/59466834/how-to-calculate-average-for-each-iteration
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。