【发布时间】:2011-09-16 17:55:13
【问题描述】:
我一直在绞尽脑汁寻找与older question 类似的解决方案。我一直在尝试找到一个复制索引结果的 Python 代码模式。例如:
A = [3;4;4;3;6]
B = [2;5;2;6;3;2;2;5]
[tf ix] = ismember(A,B)
>> A(tf)
ans =
3
3
6
>> B(ix(tf))
ans =
3
3
6
这允许我做的是,如果数组 C 的排序方式与 B 相同,我现在可以适当地将 C 的值插入到新数组 D 中,该数组的排序方式与 A 相同。我执行数据映射很多!我希望它适用于各种数据类型,尤其是字符串和日期时间。似乎 numpy 的 in1d 让我走到了一半。我也对其他 Pythonic 想法持开放态度!
D(tf) = C(ix(tf))
谢谢!
【问题讨论】: