数组中Numpy数组的快速操作方法

2024-03-29 00:03:30 发布

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

我想找到一种方法来快速操作Numpy中的数组,比如这个数组,它的形状是(10,):

[array([0, 1, 3]) ,array([0, 1, 7]), array([2]), array([0, 3]), array([4]),
 array([5]), array([6]) ,array([1, 7]), array([8]), array([9])]

例如,我想计算数组元素的总数,对于上面的数组是16,但是不做For循环,因为实际上我的“嵌套数组”会很大。你知道吗

谢谢!你知道吗


Tags: 方法numpy元素for数组array形状总数
1条回答
网友
1楼 · 发布于 2024-03-29 00:03:30

在本例中,查找数组长度的一种方法是对嵌套的numpy数组进行ravel运算,然后按如下方式查找长度:

a = [array([0, 1, 3]) ,array([0, 1, 7]), array([2]), array([0, 3]), array([4]),
 array([5]), array([6]) ,array([1, 7]), array([8]), array([9])]

len(np.concatenate(a).ravel())
#Here we expand the numpy arrays and then flatten it to find the length.

输出:

16

据我所知,ravel比for-loop有更好的timeit性能。你知道吗

相关问题 更多 >