资讯专栏INFORMATION COLUMN

Numpy中的矩阵运算

zzbo / 1353人阅读

安装与使用

大型矩阵运算主要用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

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/44893.html

相关文章

  • python综合学习三之Numpy和Pandas

    摘要:本章学习两个科学运算当中最为重要的两个模块,一个是一个是。这种工具可用来存储和处理大型矩阵,比自身的嵌套列表结构要高效的多该结构也可以用来表示矩阵。专为进行严格的数字处理而产生。可以通过函数对相应值进行打印检验。 本章学习两个科学运算当中最为重要的两个模块,一个是 numpy,一个是 pandas。任何关于数据分析的模块都少不了它们两个。 一、numpy & pandas特点 NumP...

    tinylcy 评论0 收藏0
  • 机器学习数学基础之线代篇——线性代数python手册(建议收藏)

    摘要:提到线性代数,又不得不吐槽国内教材了,学起来真的是实力劝退。线性代数概念较多,计划在另一篇总结基本概念,这里仅总结线性代数里一些重要概念的程序。 提到线性代数,又不...

    andot 评论0 收藏0
  • Python 数据科学常用包 (一) Numpy

    摘要:是什么今天开始会陆续为大家带来数据科学常用包的基础用法数据分析的工作涉及到大量的数值运算,一个高效方便的科学计算工具是必不可少的。 NumPy是什么? 今天开始会陆续为大家带来数据科学常用包的基础用法 数据分析的工作涉及到大量的数值运算,一个高效方便的科学计算工具是必不可少的。Python语言一开始并不是设计为科学计算使用的语言,随着越来越多的人发现Python的易用性,逐渐出现了关于...

    Dean 评论0 收藏0
  • 机器学习稀疏矩阵简介(附Python代码)

    摘要:对于机器学习而言,稀疏矩阵应用非常广,比如在数据特征表示自然语言处理等领域。稀疏存在的问题稀疏矩阵会导致空间和时间复杂度方面的问题。通过调用函数,可以使用表示将存储在数组中的稠密矩阵转换为稀疏矩阵。 对于一个矩阵而言,若数值为零的元素远远多于非零元素的个数,且非零元素分布没有规律时,这样的矩阵被称作稀疏矩阵;与之相反,若非零元素数目占据绝大多数时,这样的矩阵被称作稠密矩阵。 稀疏矩阵在...

    hqman 评论0 收藏0

发表评论

0条评论

zzbo

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<