专栏首页python3Numpy中的矩阵运算

Numpy中的矩阵运算

安装与使用

大型矩阵运算主要用matlab或者sage等专业的数学工具,但我这里要讲讲python中numpy,用来做一些日常简单的矩阵运算!这是 numpy官方文档,英文不太熟悉的,还有 numpy中文文档

numpy 同时支持 python3 和 python2,在 python3 下直接pip install安装即可,python2 的话建议用 .whl 安装,你可以在 这里查询 和你 python2 版本对应的 whl 文件。如果你使用 python2.7,我这里有打包好的 安装文件

常用函数

import numpy as np

np.array([[1,2,3],[4,5,6]]) # 定义一个二维数组
np.mat([[1,2,3],[4,5,6]]) # 定义一个两行三列矩阵
np.mat(list) # 列表或者数组转 matrix(矩阵)
np.tolist(matrix) # 与上面相反
np.shape(array) # 求矩阵或者数组array的维度
array.reshape(m,n) # 数组或矩阵重塑为m行n列
np.eye(m,n) # 创建m行n列单位矩阵
np.zeros([m,n],dtype) # 创建初始化为0的矩阵
# .transpose()转置矩阵 .inv()逆矩阵
# .T转置矩阵,.I逆矩阵

举个栗子

# python3
import numpy as np

# 先创建一个长度为12的列表,,再重塑为4行3列的矩阵
list1 = [0,1,2,3,4,5,6,7,8,9,0,1]
list1_to_mat = np.mat(list1) # 列表先转成矩阵 
mat1 = list1_to_mat.reshape(4,3) # 重塑
print(mat1)
# 求上面矩阵的转置矩阵和逆矩阵
mat_transpose = mat1.T
mat_inv = mat1.I
# 再定义一个3行4列的数组转成矩阵,和上面矩阵相乘
array1 = np.array([[1,2,3,4],[4,5,6,7],[3,2,1,0]])
mat2 = np.mat(array1)
print(mat2)
print(mat2*mat1) # 或者你可以用 np.dot()以及 np.multiply()

要注意:numpy 的数组和 python 的列表是有区别的,比如:列表 list 只有一维。然后 numpy 的数组和矩阵也有区别!比如:矩阵有逆矩阵,数组是没有逆的!!

END

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Numpy库的学习(三)

    这里我们可以看到,我先打印了一下,np.arange(15)这个结果,产生一个0-14的15位数组

    py3study
  • Python中的mmap模块

    mmap是一种虚拟内存映射文件的方法,即可以将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。

    py3study
  • Python的文件操作

    py3study
  • 利用 Numpy 进行矩阵相关运算

    NumPy 是Python数据分析必不可少的第三方库,NumPy 的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型。如今,N...

    fireWang
  • 利用 Numpy 进行矩阵相关运算

    NumPy 是Python数据分析必不可少的第三方库,NumPy 的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型。如今,N...

    fireWang
  • SVD奇异值分解的数学涵义及其应用实例

    SVD(Singular Value Decomposition, 奇异值分解)是线性代数中既优雅又强大的工具, 它揭示了矩阵最本质的变换. 使用SVD对矩阵进...

    SIGAI学习与实践平台
  • Python numpy矩阵处理运算工具用法汇总

    numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmi...

    砸漏
  • 如何把设计问题转化为数学问题,方法论

    图像本质上是一个二维的矩阵,于是,我们可以把问题转化为寻找二维矩阵中的最大子矩阵这么一个数学问题:

    mixlab
  • 推荐系统之矩阵分解(MF)及其python实现

            目前推荐系统中用的最多的就是矩阵分解方法,在Netflix Prize推荐系统大赛中取得突出效果。以用户-项目评分矩阵为例,矩阵分解就是预测出评...

    Flaneur
  • C++实现简单矩阵工具包

    使用 python 实现深度学习时, python 中的 NumPy 库高效易用,令人惊艳。但因为刚入门 python ,过于精简的语法反而让我感到不适应,所以...

    英雄爱吃土豆片

扫码关注云+社区

领取腾讯云代金券