【发布时间】:2018-04-04 09:33:25
【问题描述】:
我有一个 xy 坐标的 numpy 查找表,其中列 0=xa、1=ya、2=xb、3=yb。我正在尝试使用 xa 和 ya (cols 0 & 1) 作为能够查找 xb 和 yb (cols 2 & 3) 的元素对,它们是我想要使用的实际 xy 坐标。
lookup=
[[0, 0, 0, 0]
[2, 0, 1.98, -0.01]
[4, 0, 3.99, -0.01]
[6, 0, 6.03, -0.01]
[8, 0, 8.02, -0.03]
[10, 0, 9.98, -0.01]
[12, 0, 11.99, 0]
[14, 0, 13.99, 0]
[0, 1, -0.03, 0.88]
[2, 1, 1.95, 0.86]
[4, 1, 3.97, 0.85]
[6, 1, 5.97, 0.87]
[8, 1, 7.96, 0.86]
[10, 1, 9.95, 0.92]
[12, 1, 11.95, 0.92]
[14, 1, 13.97, 0.87]]
我有一个表格,其中包含 x 和 y 位置的数据,格式为 xa ya,我希望使用查找表将其更改为 xb yb:
gridloc=
[[6, 0]
[8, 0]
[8, 0]
[10, 0]
[8, 1]
[10, 1]
[12, 1]
[14, 1]
所以我希望结果是这样的:
newloc=
[[6.03, -0.01]
[8.02, -0.03]
[8.02, -0.03]
[9.98, -0.01]
[7.96, 0.86]
[9.95, 0.92]
[11.95, 0.92]
[13.97, 0.87]]
我尝试使用它来尝试创建字典,但出现错误:
mapping = dict(zip(lookup[:,0:2], range(len(lookup))))
Traceback (most recent call last):
File "<ipython-input-12-528fb6616ce0>", line 1, in <module>
mapping = dict(zip(lookup[:,0:2], range(len(lookup))))
TypeError: unhashable type: 'numpy.ndarray'
请问大家有什么建议吗?我的表应该首先放在 numpy 中吗? dict是解决问题的方法吗?
【问题讨论】:
标签: python python-3.x numpy lookup lookup-tables