首页 > 编程知识 正文

python定义一个数组,python 二维数组初始化

时间:2023-05-03 05:59:54 阅读:23715 作者:67

排列的连接方法1

思路:首先将数组转换为列表,然后利用列表中的拼接函数append ()、extend () )等进行拼接处理,最后将列表转换为数组。

示例1 :

import numpy as np

a=NP.array ([ 1,2,5 ]

b=NP.array ([ 10,12,15 ]

a_list=list(a ) )

b_list=list(b ) )

a_list.extend(b_list ) )。

a_list

[1、2、5、10、12、15]

a=NP.Array(a_list ) )。

a

array ([ 1,2,5,10,12,15 ]

由于此方法仅适用于简单一维阵列拼接,且转换耗时,因此一般不推荐用于大量数据拼接。

排列的连接方法2

想法: numpy提供numpy.append(ARR,values,axis=None )函数。 参数化时,数组和数字中的任意两个数组,或者三个以上的数组不能直接用append连接。

示例2 :

a=NP.arange(5) )。

a

array ([ 0,1,2,3,4 ]

NP.append(a,10 ) )。

array ([ 0,1,2,3,4,10 ]

a

array ([ 0,1,2,3,4 ]

b=NP.array ([ 11,22,33 ]

B

array ([ 11,22,33 ]

NP.append(a,b ) )。

array ([ 0,1,2,3,4,11,22,33 ]

a

array ([ 1,2,3 ],

[ 4,5,6 ] )

b=NP.array ([ 7,8,9 ],[ 10,11,12 ] ) )

B

array ([ 7,8,9 ],

[ 10,11,12 ] )

NP.append(a,b ) )。

array ([ 1,2,3,4,5,6,7,8,9,10,11,12 ]

numpy数组没有动态调整大小的功能(numpy.append ) )函数每次都重新分配整个数组,并将原始数组复制到新数组中。

排列的连接方法3

想法: numpy提供numpy.concatenate((a1,a2,axis=0) )函数。 一次可以连接多个数组。 在此,a1、a2、是数组型的参数

示例3 :

a=NP.array ([ 1,2,3 ] ) )。

b=NP.array ([ 11,22,33 ]

c=NP.array ([ 44,55,66 ]

NP.concatenate((a,b,c ),axis=0) #默认情况下,axis=0可以不被写入

对于Array([1、2、3、11、22、33、44、55和66] )一维数组拼接,axis值不影响最终结果

a=NP.array ([ 1,2,3 ],[ 4,5,6 ] ) )

b=NP.array ([ 11,21,31 ],[ 7,8,9 ] ) )

NP.concatenate((a,b ),axis=0) ) ) )。

array ([ 1,2,3 ],

[ 4,5,6 ],

[ 11,21,31 ],

[ 7,8,9 ] )

NP.concatenate((a,b ),axis=1) axis=1表示对应的行的排列连接

array ([ 1,2,3,11,21,31 ],

[ 4,5,6,7,8,9 ] )

比较numpy.append (和numpy.concatenate )两个函数的执行时间

示例4 :

from time import clock as now

a=NP.arange(9999 ) )。

b=NP.arange(9999 ) )。

时间1=now ()

c=NP.append(a,b ) ) )。

时间2=now ()

打印时间2 -时间1

28.2316728446

a=NP.arange(9999 ) )。

b=NP.arange(9999 ) )。

时间1=now ()

c=NP.concatenate((a,b ),axis=0) ) ) ) ) ) )。

时间2=now ()

打印时间2 -时间1

20.3934997107

可见concatenate ()更高效,更适合大数据拼接

PS :更多的例子

import numpy as np

a=NP.array ([ 1,2 ],[ 3,4 ] ) )

a.shape

out [3] : (2,2 ) )。

b=NP.array ([ 5,6 ] ) ) ) )。

b.shape

out [5] : (1,2 ) )。

NP.concatenate((a,b ) ) ) )。

Out[6]:

array ([ 1,2 ],

[ 3,4 ],

[ 5,6 ] )

c=NP.concatenate((a,b ) )

c.shape

out [8] : (3,2 ) )。

d=NP.concatenate((a,b ),axis=0) ) ) ) ) ) )。

d.shape

out [ 10 ] : (3,2 ) )。

e=NP.concatenate((a,b ),axis=1) ) ) )。

跟踪后退(mostrecentcalllast ) :

文件',line 1,in

e=NP.concatenate((a,b ),axis=1) ) ) )。

value error 3360 alltheinputarraydimensionsexceptfortheconcatenationaxismustmatchexactly

e=NP.concatenate((a,b.T ),axis=1) ) )。

e .形状

out [ 13 ] : (2,3 ) )。

import numpy as np

a=NP.array ([ 1,2 ],[ 3,4 ] ) )

a.shape

out [3] : (2,2 ) )。

b=NP.array ([ 5,6 ] ) ) ) )。

b.shape

out [5] : (1,2 ) )。

NP.concatenate((a,b ) ) ) )。

Out[6]:

array ([ 1,2 ],

[ 3,4 ],

[ 5,6 ] )

c=NP.concatenate((a,b ) )

c.shape

out [8] : (3,2 ) )。

d=NP.concatenate((a,b ),axis=0) ) ) ) ) ) )。

d.shape

out [ 10 ] : (3,2 ) )。

e=NP.concatenate((a,b ),axis=1) ) ) )。

跟踪后退(mostrecentcalllast ) :

文件',line 1,in

e=NP.concatenate((a,b ),axis=1) ) ) )。

value error 3360 alltheinputarraydimensionsexceptfortheconcatenationaxismustmatchexactly

e=NP.concatenate((a,b.T ),axis=1) ) )。

e .形状

out [ 13 ] : (2,3 ) )。

希望以上是正文的全部内容,对大家的学习有帮助。 另外,请支持我们。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。