当前位置: 首页 > 知识库问答 >
问题:

numpy 多维不定长数组哪种方式效率最好?

汪天宇
2023-07-11
# data 是动态追加的,不知道长度
data = [ 
    [(0.0, 0.0, 0.0), (0.0, 0.0), "xxx"] 
    # ...
    # 最多几万条数据
]

name = ""
for i, v in enumerate(data):
    if v[1] == (2.1, 3.2):
        name = v[2]
        break

如上面的代码所示,我想得到name,但应该选取哪种数据结构效率最高呢?

就是如何改写成numpy的形式。
谢谢

共有1个答案

竺绍辉
2023-07-11
data_dict = {v[1]: v[2] for v in data}
name = data_dict.get((2.1, 3.2), "")
 类似资料:
  • 问题内容: numpy中最简单的方法来反转数组的最内部值是这样的: 这样我得到以下结果: 非常感谢你! 问题答案: 怎么样: 而最后一个维度的反方向是: 要么 尽管我更喜欢后者,因为前两个维度是隐式的,因此很难看到正在发生的事情。

  • 问题内容: 要求: 我需要从数据中任意增加一个数组。 我可以猜测大小(大约100-200),但不能保证每次都适合该数组 一旦增长到最终大小,我就需要对其进行数值计算,因此我更希望最终使用二维numpy数组。 速度至关重要。例如,对于300个文件之一,update()方法被称为4500万次(大约需要150秒),而finalize()方法被称为500k次(总共需要106s)……总共需要250s或者。

  • 问题内容: 请原谅我这是多余的还是超基本的。我要从R进入Python / Numpy,并且很难在脑海里翻转事物。 我有一个维数组,我想使用索引值的另一个n维数组进行排序。我知道我可以将其包装成一个循环,但是似乎应该有一种非常简洁的Numpyonic方式将其击败并提交。这是设置n = 2的问题的示例代码: 所以现在我有一个2 x 5的随机数数组和2 x 5的索引。我已经阅读了约10次帮助,但显然我的

  • 问题内容: 在 /中 ,是否有一种 有效的 方法来获取数组中唯一值的频率计数? 遵循以下原则: (对于您来说,R用户在那里,我基本上是在寻找该功能) 问题答案: 看一下: http://docs.scipy.org/doc/numpy/reference/generated/numpy.bincount.html 接着: 要么: 或者您想将计数和唯一值结合起来。

  • 在/中,是否有一种有效的方法来获取数组中唯一值的频率计数? 大致如下: (对于R用户来说,我基本上是在寻找函数)

  • 我有这个数组 如何从这样的环境中得到好处 不用Array.map