通过非常大的numpy数组排序

2024-10-02 12:28:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python(3.6)的新手,目前正在使用它进行科学数据分析。我已经使用了搜索功能,但还没有找到任何有用的,因为我不确定的术语用来描述这种类型的排序。 我有一个numpy数组,值从0到40000000,长度为4000000(列表a)。我还有一个相同长度的第二个数组,它的值在0到1000之间(列表\b),对应于第一个数组。我希望创建一个新的numpy数组(list_c),其中包含list_a中的值,这些值在list_b中的对应值在定义的时间门之外

import numpy as np
def function(list_a,list_b,timegate=(0,200)):
    list_c = np.array([])
    for x in range(len(list_a)):
        if list_a[x] in range (timegate[0],timegate[1]):
            list_c=np.append(list_c, list_b[x])
    return list_c

我编写了这个函数,它适用于长度小得多的数组,但是数组越长,速度就越慢。我正在寻找一种方法,以加快这一进程如果可能的话,任何帮助将不胜感激

谢谢你

约旦


Tags: in功能numpy类型列表定义排序np

热门问题