matlab教程_台大lecture1基本操作和矩阵输入

matlab教程视频

matlab as calculator

commend line 直接用命令行

计算部分

  1. ans是结果
    运算法则和平时一样((),^乘除加减)
  2. online help

eg:help sin & 直接搜索

  1. 嵌套式公式
    sin(cos(pi))==cos(pi) sin(ans)
    其中,ans是第一个的结果
  2. 变量
    可以用who查看变量,whos详细信息
    一些保留字:>>iskeyword,不要用作变量名(优先级高,会造成混乱)
    inf(\(\infty\)),Nan,pi,eps
    clear cos:清除工作区中的变量  clear:清除所有
    改变变量的有效位数 >>format long  >>format longE >>format rat(用分数表示) ....

5.运算指令:在指令后加分号:不显示运算结果  "↑":调出之前的指令 clc:清除命令窗 who/whos/clear

array部分

  1. 用中括号输入:>>a=[1 2 3 4] (1*4) >>b=[1;2;3;4] (4*1) ( ‘;’表示换行)
    输入矩阵:>> A=[1 21 6;5 17 9;31 2 7]

    \[\begin{matrix} 1&21&6\\\\5&17&9\\\\31&2&7\\ \end{matrix}\]

    查找矩阵的某一数值:>>A([1,3],[1,3])

    \[\begin{matrix} 1&6\\\\31&7\\\\ \end{matrix}\]

    .>>A(8) 9
    .>>A([1 3;1 3])

    \[\begin{matrix} 1&31\\\\1&31 \end{matrix}\]

    去除矩阵的第三行:>>A(3,:)=[]
    去除矩阵的第三列:>>A(:,3)=[]
  2. j:i:k [j,j+i,j+2i,...j+m*i(<k的最大值)]
  3. 矩阵结合f=[a b]; f=[a;b]
    相乘 >>a.*b对应数相乘 >>a*b矩阵相乘 ./ 和 \同理; .同理
    '转置
    一些特殊矩阵:
    linspace() 

    linspace(0,13,6)

ans =

列 1 至 6

               0   2.600000000000000   5.200000000000000   7.800000000000000  10.400000000000000  13.000000000000000

eye(n)


ans =

   1     0     0
   0     1     0
   0     0     1
zeros(2,4);ones(2,4);  

diag([1 2])  

ans =

   1     0
   0     2   

rand([2,4])
4. 常用的矩阵函数
max()
max(max())
sort()
size()
find()

  • max(A):数组的最大元素,如上面题的max(A)=[7 5 9]
    1.如果 A 是向量,则 max(A) 返回 A 的最大值。
    2.如果 A 为矩阵,则 max(A) 是包含每一列的最大值的行向量。
    3.如果 A 是多维数组,则 max(A) 沿大小不等于 1 的第一个数组维度计算,并将这些元素视为向量。此维度的大小将变为 1,而所有其他维度的大小保持不变。如果 A 是第一个维度长度为零的空数组,则 max(A) 返回与 A 大小相同的空数组。
  • max(max(A)):整个矩阵中最大值,如max(max(A))=9
    sum(A):数组元素总和,如sum(A)=[8 7 18]
    1、如果 A 是向量,则 sum(A) 返回元素之和。
    2、如果 A 是矩阵,则 sum(A) 将返回包含每列总和的行向量。
    3、如果 A 是多维数组,则 sum(A) 沿大小不等于 1 的第一个数组维度计算,并将这些元素视为向量。此维度会变为 1,而所有其他维度的大小保持不变。
  • sort(A):对数组元素排序,每列的值都会从上到下依次从小到大排,即按升序对 A 的元素进行排序。
    sortrows(A):对矩阵行或表行进行排序,基于第一列中的元素按升序对矩阵行进行排序。
  • size(A):数组大小,求出这个A矩阵为几行几列,如果 A 是一个 3×4 矩阵,则 size(A) 返回向量 [3 4]。
  • find(A):查找非零元素的索引和值, 如find(A==6)=8:在A矩阵中,A=6的值位于第8个位置。
>> A=[1 2 3;0 5 6;7 0 9]

A =

     1     2     3
     0     5     6
     7     0     9

>> max(A)

ans =

     7     5     9

>> max(max(A))

ans =

     9

>> min(A)

ans =

     0     0     3

>> sum(A)

ans =

     8     7    18

>> mean(A)

ans =

    2.6667    2.3333    6.0000

>> sort(A)

ans =

     0     0     3
     1     2     6
     7     5     9

>> sortrows(A)

ans =

     0     5     6
     1     2     3
     7     0     9

>> size(A)

ans =

     3     3

>> length(A)

ans =

     3

>> find(A)

ans =

     1
     3
     4
     5
     7
     8
     9

>> find(A==6)

ans =

     8

posted @ 2024-03-04 10:52  zzyoctopus  阅读(32)  评论(0)    收藏  举报