python知识之numpy基础

1、numpy的安装

python环境下直接使用pip或者conda安装

pip install numpy
conda install numpy
2、numpy的介绍
  • numpy是一个开源的python科学计算库,用于快速处理任意维度的数组。
  • numpy支持常见的数组和矩阵操作,对于同样的数值计算任务,使用numpy比使用python要简洁的多。
  • numpy的大部分代码都是C语言写的,其底层算法在设计时就有着优异的性能,这使得numpy比纯python代码要高效得多。
3、创建一维数组
In [1]: import numpy as np

In [2]: np.array([1,2,3])        # 直接传入列表创建
Out[2]: array([1, 2, 3])

In [3]: np.array(range(5))			# 传入range生成序列创建
Out[3]: array([0, 1, 2, 3, 4])

In [4]: np.arange(0,6,2)			 # 使用numpy自带的np.arange()创建
Out[4]: array([0, 2, 4])
4、创建二维数组
In [5]: list1 = [[2,3],[4,5],[7,8]]
In [6]: np.array(list1)				 # 传入二层嵌套列表创建
Out[6]:
array([[2, 3],
       [4, 5],
       [7, 8]])

In [7]: np.ones((2,3))					# 创建全是1的指定形状的数组
Out[7]:
array([[1., 1., 1.],
       [1., 1., 1.]])

In [8]: np.zeros((2,3))					 # 创建全是0的指定形状的数组
Out[8]:
array([[0., 0., 0.],
       [0., 0., 0.]])

In [9]: np.random.randint(0,10,(4,4))		# 使用自带的random.randint 生成随机数创建
Out[9]:
array([[9, 0, 1, 0],
       [6, 0, 8, 3],
       [1, 3, 5, 7],
       [5, 0, 7, 7]])
5、numpy的常用属性和方法
In [10]: list1 = [[2,3],[4,5],[7,8]]
In [11]: t1 = np.array(list1)
# 属性
In [12]: t1.dtype			# dtype,获取元素的数据类型
Out[12]: dtype('int32')

In [13]: t1.ndim			# ndim,获取数组的维度
Out[13]: 2

In [14]: t1.shape			# shape,获取数组的形状(行, 列)
Out[14]: (3, 2)

In [15]: t1.itemsize		# itemsize,获取每个元素的字节单位长度
Out[15]: 4

In [16]: t1.size			 # size,获取数组的元素个数
Out[16]: 6

# 方法
In [17]: t1.T				 # 数组的转置,得到转置后的数组
Out[17]:
array([[2, 4, 7],
       [3, 5, 8]])

In [18]: t1.astype(np.int64)		# astype(),修改元素的数据类型
Out[18]:
array([[2, 3],
       [4, 5],
       [7, 8]], dtype=int64)

In [19]: t1.tolist()				 # tolist(),将数组转成列表
Out[19]: [[2, 3], [4, 5], [7, 8]]

 
In [20]: t1 = t1.reshape(2,3)		 # reshape(),改变数组的形状 
In [21]: t1
Out[21]:
array([[2, 3, 4],
       [5, 7, 8]])

In [22]: t1.reshape(-1,1)    # reshape(-1,1)用于将包含n个元素的数组转成n行1列的二维数组
Out[22]:
array([[2],
       [3],
       [4],
       [5],
       [7],
       [8]])

In [23]: np.arange(24).reshape(2,3,4)		 # 转成三维数组
Out[23]:
array([[[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]],

       [[12, 13, 14, 15],
        [16, 17, 18, 19],
        [20, 21, 22, 23]]])

# 运算方法
In [24]: np.max(t1)				 	# 获取所有数据的最大值
Out[24]: 8

In [25]: np.max(t1, axis=0)			 # 获取0轴的最大值
Out[25]: array([5, 7, 8])

In [26]:  np.sum(t1)				# 获取所有数据的求和
Out[26]: 29

In [30]: np.cumsum(t1)
Out[30]: array([ 2,  5,  9, 14, 21, 29], dtype=int32)    # 获取数据的累计和

属性 shape 和 方法 reshape()的区别:

In [31]: list1 = [[2,3],[4,5],[7,8]]
In [32]: t1 = np.array(list1)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值