Я новичок в python, и мне нужна помощь в поиске среднего и отклонений в списке списков. У меня есть список списков, подобных этому:
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9],
[10, 11, 12]]
, и я хочу найти вывод отклонений, как это:
[var_column_1, var_column_2, var_column_3, var_column_4]
Я могу найти среднее, но для отклонений, У меня нет удачи в поиске решения. Вот мой код:
def avg(allgroups):
return [float(sum(i))/len(i) for i in zip(*allgroups)]
def variance(allgroups):
summm = 0.0
for i in zip(*allgroups):
summm = summm + (i-avg(allgroups))**2
return summm / (len(allgroups)-1)
TheAvg=avg(allgroups)
print(TheAvg)
Variance=variance(allgroups)
print(Variance)
Я получаю сообщение об ошибке на экране:
*summm = summm + (i-avg(allgroups))**2
TypeError: unsupported operand type(s) for -: 'tuple' and 'list'*
Буду благодарен за любую помощь. P / S: я не могу использовать numpy для этой проблемы.