从numpy数组中获取元素并创建新的numpy数组的最快方法

时间:2014-05-11 02:08:26

标签: python python-2.7 python-3.x numpy scipy

我的numpy数组data维为150x4 我想通过从numpy中选择随机元素来创建名为mean3x4的新data数组。

我目前的实施是:

    cols = (data.shape[1])
    K=3
    mean = np.zeros((K,cols))
    for row in range(K):
        index = np.random.randint(data.shape[0])
        for col in range(cols):
            mean[row][col] = data[index][col]

有更快的方法吗?

1 个答案:

答案 0 :(得分:2)

您可以在numpy.randint(第三个参数)中指定随机整数的数量。此外,您应该熟悉numpy.array的索引表示法。在这里,您可以通过:说明符访问一行中的所有元素。

mean = data[np.random.randint(0,len(data),3),:]