时间:2021-05-22
import numpy as np
numpy.array 常用变量及参数
创建数组的方法
np.array([[1, 2, 3, 4],[4, 5, 6, 7], [7, 8, 9, 10]], dtype=np.float)np.arange(0,1,0.1) #0到1之间步长为0.1的数组, 数组中不包含1np.linspace(0, 1, 5) # 开始:0, 结束1, 元素个数 5。 array([ 0. , 0.25, 0.5 , 0.75, 1. ])np.logspace(0, 1, 5) # 开始:0, 结束1, 元素个数 5. array([ 10**0. , 10**0.25, 10**0.5 , 10**0.75, 10**1. ]) # 结果是 array([ 1. , 1.77827941, 3.16227766, 5.62341325, 10. ]) s = 'abcdefg'np.fromstring(s, dtype=np.int8) def func2(i, j): return (i+1) * (j+1)np.fromfunction(func2, (9,9)) np.ones((2, 2))np.zero((2, 2))np.eye(2) #创建二维数组:np.arange(0, 60, 10).reshape(-1, 1) + np.arange(0, 6)数据读取
通过下标范围获取数据: 与python list对象操作一致。 不同点是这方法获取的数组与原数组是内存共享的。
通过整数序列获取新数组:例 x[[3,2,3,2] ], 产生新数组, 内存不共享
使用布尔数组获取数据:例:x[np.array([True, False, True, False, False])] 或 x[x>0.5], 返回True对应的数字。
代码示例:
数组扩展
np.vstack((a, b)): 增加行数, 把b数据追加到a的下面, 上下连接。
np.hstack((a, b)): 增加列数,把a, b左右连接。
ufunc运算
ufunc是universal function的缩写,它是一种能对数组的每个元素进行操作的函数。NumPy内置的许多ufunc函数都是在C语言级别实现的,因此它们的计算速度非常快。
np.sin(x, x)np.add(a, b) ~ a+bnp.subtract(a, b) ~ a-bnp.multiply(a, b) ~ a*bdivide ~ a/bfloor divide ~ a//bnegative ~ -apower ~ a**bremainder ~ a % b注意:复杂运算时,中间步聚会有临时变量,这会拖慢运算速度。
如:
等价于
所以可手动优化
x = a * bx += c二维数组转一维
reshape函数可重新定义大小。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
numpy.array可使用shape。list不能使用shape。可以使用np.array(listA)进行转换。(array转list:arrayBB.to
importnumpy生成numpy矩阵的几个相关函数:numpy.array()numpy.zeros()numpy.ones()numpy.eye()串联生
如下所示:importnumpya=numpy.array(([3,2,1],[2,5,7],[4,7,8]))itemindex=numpy.argwhere
如下所示:importnumpynew_list=[iforiinrange(9)]numpy.array(new_list).reshape(3,3)借助nu
主要步骤1.生成普通python数组(bytearray(),os.urandom())2.转换成numpy数组(numpy.array())3.通过resha