【发布时间】:2018-12-29 15:05:32
【问题描述】:
在一个 jupyter 笔记本中,我对资源进行了 OO 建模,但在控制循环中需要聚合多个对象的数据,与 ufunc 和类似操作相比效率低下。
为了打包功能,我选择了 OO,但为了高效简洁的代码,我可能必须将数据提取到存储类中(也许)并将所有 ri[0] 行推入二维数组,在这种情况下(2, ķ)。
该类不需要日志,只需要最后的条目。
K = 100
class Resource:
def __init__(self):
self.log = np.random( (5,K) )
# log gets filled during simulation
r0 = Resource()
r1 = Resource()
# while control loop:
#aggregate control data
for k in K:
total_row_0 = r0.log[0][k] + r1.log[0][k]
#do sth with the totals and loop again
这将大大提高性能,但如果单独存储,我很难将数据链接到类。你会如何处理这个问题? pandas DataFrames、np View 或 Shallow Copy?
[[...] #r0
[...] ]#r1 same data into one array, efficient but map back to class difficult
【问题讨论】: