Numpy库与多维数组

Python中Numpy库的核心是高维数组,Numpy中的ndarray对象支持多维数组。数组类型的对象本身具有大小固定,数组内元素数据类型相同等特性。Numpy也提供了大量数值运算函数,能够直接有效的进行向量,矩阵运算。

创建数组

核心函数:

numpy.array([n1, n2, n3]):创建一维数组;

numpy.array([[n1, n2],[n3, n4]]):创建二维或多维

numpy.reshape():复制一个不同维度的数组,只是维度不同,数据还是共享的

numpy.shape=2,3:直接修改维度

numpy.arange(start, end, step):[start, end)区间,以step为步长的数组,其中start,end区间为前闭后开。

numpy.linspace(start, end, number, dtype): [start, end]区间,产生number个等距离的数据,dtype指定数据类型,其中的区间为闭区间。

numpy.zeros((m,n ), dtype=np.int16):初始化一个m*n的2维数组空间,但是不指定值(初始化成默认值)

numpy.ones((m, n)):与np.zeros类似;

numpy.empty((m, n)):与np.zeros类似;

数组元素的索引和切片

数据切片:

array[start:end:step]:在[start, end)区间,按step步长来抽取数据。区间为前闭后开。如果不指定step,step默认为1,如果不指定end,则退化为只读取start位置的数据。切片生成的数组会和原来的数组共享内存空间,即,其中一个对其中一个数组元素的修改,会导致另一个数组的元素也发生修改。多维数组的情况,以二维数组为例:array[start1:end1:step1, start2:end2:step2]

array[[n1, n2, n3 ...]]:读取数组参数指定位置的数据;这种方法不共享内存空间。多维数组的情况,以二维数组为例:array[[n1,n2,n3 ...], [m1, m2, m3 ...]],会取到array[n1, m1], array[n2, m2], array[n3, m3]的值;

array[(n1, n2, n3), (m1, m3, m3)]: 与array[[n1,n2,n3], [m1, m2, m3])相同;

数组运算

universal function:+, -, *, /,  **(乘方),cos, <, >, 求模(mod), 求余(remainder), 乘方(power), 开方(square)等,下面以加法为例:

np.add(array, n):将array中的每个元素都加上n;

np.add(array1, array2) <=> array1+array2:将两个array中的每个元素都相加;

np.add(array1, array2, array1):将相加的结果重新赋值给array1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值