【发布时间】:2017-04-25 16:34:09
【问题描述】:
我想用numpy来实现下面的数据结构。现在我用python字典来做这个工作,但是向量操作很难做,我要多次添加向量,所以我想用numpy来简化工作。主机的长度在程序执行期间会有所不同。我是否可以使用 numpy 结构化数组来完成这项工作,请注意列表的长度是可变的?我不熟悉,只是想知道有没有可能,以免浪费时间。
{
"0" :{
"coordinates": [100, 100],
"neighbours": [1, 40],
"hosts":[],
"v-capacity":20,
"v-immature":0,
"v-state":[20, 0, 0, 0]
},
"1" :{
"coordinates": [200, 100],
"neighbours": [0, 2, 41],
"hosts":[],
"v-capacity":20,
"v-immature":0,
"v-state":[20, 0, 0, 0]
},
【问题讨论】:
-
您能否举例说明您需要对这些数据执行哪些操作?例如。跨多个
coordinates或v-states 的聚合? -
@wilkesybear 是的,基本上,这个数据结构被用于疾病模拟器。宿主在程序执行过程中会追加新元素,v-state是一个向量,经常会做向量的加减,例如a["1"]["v-state"] += a["2"][ “v-状态”]。问题是我必须通过使用函数调用或在 python 中耗时的循环来执行这些向量操作。所以我想用 numpy 代替。
标签: python numpy dictionary