Python中numpy模块功能整理(上):矩阵的创建、初始化、元素类型、数据提取与形状管理

一、模块准备:

import numpy as np

二、创建数组(矩阵):

1、通过手动输入的方式创建:

#创建一维数组
x=np.array([1,2,3,4,5])
#创建二维数组
y=np.array([[1,2],[22,2],[11,8]])

    结果:

  

2、从文件中读取:

    以创建的test.txt为例:

    

   读取代码:

#以逗号为元素分割符号识别矩阵
test = np.loadtxt('E:/test.txt',delimiter=',')

    结果:

  

二、数组(矩阵)的初始化

1、创建元素数值为0的数组(矩阵):zeros函数

#创建3X3的0矩阵
a=np.zeros((3,3))

    结果:

  

2、创建数值为1的数组(矩阵):ones函数

#创建2X3的元素为1的矩阵
a=np.ones((2,3))

    结果:

  

3、创建元素数值为自定义值的数组(矩阵):full函数(可替代zeros与ones函数)

#创建3X3元素为0的矩阵
a=np.full((3,3),0)
#创建3X5元素为2的矩阵
a=np.full((3,5),2)

4、创建单位矩阵(对角线元素为1其余为0的矩阵):eye函数

#创建3X3的单位矩阵
a=np.eye(3)

    结果:

  

5、创建随机矩阵(各元素数值均为随机数的矩阵):

#创建3X4的随机矩阵
a=np.random.random((3,4))

    结果: 

  

6、创建从0开始的一维的连续数组:arange函数

#创建从0开始至3结束(不包括3)的一维数组
np.arange(3)

  结果:

三、元素类型:

1、若是元素皆为整数则为整型数组,若元素皆为小数则为浮点型数组,若既有小数又有整数则识别为浮点型数组,代码流程示例如下:

     

2、同样也可以在数组定义时对元素类型进行声明,如下:

     

3、元素类型转换:

a=np.array(a,dtype=int)

四、提取数组中的数值:

   # 数组准备:

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

  

1、推荐方式:

a[行值,列值]

2、不推荐方式:

a[行值][列值]

   示例结果:(两方式相同)

  

五、矩阵的数据提取进阶:

1、索引符号解释:

(1) :  从当前索引开始至结束,如a[1:]是获取索引1到最后的元素 。

(2)  获取倒数索引的元素,注意从1开始,如a[-2]是获取索引倒数第二个元素。

  简单的例子如下:

 

2、进阶:获取矩阵的一部分

a=np.array([[1,2,3,4],
           [5,6,7,8],
           [9,10,11,12]])
a[-2:,1:3]

  结果:

  

3、与arange函数结合获取矩阵的一部分:

#获取矩阵前2行的第1列
a[np.arange(2),1]

    结果:

  

4、获取矩阵元素的最大最小值:max和min函数

#a中所有元素的最大值
y1=a.max()
#a中所有元素的最小值
y2=a.min()

    结果:

  

六、矩阵的形状管理

1、获取数组(矩阵)的长度(形状)信息:通过shape属性

  # 数组准备:

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

    运行结果:

  

2、矩阵重组:通过reshape方法:

  # 符号解释: -1  代表一个占位符,表示自适应。

  # 矩阵准备:

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

  举例:

#将数组重组为2行的矩阵
a=a.reshape((2,-1))

  结果1:

  

#再将上步的运行结果(即2X3的矩阵)重组为2列矩阵
a=a.reshape((-1,2))

  结果2:

  

 

  • 15
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值