python机器学习之十一 numpy库之矩阵(matrix)

AttributeError: module ‘networkx‘ has no attribute ‘from_numpy_matrix‘解决方法 AttributeError: module 'networkx' has no attribute 'from_numpy_matrix' 阅读详情

本文主要介绍numpy库中的矩阵:

  1. 矩阵的创建
  2. 常见的矩阵运算
  3. 矩阵、列表、数组之间的转换

矩阵的创建

   语法格式:

numpy.matrix(data,dtype)

data:数据

dtype:数据类型,同数组

如:

m2 = np.matrix([[1,2,3],[4,5,6]])
m2
'''
matrix([[1, 2, 3],
        [4, 5, 6]])
'''

 数组转矩阵 mat

语法格式:numpy.mat(narray)

narray:数组

如:

from numpy import *
data1 = mat(zeros((3,3)))
data2 = mat(ones((2,4)))
data3 = mat(random.rand(2,2))
data4 = mat(random.randint(2,8,size=(2,5)))
data5 = mat(eye(2,2,dtype=int))
'''
data1
matrix([[0., 0., 0.],
        [0., 0., 0.],
        [0., 0., 0.]])
data2
matrix([[1., 1., 1., 1.],
        [1., 1., 1., 1.]])
data3
matrix([[0.67143174, 0.75772619],
        [0.15963105, 0.82548702]])
data4
matrix([[5, 4, 7, 2, 5],
        [7, 7, 4, 7, 6]])
data5
matrix([[1, 0],
        [0, 1]])
'''

常见的矩阵运算

* 、sum、max、min、hstack、vstack、.I

*:矩阵乘积,遵循矩阵乘积规则,支持矩阵与标量相乘

a1 = mat([1,2])
a2 = mat([[1],[2]])
a3 = a1 * a2
print(a3)
'''
matrix([[5]])
'''
print(a1*2)
'''
matrix([[2, 4]])
'''

sum

语法格式:

矩阵名称.sum(axis=某维)

    其余维不变,对指定维求和,指定维消失。

    不指定维数,表示对矩阵所有元素求和

a1 = np.mat([[1,2],[3,4],[5,6]])
a1.sum(axis=0)
'''
matrix([[ 9, 12]])
'''

a1.sum(axis=1)
'''
matrix([[ 3],
        [ 7],
        [11]])
'''
a1.sum()
#21

max:求矩阵元素最大值

min:求矩阵元素最小值

如:

 a = mat(random.randint(2,8,size=(2,5)))
a
'''
matrix([[6, 7, 6, 2, 7],
        [7, 5, 6, 6, 6]])
'''
a.max()
#7
a.min()
#2

hstack:

语法格式:

numpy.hstack(tup)

(a1,a2,...):矩阵

返回结果为numpy的数组,水平(按照列顺序)的把数组给堆叠起来。

vstack:

语法格式:

numpy.vstack(tup)

(a1,a2,...):矩阵

返回结果为numpy的数组,垂直(按照行顺序)的把数组给堆叠起来。

如:

a = mat(ones((2,2)))
b = mat(eye((2)))
c = hstack((a,b))
'''
matrix([[ 1.,  1.,  1.,  0.],
        [ 1.,  1.,  0.,  1.]])
'''
d = vstack((a,b))
'''
matrix([[ 1.,  1.],
        [ 1.,  1.],
        [ 1.,  0.],
        [ 0.,  1.]])
'''

.I:求矩阵转置

语法格式:矩阵名称.I

如:

a1 = mat(eye(2,2)*0.5)
a2 = a1.I
print(a1)
'''
matrix([[0.5, 0. ],
        [0. , 0.5]])
'''
print(a2)
'''
matrix([[2., 0.],
        [0., 2.]])
'''

print(a1*a2)
'''
matrix([[1., 0.],
        [0., 1.]])
'''

矩阵、列表、数组之间的转换

a = [[1,2],[3,4],[5,6]]   #列表

b = array(a)  #列表转数组

c = mat(b)  #数组转矩阵

c.getA()  # 矩阵转换为数组 

c.tolist()  # 矩阵转换为列表 

b.tolist() # 数组转换为列表

 

python教程(一):超详细的numpy矩阵操作和运算(附实例代码) 在NumPy中,张量是指具有多维数据结构的数组,通常扩展自二维矩阵。张量可以是 1D(向量)、2D(矩阵)、3D(例如彩色图像的表示)甚至是更高维度的数组。NumPy提供了多种方法来操作和计算张量,广泛应用于机器学习、深度学习、科学计算等领域。在NumPy中,张量本质上就是多维数组,使用np.array()函数可以创建不同维度的张量。 阅读详情

相关推荐

python用邻接矩阵作图,输出存储在numpy.ndarray中的图像

简单地说,使用networkx作图,然后从matplotilb的canvas里面提取ndarray输出。 从邻接矩阵生成networkx中graph类,使用from_numpy_matrix函数,详见:https://networkx.github.io/documentation/networkx-1.7/reference/generated/networkx.convert.from_nu...

silent56_th的博客 6210

【Python】numpy——矩阵matrix

import numpy as np 一、创建矩阵 import numpy as np x = np.matrix([[1,2,3], [4,5,6]]) y = np.matrix([1,2,3,4,5,6]) 二、矩阵转置 三、查看矩阵特征 1.平均值 matrix.mean() import numpy as np x = np.matrix([[1,2,3],[4,5,6]]) x.mean() # 所有元素平均值 x.mean(axis=0.

fftx_00的博客 6005

Python Numpy库中矩阵用法快速指南

Python Numpy库中矩阵用法指南 矩阵是一个由m*n个数排成的m行n列的表称为m行n列的矩阵,简称为m*n矩阵。下面的矩阵是一个3*2(3乘2)矩阵,因为它有三行四列。 在数学的概念中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。这一概念由19世纪英国数学家凯利首先提出。矩阵是高等代数学中的常见工具,也常见于统计分析等应用数学学科...

weixin_43751243的博客 1587

Numpy的Matrix介绍(1)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、 Numpy的Matrix二、实战案例1.Matrix 前言 一、 Numpy的Matrix 一、 Numpy的Matrix 1.NumPy函数库中存在两种不同的数据类型(矩阵matrix和数组array),都可以用于处理行 列表示的数字元素。虽然它们看起来很相似,但是在这两个数据类型上执行相同的数学运算可能得到不同的结果,其中NumPy函数库中的matrix与MATLAB中matrices等价。 numpy模块中的矩阵

weixin_38094100的博客 1769

NumPy 矩阵库(Matrix)

高性能:NumPy 使用了 C 语言进行优化,因此在数值计算方面比 Python 内置的数据结构有更高的性能。多维数组:NumPy 允许创建和操作多维数组,这对于科学计算和数据科学来说非常重要。丰富的函数库:NumPy 提供了大量的数学函数,用于执行各种数学运算。扩展性:NumPy 可以与其他科学计算库(如 SciPy、Pandas 等)无缝集成。NumPy 是 Python 中一个功能强大的科学计算库,它提供了大量的函数和方法,用于处理大型多维数组以及矩阵。

froginwe11的博客 552

Python中关于array和matrix的矩阵运算小技巧

前言: 在做机器学习中,常常需要用到矩阵的相乘,有时候会被array和matrix搞得晕头转向,这里总结了我在学习过程中遇到的一些技巧和踩过的坑 1:array的矩阵乘法 废话少说,直接上代码: import numpy as np#先导入numpy库 f = np.array([[1,2],[3,4]]) d = f a = d*f#对应元素的相乘 a1 = np.multiply(d, f)#和上面一样,也是对应元素按照位置相乘 print(a) [[ 1 4] [ 9 16]] print(a

weixin_42906524的博客 1176

numpy.mat和numpy.matrix的区别

正文np.mat和np.matrix的区别np.mat官方文档解释代码示例np.matrix np.mat和np.matrix的区别 np.mat 官方文档 解释 如果输入本身就是一个矩阵,则np.mat不会对该矩阵make a copy.仅仅是创建了一个新的引用。相当于np.matrix(data, copy = False) 代码示例 #导入模块 import numpy as np #创...

wpf973的博客 5492

【Python】机器学习:基础前置 | 矩阵的表示与定义 | Numpy 库 | Identity 身份矩阵 | 逆矩阵和转置

我们先介绍线性方程体系的基本概念和矩阵表示方法,矩阵的定义、加法、乘法、逆矩阵、转置和标量乘法等。然后讲解如何解决线性方程组问题,包括解集形式、行阶梯形矩阵、计算逆置和解决线性方程组的算法等。本节将补充线性代数的基础知识,为后续的机器学习打好基础。

有道无术, 术尚可求。有术无道, 止于术。 2836

[Deep-ML]Reshape Matrix(重塑矩阵)

Deep-ML题解:Reshape Matrix(重塑矩阵)。

m0_73672030的博客 1179

python使用scipy中的sparse.csr_matrix函数将numpy数组转化为稀疏矩阵(Create A Sparse Matrix)

python使用scipy中的sparse.csr_matrix函数将numpy数组转化为稀疏矩阵(Create A Sparse Matrix)

data+scenario+science+insight 2147

深入Android构建系统:一次修改ro.vendor.build.fingerprint失败的排查与解决记录

本文深入探讨了Android构建系统中修改ro.vendor.build.fingerprint的完整解决方案。通过分析vendor分区的特殊地位和构建指纹的生成路径,提供了三种实战修改方法,并揭示了指纹修改可能遇到的陷阱与对策,帮助开发者彻底解决这一常见问题。

weixin_30621711的博客 141

【NumPy】深入解析numpy.asmatrix()函数

我坚信知识的力量,希望通过我的分享,能够帮助更多的人掌握这些技术,并在实际项目中发挥作用。通过学习和实践,我们可以更好地利用这个函数来处理和分析二维数据,为数据科学和机器学习领域的应用提供有力支持。:矩阵是线性代数中的基础概念,涉及矩阵的运算(如加法、减法、乘法、转置、求逆等)在许多数学和工程问题中都是必不可少的。的功能、用法、与NumPy其他相关函数的区别,以及实际应用场景,帮助读者更好地理解和使用这个函数。,我们可以轻松地将其他形式的数据(如列表、元组、数组等)转换为矩阵,以便进行后续的矩阵运算。

2402_83361138的博客 2034

蓝桥杯FPGA赛道积分赛

代码如下: 按键驱动 代码如下 按键驱动 代码如下: 顶层文件 按键驱动 数码管驱动 声明:本代码借鉴网络资料,如有侵权和错误请联系作者删除。我是从寒假开始备赛的,由于我基础不行,备赛过程中也是混混呃呃的,备赛效率不高,总体来说备赛不认真,有点拖拉,但是最后我也坚持备赛到了今天,在备赛过程中,即复习了旧的东西,也学到了新的东西,总结起来还是有点收获的,后天北京、天津、河北地区就要进行省赛了,我会全力以赴,不管结果怎么样,尽力就好,最后祝大家都能

weixin_69804913的博客 1985

python中math函数库矩阵_NumPy库实现矩阵计算

随着机器学习技术越来越向着整个社会进行推广,因此学好线性代数和Python当中的numpy库就相当重要了。我们应该知道numpy库的使用是sklearn库和opencv库的基础。主要用于矩阵的计算。当然,我们做做数模或者人工神经网络建模也可以使用MATLAB。不过现在Python才是现在的主流,因为Python可以用于服务器后台的实现,不仅仅看可以用于科研,还可以做出一些比较实用的一些东西。如果还...

weixin_39784972的博客 471

Prometheus+Grafana部署及企业微信邮件/群消息告警通知配置

本文详细介绍了在Ubuntu 22.04系统上部署普罗米修斯监控系统的完整流程。首先说明了系统配置要求(2核CPU、4G内存、100G硬盘),然后分步骤指导下载、解压和安装普罗米修斯服务。文章包含配置prometheus.yml文件、启动服务、设置系统服务等关键操作,并提供了访问9090端口验证服务的方法。接着介绍了通过node_exporter监控Linux主机的配置过程,包括安装、启动服务和修改普罗米修斯配置文件添加监控项。最后还涉及了mysqld_exporter的部署流程,用于监控MySQL数据库服

m0_58761900的博客 1638

磁悬浮轴承控制策略设计及性能对比

摘要:针对高速磁悬浮转子控制问题,本文提出多方案对比分析。建立含陀螺效应的5自由度动力学模型,分析陀螺耦合、质量不平衡等关键挑战。对比四种控制策略:基础PID解耦、交叉反馈+自适应陷波、H∞鲁棒+前馈补偿、滑模控制+观测器,从实时性、鲁棒性等维度评估优劣。推荐采用交叉反馈+H∞+自适应陷波的混合方案,通过内环电流环与外环位置环协同,实现陀螺效应动态解耦和扰动抑制。实施步骤包括系统辨识、控制器设计、硬件部署等,需配合实验验证与参数整定。该方案综合性能最优,适用于高转速、强扰动场景。

技术工作者 1774

chatgpt赋能python:Python创建5×5矩阵(Matrix)教程

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

laingziwei的博客 2984

Android功耗系列专题分析之四:待机概率性功耗高的失效分析

本文分析了Android设备待机功耗异常高的问题。通过日志发现系统休眠失败,原因是PowerManagerService.Display唤醒锁未被释放。进一步排查发现,指纹解锁功能在灭屏时未正确释放屏幕锁定,导致DisplayReady状态异常。解决方案是将指纹功能的背光控制与DisplayReady状态控制分离,使用两个变量独立管理。经验表明,快速定位问题比解决问题更重要,修改原生流程时需谨慎评估风险。

451

python numpy.matrix.reshape函数详解

python numpy.matrix.reshape函数详解 The criterion to satisfy for providing the new shape is that ‘The new shape should be compatible with the original shape’ numpy allows us to give one of new shape param...

Chenglin(Ben) Yu's Miracle 2219

基于STM32设计的心率脉搏测量仪(项目资料ID:9)

本设计基于STM32F103单片机开发了一款便携式心率脉搏测量仪,通过光电传感器采集脉搏信号,经放大(约1200倍)、滤波(低通及四阶低通滤波)、比较及偏置电压调理后,由STM32进行ADC采样与数据处理。硬件采用Altium Designer设计,包含信号调理电路(限定心率范围43.4-800次/分钟)及电源管理模块;软件基于STM32CubeMX开发,利用队列存储和时间间隔平均算法优化精度,实现多终端显示(OLED实时心率/动画、MATLAB波形分析、蓝牙传输至手机)。系统支持自动启停(检测脉搏启

以培养嵌入式工程师为己任 1万+

基于simulink的电动汽车电机驱动系统IGBT开路故障检测

本文介绍了基于Simulink的电动汽车电机驱动系统IGBT开路故障检测方法。通过搭建永磁同步电机(PMSM)驱动系统模型,实现IGBT开路故障注入,并设计基于电流平均值与PWM逻辑比较的故障检测算法。系统可实时采集三相电流信号,通过MATLAB Function模块实现故障诊断,当检测到PWM信号与电流不匹配时输出故障报警。仿真结果显示,系统能在2.05秒内准确识别A相上管开路故障,并通过Scope和XYGraph直观展示故障特征。该方法为电动汽车电力电子系统故障诊断与容错控制提供了实用解决方案,后续可扩

xiaoheshang_123的博客 149

Python-Numpy中的矩阵和数组运算

机器学习coding常要处理矩阵和数组的运算,常出现纬度不匹配的报错,此blog应该能给有同样问题的人一些帮助。

qq_45493596的博客 3639

Python爬虫-汽车之家各车系月销量榜数据

本文是该专栏的第41篇,后面会持续分享python爬虫干货知识。本文以某汽车平台为例,基于python采集该平台“各车系月销量”的榜单数据。具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。接下来,跟着笔者直接往下看正文详细内容。(附带完整代码)

Python进阶专栏《爬虫实战进阶》,《Pyppeteer从入门到精通》原创作者 1619

机器学习(二) 矩阵(Matrix)计算详解

本文系统介绍了矩阵的基础知识及其在机器学习和数据科学中的应用。主要内容包括:矩阵的基本定义、常见运算(加减乘除、转置、逆矩阵、行列式等)及其性质;Python中NumPy库的矩阵操作实现;矩阵分解方法(LU、QR、SVD等)及其应用场景;矩阵在机器学习中的高级应用(如线性回归、PCA、神经网络等);以及矩阵运算的性能优化和工程实践建议。文章通过理论讲解和代码示例相结合的方式,帮助读者深入理解矩阵这一核心数据结构,并掌握其在数据科学领域的实际应用技巧。

onlymscn的博客 1993

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

矩阵乘法的纯Python实现 | 离开Python库!!

点击关注我哦一篇文章带你了解矩阵乘法的纯Python实现在《这篇文章》中,我们有简单提到“矩阵乘法”的相关知识,如果你不记得了,可以复习一下这张图片。想起来了没?本篇文章将深入探讨在没有...

Warmer_Sweeter 824

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Numpy 中的矩阵向量乘法

注意:*,它在 np.array 中重载为元素乘法,在 np.matrix 中重载为矩阵乘法!

颹蕭蕭 2万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: python机器学习之十 numpy库之数组(多维数组的一元操作、组合数组、数组分割、数组复制)
下一篇: python机器学习之十二 文件读写
蜗牛专注学习
博客等级 码龄15年 127粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值