gpt4 book ai didi

python - 从返回 NumPy 数组的循环中收集结果

转载 作者:太空狗 更新时间:2023-10-29 21:16:56 24 4
gpt4 key购买 nike

<分区>

我是公认的非常基础的 Python 程序员,在遇到实现各种研究问题的问题时尝试学习。而且我遇到了其中一个问题 - 特别是如何处理我返回一堆数据的循环,而不是通常的“输出一个数字”的例子,你只需将循环的结果添加到之前的所有内容.

这是我要运行的未循环脚本的要点:https://gist.github.com/1390355

真正重要的一点是 model_solve 函数的结尾:

def model_solve(t):
# lots of variables set
params = np.zeroes((n_steps,n_params)
params[:,0] = beta
params[:,1] = gamma
timer = np.arange(n_steps).reshape(n_steps,1)
SIR = spi.odeint(eq_system, startPop, t_interval)
output = np.hstack((timer,SIR,params))
return output

返回 ODE 积分位 (spi.odeint) 的结果以及一个简单的“我们在什么时间步?”计时器和两个随机变量的值的两列本质上以 4950 行和 7 列 NumPy 数组的形式重复了很多很多次。

然而,目标是对具有随机值的两个参数(beta 和 gamma)运行蒙特卡罗分析。本质上,我想制作一个循环的函数,有点像这样:

def loop_function(runs):
for i in range(runs):
model_solve(100)
# output of those model_solves collected here
# return collected output

然后将收集到的输出写入文件。通常,我只是让每个 model_solve 函数将其结果写入一个文件,但是这段代码将在 PiCloud 或其他平台上运行,在这些平台上我不一定能够在结果返回到本地机器。相反,我试图返回一个巨大的 NumPy 数组,该数组包含 runs*7 列和 4950 行 - 然后可以将其写入本地计算机上的文件。

关于如何处理这个问题的任何线索?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com