R 用户在这里,我正在尝试我的第一个 Python 项目以利用 Numba。我读过 Numba 与 Numpy 配合得很好,但与 Pandas 配合得不好,所以我试图避免使用 Pandas。我当前的问题实际上与 Numba 无关,但我想提一下它作为我避免使用 Pandas 的原因。
我有两个 Numpy 结构化数组,一个有很多重复。我正在尝试使用“numpy.lib.recfunctions.join_by”函数加入它们,但文档明确指出重复会导致问题。任何人都可以为我的所有重复项推荐任何解决方法吗?
这是一个类似于我的情况的示例:
import numpy as np
import numpy.lib.recfunctions as rfn
a = np.zeros(4, dtype={'names':('name', 'age'),
'formats':('U10','f8')})
a['name'] = ['Alex', 'Billy', 'Charlie', 'Dave']
a['age'] = [25, 25, 75, 75]
b = np.zeros(2, dtype={'names':('age', 'senior'),
'formats':('f8', 'i4')})
b['age'] = [25, 75]
b['senior'] = [0, 1]
c = rfn.join_by('age', a, b, jointype='leftouter', usemask=False)
print(c)
[(25., 'Alex', 0) (75., 'Billy', 1) (75., 'Charlie', 999999)
(75., 'Dave', 999999)]
这 (1) 将比利的“年龄”从 25 岁更改为 75 岁,并且 (2) 为查理和戴夫提供了 999999 的“高级”值。
有人对此功能的重复限制有解决方法吗?提前致谢。