Я получаю RuntimeWarning: invalid value encountered in double_scalars
в следующем коде:
resident_specific_occupation_chances[iii] = (resident_specific_occupation_chances[iii]/summed)*((1-unemployment_chance)/1)
Я действительно не понимаю, почему это происходит. Я много читаю о двойных скалярных предупреждениях, но для меня это не имеет смысла.
Где возникает эта ошибка? В левой части уравнения при назначении нового значения для моего элемента списка? Или с правой стороны во время расчета?
Я не использую numpy здесь.
Как я могу предотвратить это? Я не хочу отключать предупреждения.
Я пытался восстановить проблему в простой форме, но предупреждение не появляется:
test_list = [0.05, 0.2, 0.1, 0.3]
summed = sum(test_list[:3])
excluded = 0.3
for i in range(len(test_list)-1):
test_list[i] = (test_list[i]/summed)*((1-excluded)/1)
print(test_list)
>>>>[0.1, 0.4, 0.2, 0.3]