Matlab

数据类型

  • 数字
  • 字符和字符串
  • 矩阵
  • 元胞数组
  • 结构体

清空环境变量及命令

cls 	% 清除Command Windows中的所有命令
clear all % 清除Workspace*中的所有命令

变量命名

  • 区分大小写
  • 不超63位
  • 字母开头,由下划线、字母和数字组成
  • 见名知意

注释用 %

字符串

abs('a')    % ASCII码
char(97)
num2str % number to string
length(str) % 字符串长度

矩阵

A = [1 2 3; 4 5 6; 7 8 9]
B = A' %转置矩阵
C = A(:) %将矩阵A中的每列合并成一个长的列向量
D = inv(A) %求逆
E = zeros(10, 5, 3)
E = zeros(size(A)) %生成零矩阵
E(:, :, 1) = rand(10, 5)

rand生成均匀分布的伪随机数,分布在0~1之间

rand(m, n)
rand(m, n, 'double') %指定精度,还可以为'single'
rand(RandStream, m, n)

randn生成标准正态分布的伪随机数(均值为0,方差为1)

语法同上

randi生成均匀分布的伪随机整数

randi(iMax)  %在区间(0,iMax)
randi(iMax, m, n)
randi([iMin, iMax], m, n) %在开区间(iMin, iMax)生成m*n的随机矩阵

元胞数组

元胞数组是一种包含名为元胞的索引数据容器的数据类型,其中的每个元胞都可以包含任意类型的数据。元胞数组通常包含文本列表、文本和数字的组合或者不同大小的数值数组。通过将索引括在圆括号 () 中可以引用元胞集。使用花括号 {} 进行索引来访问元胞的内容。

A = cell(1, 6)
A[2] = eye(3) %matlab是从1开始的
A{5} = magic(5) %magic 魔方,在matlab中生成n阶幻方(横竖斜三个方向的数字和总是相同的)
B = A{5}

结构体

books = struct('name', {{'Machine Learning', 'Data Mining'}}, 'price', [30, 40])
books.name % 属性
books.name(1) % cell
book.name{1} % string

矩阵操作

矩阵的定义和操作

A = [1 2 3 4 5 6]
B = 1:2:9
C = repmat(B, 3, 1) %把B重复3列1行
D = ones(2, 4) % 2行4列元素都为1

矩阵的四则运算

A = [1 2 3 4; 5 6 7 8]
B = [1 1 2 2; 2 2 1 1]
C = B + A % 加
D = A - B % 减
E = A * B' % 乘
F = A .* B % 点乘
G = A / B % G * B = A , G * B * pinv(B) = A * pinv(B) , G = A * pinv(B) ; pinv()求伪逆(广义逆)
H= A ./ B % 点除 % 左除和右除
A / B = A * inv(B)
A \\ B = inv(A) * B

矩阵的下标

A = magic(5)
B = A(2, 3)
C = A(2, :) % 第二行全部元素构成的矩阵
D = A(:, 4)
[m, n] = find(A > 20) % 找大于20的序号值/矩阵

逻辑与流程控制

if ... else ... end

for ... end

while ... end

switch ... case ... end

循环语句

例、求12 + 22 + 32 + 42 + 52 的和

sum = 0;
for n = 1:5
sum = sum + n^2;
end
sum = 0;
n = 1;
while n <= 10
sum = sum + n;
n = n + 1;
end

例、求1到5的阶乘的和

sum = 0;
for i = 1:5
p = 1;
for j = 1:i
p = p * j;
end
sum = sum + p;
end

分支语句

a = 10;
b = 20;
if a<b
'成立'
end
a = 10;
b = 20;
if a>b
'成立'
else
'不成立'
end

Matlab学习1的更多相关文章

  1. Matlab学习笔记 figure函数

    Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...

  2. matlab学习笔记 bsxfun函数

    matlab学习笔记 bsxfun函数 最近总是遇到 bsxfun这个函数,前几次因为无关紧要只是大概看了一下函数体去对比结果,今天再一次遇见了这个函数,想想还是有必要掌握的,遂查了些资料总结如下. ...

  3. matlab学习笔记(一)单元数组

    matlab学习笔记(一)单元数组 1.floor(x) :取最小的整数 floor(3.18)=3,floor(3.98)=3 ceil(x)  :取最大的整数 ceil(3.18)=4,ceil( ...

  4. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...

  5. 【数学建模】MATLAB学习笔记——函数式文件

    MATLAB学习笔记——函数式文件 引入函数式文件 说明: 函数式文件主要用于解决计算中的参数传递和函数调用的问题. 函数式的标志是它的第一行为function语句. 函数式文件可以有返回值,也可以没 ...

  6. MATLAB学习总结(1)

    MATLAB学习总结(1)   path help path cd(current directory) savepath pathtool

  7. matlab学习路线

    知乎:matlab学习路线 MATLAB数学教学视频

  8. Matlab学习笔记(一)—— 三维图形绘制

    这学期公选课选的是MATLAB,所以准备把这学期所学习的整理到博客上,作为记录,哇咔咔~ 一.三维函数图: x=cos(t), y=sin(t), z=t %≤t ≤*pi t=:*pi; %t的取值 ...

  9. Matlab学习笔记(1)

    在帮助文档中查看学习视频的时候.出现以下对话框,不能查看 解决办法:   在系统环境变量中找到Path.添加“%SystemRoot%\system32;%SystemRoot%;%SystemRoo ...

  10. matlab学习日志之并行运算

    原文地址:matlab并行计算,大家共同学习吧,涉及到大规模数据量处理的时候还是效果很好的 今天搞了一下matlab的并行计算,效果好的出乎我的意料. 本来CPU就是双核,不过以前一直注重算法,没注意 ...

随机推荐

  1. opengauss配置远程白名单

    DB_VERSION:openGauss 3.0.3 1.允许192.168网段用户使用jack用户登陆 --创建只读账号 CREATE USER jack WITH MONADMIN passwor ...

  2. Vue上传XLS文件

    data() { return { tableData:[] } }, //原生JS+XLSX包实现 xls文件上传 methods: { //上传excel表格文件 uploadHandler(da ...

  3. 解决flex布局中justify-content设置成space-between后因数据问题导致最后一行布局错乱

    在常用的flex布局中,当页面展示商品时,因为数据的不确定,导致justify-content设置成space-between,最后一行布局错乱 1 <!DOCTYPE html> 2 & ...

  4. 如何通过Java应用程序在PPT中创建SmartArt图形

    SmartArt其实就是一个文字的可视化工具,用户可在PowerPoint,Word,Excel中使用该特性创建各种图形图表.SmartArt 图形是信息和观点的视觉表示形式.可以通过从多种不同布局中 ...

  5. 【ACM组合数学 | 错排公式】写信

    题目链接:https://ac.nowcoder.com/acm/contest/54484/B 题意很简单,但是数据范围偏大. 错排公式 首先来推导一下错排公式: \[D(n) = n!\sum_{ ...

  6. 如何生成文本: 通过 Transformers 用不同的解码方法生成文本

    简介 近年来,随着以 OpenAI GPT2 模型 为代表的基于数百万网页数据训练的大型 Transformer 语言模型的兴起,开放域语言生成领域吸引了越来越多的关注.开放域中的条件语言生成效果令人 ...

  7. Gradio入门到进阶全网最详细教程[二]:快速搭建AI算法可视化部署演示(侧重参数详解和案例实践)

    Gradio入门到进阶全网最详细教程[二]:快速搭建AI算法可视化部署演示(侧重参数详解和案例实践) 相关文章:Gradio入门到进阶全网最详细教程[一]:快速搭建AI算法可视化部署演示(侧重项目搭建 ...

  8. 我的第一个项目(十二) :分数和生命值的更新(后端增删查改的"改")

    好家伙,写后端,这多是一件美逝. 关于这个项目的代码前面的博客有写  我的第一个独立项目 - 随笔分类 - 养肥胖虎 - 博客园 (cnblogs.com) 现在,我们登陆进去了,我开始和敌人战斗,诶 ...

  9. 2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null。给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完成这个链表的复制,并返回复制的新链表的头节点。 【要求】时间复杂度O(N),额外空间复杂度O(1) 。

    2021-04-09:rand指针是单链表节点结构中新增的指针,rand可能指向链表中的任意一个节点,也可能指向null.给定一个由Node节点类型组成的无环单链表的头节点 head,请实现一个函数完 ...

  10. 2021-10-18:乘积最大子数组。给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。力扣152。

    2021-10-18:乘积最大子数组.给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积.力扣152. 福大大 答案2021-1 ...