1 1 2 2 矩阵的运算 矩阵乘法,m*n的矩阵和一个n*n的矩阵相乘。...magic函数 magic函数比较有意思,它会生成一个每行、每列、两个对角线上的元素的和都一样的一个方阵。...、列、正负对角线的和都相同呢?...需要想办法把矩阵的两个对角线给提出来,需要先构造一个单位阵,然后想法把它点乘到A上,就可以把A的对角线拿出来。...(9))) ans = 369 类似的,把eye矩阵纵向翻转之后再来计算A的斜对角线的和。
FreeMat, 一个具有GPL许可证的类似于matlab的开源环境。 GNU Octave 是一种高级语言,主要用于数值计算。...它提供了一个方便的命令行界面,用于数值求解线性和非线性问题,以及使用与MATLAB基本兼容的语言进行其他数值实验。Octave的4.0和更新版本包括一个GUI。...LAPACK 提供Fortran 90例程用于求解线性方程组、线性方程组的最小二乘解、特征值问题和奇异值问题以及相关矩阵分解(LU、Cholesky、QR、SVD、Schur和广义Schur)。...GNU数据语言,一个免费的编译器,被设计成IDL的替代。 IDL是一种基于FORTRAN语言的商业解释语言,具有一定的向量化功能。广泛应用于太阳物理、聚变、大气科学和医学界。...R是一种广泛使用的系统,它以数据处理和统计为重点,实现了S语言。许多附加包是可用的(自由软件,GNU GPL许可证)。 SAS,一个统计软件产品系统。它包括SAS/IML[4],一种矩阵编程语言。
Online是GNU Octave的Web UI,GNU Octave是MATLAB的开源替代品。...Octave Online · Cloud IDE compatible with MATLAB (octave-online.net) octave官网 GNU Octave是一种高级编程语言...Octave 和 MATLAB具有以下共同特点: 矩阵的基本数据类型 它内置支持复数 它具有内置数学函数和库 它支持用户自定义功能 MATLAB 和 Octave ...大多数的MATLAB程序运行在Octave,但一些 Octave 程序可能无法正常运行,因为 Octave 允许一些语法而MATLAB却不支持。 ...GNU Octave https://www.gnu.org/software/octave/index
本系列课程吴老师建议的完成作业的编程工具是Matlab和Octave,Matlab大家都听说过,Octave可能会稍嫌陌生。...下载Octave 进入Octave的官网https://www.gnu.org/software/octave/,然后找到Download进入下载页。 ?...*的版本,如果你想和视频里保持一致,可以在这个网址:https://mirrors.ustc.edu.cn/gnu/octave/找到相对应的历史版本下载地址的列表。...第一个GNU Octave(CLI)是命令行版本的,下面那个是GUI(即视窗界面)版本的。看一下它们的属性知道,它们指向了刚刚那个安装路径下对应的文件。 ?...你看,这个GUI版的和Matlab差不多的。 可以使用Octave做一些数学运算来尝尝鲜,比如算算加减法、幂指数,定义一个矩阵然后求一下它的逆矩阵。如下图: ?
本文主要讨论神魔是矩阵和向量,谈谈如何加减乘矩阵及向量,讨论逆矩阵和转置矩阵的概念!!如果十分熟悉这些概念,可以很快的浏览一遍,如果对这些概念有些许的不确定,可以细看一下,慢慢咀嚼!...): ##3.2 加法 和标量乘加法 矩阵的加法:行列数相等的可以加。...3.5 矩阵乘法的性质 矩阵乘法的性质: 矩阵的乘法不满足交换律:A×B≠B×A 矩阵的乘法满足结合律。...,从 左上角到右下角的对角线(称为主对角线)上的元素均为 1 以外全都为 0。...如: 对于单位矩阵,有 AI=IA=A3.6 逆、转置 矩阵的逆:如矩阵 A 是一个 m×m 矩阵(方阵),如果有逆矩阵,则: 我们一般在 OCTAVE 或者 MATLAB 中进行计算矩阵的逆矩阵。
接下来介绍一些基础的Octave操作,更详细的可以去Octave的官网看文档。 启动 在桌面上找到快捷方式“GNU Octave (CLI)”,以命令行的方式启动Octave。 ?...基础运算 做一些加、减、乘、除、幂指数的运算,你会发现和latex里面写数学公式差不多。也不怎么需要考虑数据类型转换啊、地板除啊之类恼人的计算机语法,看上去非常友善。 ?...判断两个数是否不等于,用的是"~=", 而不是其它语言常用的"!="。另外,注释符号是"%"。用过matlab的同学可能也发现了,它的语法几乎就是照搬Matlab,非常友好。...还有类似于Python语言中print函数的存在,disp()函数,disp的使用也是相当的灵活。 ? 上图最后一行的disp中sprintf函数的语法和c语言的语法是不是很像?...向量和矩阵 定义一个3*2的矩阵: ? 定义中的分号就是矩阵的换行。 定义向量和定义矩阵本质上是一样的,下面这样是定义一个行向量: ? 如果定义列向量呢? ?
它是一个 GNU 项目,与贝尔实验室的 John Chambers 及其同事开发的 S 语言及环境类似。R 可以视为 S 的一种不同实现。...额外的包 Simulink 添加了图多领域模拟和针对动态和嵌入系统的基于模型的设计。 优点: 最快的数学和计算平台,尤其是向量化运算/线性矩阵代数。 适合所有数学和交易领域的商业级软件。...Octave Octave 可以看作是商业语言 MATLAB 的 GNU 版本,它是一种脚本矩阵语言(scripting matrix language),其语法有大约 95% 可与 MATLAB 兼容...优点: 首先,目前没有可用的鲁棒性 Octave 编译器,且没有必要有,因为该软件可以免费安装。 Octave 和 Matlab 的语言元素相同,除了一些个例,如嵌套函数。...Octave 使用 GNU Plot 或 JHandles 作为图程序包,JHandles 与 Matlab 中的图程序包更接近一些。
它是一个 GNU 项目,与贝尔实验室的 John Chambers 及其同事开发的 S 语言及环境类似。R 可以视为 S 的一种不同实现。...优点 最快的数学和计算平台,尤其是向量化运算/线性矩阵代数; 适合所有数学和交易领域的商业级软件; 脚本简短,但高度集成了所有包; 拥有图和交互式图表的最佳可视化; 具备良好测试和支持; 易于管理多线程支持和垃圾收集...Octave Octave 可以看作是商业语言 MATLAB 的 GNU 版本,它是一种脚本矩阵语言(scripting matrix language),其语法有大约 95% 可与 MATLAB 兼容...优点 首先,目前没有可用的鲁棒性 Octave 编译器,且没有必要有,因为该软件可以免费安装。 Octave 和 Matlab 的语言元素相同,除了一些个例,如嵌套函数。...Octave 使用 GNU Plot 或 JHandles 作为图程序包,JHandles 与 Matlab 中的图程序包更接近一些。
(图片来源:GNU Octave) GNU Octave is a highlevel language, primarily intended for numerical computations..../software/octave/about.html 正如上图所见,今天给大家介绍一款高度兼容matlab程序的免费编程软件——GNU Octave,在该软件中能够执行很多基础的matlab命令,运行...下面以windows平台为例演示软件的安装过程: 第一步:前往如下网址下载安装包 https://www.gnu.org/software/octave/download.html ?...第二步:双击打开下载的安装包 名称有版本号决定:octave-5.1.0-w64-installer.exe 打开后软件会检测是否安装了java JRE环境,只有安装了JRE才能使用全功能的GNU Octave...遗憾的是GNU Octave目前暂不支持中文。今天介绍到这里,如有问题欢迎在留言区留言,别忘了点击分享和“在看”哦,谢谢阅读!!!
前言 上一篇我们介绍了 Octave 的一些基本情况,大家对 Octave 应该已经有了一个基本的了解,我相信看这篇文章的朋友已经在自己的电脑中安装好 Ocatve 了。...矩阵的操作是 Octave 的一大特色。这一节,我将讲述 Octave 对于矩阵的一些操作,希望大家在看文章的过程中可以跟着一起敲一下代码,加深一下印象。...eye()可以生成单位矩阵,熟悉线性代数的朋友可能会对单位矩阵比较熟悉,它很有用,但线性代数的知识不是本文的重点。形式上可以理解为正斜对角线都是 1 的矩阵。...magic(n) 生成一个 n 阶矩阵,这个矩阵的特点就是不论横线,竖线还是对角线,加起来的值都是一样的,数字还不能重复,必须是从 1 到 n 的平方,很有趣吧。...flipud(A) 将矩阵翻转,这个函数一般用在翻转范围矩阵 flipud(eye(n)) ,这样就可以获得一个反对角线单位矩阵了。
监督学习(Supervised Learning) 根据训练数据是否拥有标记信息,学习任务可大致被分为两类: 监督学习(Supervised Learning)监督学习的代表是回归和分类。...回归:预测连续值的模型: 已知房子大小和房价数据集,预测某一房子的价格 分类:预测离散值的模型: 已知肿瘤性质和大小数据集,预测肿瘤是否良性 无监督学习(Unsupervised Learning)...矩阵的标量乘法 矩阵和标量的乘法也很简单,就是矩阵的每个元素都与标量相乘。...numpy as np a = np.mat([[-1,2],[2,3]]) c = np.mat([[3],[4]]) ac = a * c 矩阵乘法的性质 矩阵的乘法不满足交换律: ?...在矩阵的乘法中,有一种矩阵起着特殊的作用,如同数的乘法中的 1,我们称这种矩阵为单位矩阵.它是个方阵,一般用 I 或者 E 表示,本讲义都用 I 代表单位矩阵,从左上角到右下角的对角线(称为主对角线)上的元素均为
也有人把 R 语言用作矩阵计算,其分析速度可媲美专用于矩阵计算的自由软件 GNU Octave 和商业软件 MATLAB,前段时间美国还禁止中国部分高校使用 MATLAB 软件,GNU Octave 现在不受美国政府限制...关于 R 语言持续走高给出了两种预测: 1)商业统计语言如 SAS,Stata 和 SPSS 的软件的时代已经过去, 大学和研究机构开始采用 Python 和 R 进行统计分析。...2)研发 COVID-19 病毒的疫苗需要大量统计和数据挖掘,R 和 Python 学起来比较简单,受到大家的欢迎。...,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、百度、维基百科等等。...数据反应目前主流编程语言的变化趋势,对我们学习和工作可作为一个参考,但各个语言都有它们各自适合的应用场景,所以也不必过于在意,毕竟语言的好坏在于如何去使用它。
我在使用 Octave 的过程中,最舒服的地方就是它对矩阵操作的支持非常全面,使用起来也很简单,一些看似很复杂的逻辑,用 Octave 可能一两行就可以轻松解决。我将带大家认识和入门 Octave。...Octave为GNU项目下的开源软件,Octave 语法与 Matlab 语法非常接近,可以很容易的将 Matlab 程序移植到Octave。...上面的说法不太通俗,简而言之,Octave 是一些科学计算软件,对于一些矩阵啊,一些高级的工程运算方面的工作,它比较擅长,而另一个功能类似的软件就是大名鼎鼎的 Matlab。...总结 这篇文章帮助大家认识一下 Octave ,并且介绍了安装步骤和一些基本的操作。Octave 强大的地方在它的矩阵运算和图形绘制上,我将在下篇文章详细的介绍。...机器学习需要大量的诸如矩阵这样的计算,以及一些工程计算算法,使用 Octave 可以快速的实现这些算法,相当于一个建模的过程,等到需要具体的资源配置的时候,再通过 Python、Java 亦或是 C++
也有人把 R 语言用作矩阵计算,其分析速度可媲美专用于矩阵计算的自由软件 GNU Octave 和商业软件 MATLAB,前段时间美国还禁止中国部分高校使用 MATLAB 软件,GNU Octave 现在不受美国政府限制...,Python、numpy、scipy 也可以代替 MATLAB 的部分功能,好像还有一款国产的 ,不过应该和 MATLAB 软件还有很大差距,当然原子弹也不是一两天就造出来的,加油吧。...关于 R 语言持续走高给出了两种预测: 1)商业统计语言如 SAS,Stata 和 SPSS 的软件的时代已经过去, 大学和研究机构开始采用 Python 和 R 进行统计分析。...2)研发 COVID-19 病毒的疫苗需要大量统计和数据挖掘,R 和 Python 学起来比较简单,受到大家的欢迎。...数据反应目前主流编程语言的变化趋势,对我们学习和工作可作为一个参考,但各个语言都有它们各自适合的应用场景,所以也不必过于在意,毕竟语言的好坏在于如何去使用它。
线性变换由它对空间的基向量的作用完全决定,在二维空间中,基向量就是 ? 和 ? ,这是因为其他任意向量都成表示为基向量的线性组合,坐标为(x,y)的向量就是x乘以 ? 加上y乘以 ?...矩阵乘积也服从结合律: ? 矩阵乘积不满足交换律: ? 的情况并非总是满足 矩阵乘积的转置有着简单的形式: ?...检验一个矩阵的行列式是否为0,就能了解这个矩阵所代表的变换是否将空间压缩到更小的维度上 在三维空间下,行列式可以简单看作这个平行六面体的体积,行列式为0则意味着整个空间被压缩为零体积的东西,也就是一个平面或者一条直线...奇异矩阵 行列式为零的矩阵 特征值和特征向量 ? 特征分解 如果说一个向量 ? 是方阵 ? 的特征向量,将一定可以表示成下面的形式: ? ? 为特征向量 ? 对应的特征值。...LU分解 给定矩阵A,将A表示成下三角矩阵L和上三角矩阵U的乘积,称为LU分解。 转置矩阵 对于矩阵A,将其行列互换得到的矩阵,称为A的转置矩阵,记为 ? 。
用go语言,已知一个n*n的01矩阵, 只能通过通过行交换、或者列交换的方式调整矩阵, 判断这个矩阵的对角线是否能全为1,如果能返回true,不能返回false。...我们升级一下: 已知一个n*n的01矩阵, 只能通过通过行交换、或者列交换的方式调整矩阵, 判断这个矩阵的对角线是否能全为1,如果不能打印-1。 如果能,打印需要交换的次数,并且打印怎么交换。...2.如果某一行或某一列的1的个数超过n/2(n为矩阵的大小),则无法通过交换操作使得对角线上的元素全为1,直接输出-1。...7.最后,检查矩阵的对角线是否全为1: • 逐行遍历矩阵,如果某一行的对角线元素不为1,则说明无法满足条件,输出-1。...8.如果能够满足条件,则输出交换次数k和交换操作: • 遍历swap数组,输出每次交换的行号和列号。 总的时间复杂度为O(n^2),其中n为矩阵的大小。
“Octave Tutorial——Moving data around” 01 — 笔记 机器学习最离不开的就是数据。我们使用Octave写机器学习代码的时候,如何将硬盘上的数据导入Octave中?...如何将这些数据放入矩阵?如何将计算的结果数据保存下来?这些问题都需要解决。 矩阵和向量 从上一篇笔记已经知道如何使用Octave定义一个矩阵。 ? 还可以用size命令查看矩阵的形状。 ?...使用save命令,后面跟上文件名和要保存的变量名即可。如下: ? 这时候在Octave当前的工作路径下就多了一个hello.dat文件, ?...如果save的时候把.dat改成*.mat可以进行一些压缩,当变量很大的时候有用。当然,还可以保存成txt同时指定编码格式。 操作数据 我们学会了load数据、save数据,那具体该怎样操作数据呢?...你看,Octave还是很强大的,通过一些简单的指令可以构建非常复杂的矩阵。 不仅如此,Octave还可以实现更复杂的操作,后面视频还会讲。
领取专属 10元无门槛券
手把手带您无忧上云