我有一组观测数据,并且我正在计算几组计算数据,然后尝试找出观测数据和计算数据之间的RMS误差。我必须将RMS错误定义为函数,因为它将在优化代码中使用,该代码将被视为函数。现在,由于RMS误差需要求和,然后求平均值,因此我们需要将其初始化为sum = 0,然后sum = sum + AAA(例如)。但是我不明白在将其定义为“函数”之后如何在Python中做到这一点。代码如下
import math
import numpy as np
def computed (z):
return (constant*z)/(z**2+(x-x0)**2)
observed=[]
with open ('observed_data.txt') as finp:
lines=finp.readlines()
size=100
observed=[0]*size
i=0
for line in lines:
i=i+1
observed[i]= float(line)
def error(z):
for i in range (1, 100, 1):
x=i
return math.sqrt(((computed(z)-observed[i])**2)
在这里,如何将错误初始化为所有100个错误的总和以计算平均值?这仅是均方根误差的一种计算,这很容易。但是由于必须将其定义为函数,因此我面临着这个问题。