【发布时间】:2014-05-07 19:48:24
【问题描述】:
考虑以下函数,它为大小为 n 的积分生成 k 个 Monte Carlo 估计:
定义 MCExponencial(k, n):
sample=[] values=[] estimative=[] for j in range(k): sample = [geradorExponencial(L, e1, e2) for i in range(n)] values=[(math.exp(-L*e1) - math.exp(-L*e2)) * f(sample[i], a1, a2, a3, b1, b2, b3, c)/func_exponencial(sample[i], L) for i in range(n)] estimative.append(mean(values)) return mean(estimativa), estimative
在我的程序中,我这样做
n=10
平均,估计 = MCExponencial(100, n)
当 p
n = n+10 mean, estimative = MCExponencial(100, n)
但我收到以下错误:
Traceback(最近一次调用最后一次): 文件“C:\Users\MM\Desktop\Python\MonteCarlo.py”,第 110 行,在 平均,估计 = MCExponencial(100, n) MCExponencial 中的文件“C:\Users\MM\Desktop\Python\MonteCarlo.py”,第 60 行 estimative.append(平均值(值)) TypeError: 'float' 对象不可调用
我不知道我做错了什么。
Ps:错误发生在'while'迭代。
提前致谢!
【问题讨论】:
标签: python error-handling montecarlo