我正在研究蒙特卡罗算法。本质上,由于涉及时间,每次迭代都会生成一个包含50项的列表,涵盖50年的模拟。我附加了这些元素,这样就有了一个包含10000个元素的列表,每个元素都是50个数字的列表。你知道吗
现在,当然,我需要把每年的数据放入一个包含10000个项目的列表中,这样我就可以做年度直方图分析。你知道吗
举个简单的例子,如果我有5次运行3年的数据,我可能会有这样一个列表:
[[1,2,3, 4,5], [1.1, 2.2, 3.3, 4.4, 5.5], [2.5, 2.6, 2.7, 2.8, 2.9]]
我需要把它放进一个列表,看起来是这样的:
[[1, 1.1, 2.1], [2, 2.2, 2.6], [3, 3.3, 2.7], [4, 4.4, 2.8], [5, 5.5, 2.9]]
显然,我可以用一个双循环来强制实现这个,但是有500000个数据点,我正在寻找更有效和更具python风格的东西。你知道吗
是否有人对内部(或包)有足够的了解,可以快速有效地实现这一点?你知道吗
您可以
zip
列表:您可以使用
zip
或numpy.transpose
(可能更快):列表是灵活的项目;因此,它们很慢。因为您有一个固定宽度的环境,所以请使用增强的结构。对于初学者来说,numpy2d数组应该会有所帮助。您不必强制它进入另一个方向:只需使用提供的向量表达式,并强制NumPy执行所需的向量化(假设您的处理器支持这些)。你知道吗
相关问题 更多 >
编程相关推荐