Python的numpy库下的几个小函数的用法(小结)

yipeiwu_com6年前Python基础

numpy库是Python进行数据分析和矩阵运算的一个非常重要的库,可以说numpy让Python有了matlab的味道

本文主要介绍几个numpy库下的小函数。

1、mat函数

mat函数可以将目标数据的类型转换为矩阵(matrix)

import numpy as np

>>a=[[1,2,3,],

   [3,2,1]]

>>type(a)

>>list

 
>>myMat=np.mat(a)

>>myMat

>>matrix([[1,2,3],[3,2,1]])

 

>>type(myMat)

>>numpy.matrixlib.defmatrix.martix 

因此可以使用mat函数将一个列表a转换成相应的矩阵类型。

2、zeros

zeros函数是生成指定维数的全0数组

>>myMat=np.zeros(3)  ###生成一个一维的全0数组
>>print(myMat)
>>array([0.,0.,0.])


>>myMat1=np.zeros((3,2)) ####生成一个3*2的全0数组
>>print(myMat)
>>array([[0.,0.],
    [0.,0.]
    [0.,0.]])  

3、ones

ones函数是用于生成一个全1的数组

>>onesMat=np.ones(3)  ###1*3的全1数组
>>print(onesMat)
>>array([1.,1.,1.])



>>onesMat1=np.ones((2,3))  ###2*3的全1数组
>>print(onesMat1)
>>array([[1.,1.,1.],[1.,1.,1.]])

4.eye

eye函数用户生成指定行数的单位矩阵

>>eyeMat=np.eye(4) 
>>print(eyeMat)
>>array([[1.,0.,0.,0.],
    [0.,1.,0.,0.],
    [0.,0.,1.,0.,],
    [0.,0.,0.,1.]])

5、.T

.T作用于矩阵,用作球矩阵的转置 

>>myMat=np.mat([[1,2,3],[4,5,6]])
>>print(myMat)
>>matrix([[1.,2.,3.]
     [4.,5.,6.]])


>>print(myMat.T)
>>matrix([[1,4],
     [2,5],
     [3,6]])   

6、tolist

tolist函数用于把一个矩阵转化成为list列表 

>>x=np.mat([[1,2,3],[4,5,6]])

>>print(x)

>>matrix([[1,2,3],[4,,5,6]])

>>type(x)

>>matrix

 

 

>>x.tolist()

>>[[1,2,3],[4,5,6]] 

7.getA()

getA()函数是numpy.matrix下的一个函数,用作把矩阵转换成数组,等价于np.asarray(self).

>>> x = np.matrix(np.arange(12).reshape((3,4))); x

matrix([[ 0, 1, 2, 3],

    [ 4, 5, 6, 7],

    [ 8, 9, 10, 11]])

>>> x.getA()

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

    [ 4, 5, 6, 7],

    [ 8, 9, 10, 11]]) 

8. .I

.I用作求矩阵的逆矩阵。逆矩阵在计算中是经常需要用到的。例如一个矩阵A,求A的逆矩阵B,即存在矩阵B是的AB=I(I为单位)

In [3]: a=mat([[1,2,3],[4,5,6]])

 

In [4]: a

Out[4]:

matrix([[1, 2, 3],

    [4, 5, 6]])

 

 

In [5]: a.I

Out[5]:

matrix([[-0.94444444, 0.44444444],

    [-0.11111111, 0.11111111],

    [ 0.72222222, -0.22222222]])

In [6]: s=a.I 

In [8]: a*s

Out[8]:

matrix([[ 1.00000000e+00,  3.33066907e-16],

    [ 0.00000000e+00,  1.00000000e+00]]) 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

PyQt5 实现字体大小自适应分辨率的方法

最近遇到一个现象,将做好的软件放在更高分辨率的电脑上运行,会导致字体显示不完全,出现被控件遮挡的情况。具体原因可以上网查询,在这里将记录下解决方法。 这里记录两种方法,如果使用的Qt版本...

Python实现识别图片内容的方法分析

本文实例讲述了Python实现识别图片内容的方法。分享给大家供大家参考,具体如下: python识别图片内容。 这里我的环境为windows64位,python2.7.14 需要用到PI...

详解Python中最难理解的点-装饰器

详解Python中最难理解的点-装饰器

本文将带领大家由浅入深的去窥探一下,这个装饰器到底是何方神圣,看完本篇,装饰器就再也不是难点了. 一、什么是装饰器 网上有人是这么评价装饰器的,我觉得写的很有趣,比喻的很形象 每个...

简单的Python的curses库使用教程

简单的Python的curses库使用教程

curses 库 ( ncurses ) 提供了控制字符屏幕的独立于终端的方法。curses 是大多数类似于 UNIX 的系统(包括 Linux)的标准部分,而且它已经移植到 Windo...

深入分析python数据挖掘 Json结构分析

深入分析python数据挖掘 Json结构分析

json是一种轻量级的数据交换格式,也可以说是一种配置文件的格式 这种格式的文件是我们在数据处理经常会遇到的 python提供内置的模块json,只需要在使用前导入即可  ...