Matlab练习——矩阵和数组的操作
题目来自:《战胜MATLAB必做练习50道》
题目有更改,改成了我想写的样子。
1. 创建一个3×3矩阵,并将其扩充为4×5矩阵
clear;
clc;
mat1 = ones(,)
mat2 = zeros(,)
mat3 = rand(,) %随机矩阵
mat4 = randn(,) %产生均值为0,方差σ^ = ,标准差σ = 1的正态分布的矩阵
mat4(4,5) = 10
2. 建立一个等比数列,然后由它产生一个对角阵,并存储该矩阵。
clear;
clc;
a = logspace(,,)
d1 = diag(a)
save mydate d1
%eye(m,n)生成一个m×n的单位矩阵
3. 调用上面存储的矩阵,并由它产生一个列向量。
clear;
clc;
load mydate d1
d1
d2 = diag(d1)
4. 创建一个3×3魔方阵和相应的随机矩阵,将两个矩阵拼接起来。然后提取任意元素。
魔方阵:任意行、列及对角线之和相等。
clear;
clc;
mat1 = magic()
mat2 = rand(,)
mat3 = [mat1,mat2] %横向拼接
mat4 = [mat1;mat2] %纵向拼接
mat5 = mat3(:,[,,]) %提取第2、3行,第1、、4列的元素
mat6 = mat3([,],[,])
5. 求矩阵的转置矩阵。
clear;
clc;
mat1 = magic()
mat2 = rot90(mat1) %旋转矩阵
mat3 = mat1' %转置矩阵
6. 创建一个4×4单位矩阵,提取主对角线上的元素
clear;
clc;
mat1 = rand(,)
d = diag(mat1)
7. 创建一个4×5随机矩阵,提取第一行和第二行中大于0.3的元素组成的矩阵。
clear;
clc;
mat1 = rand(,)
mat2 = mat1([,],[,,,,])
mat3 = mat2(:)
k = ;
for ii = : length(mat3)
if(mat3(ii) > 0.3)
mat4(k) = mat3(ii);
k = k + ;
end
end
mat4
8. 计算A×B×C。
clear;
clc;
A = rand()
B = magic()
C = rand(,)
A*B*C
9. A=[1,2,3],计算A‘ 与A 的积。
clear;
clc;
A = [,,]
B = A'
A*B
B*A
10. 求5×5矩阵和4×3矩阵的逆矩阵
clear;
clc;
A = rand(,)
B = rand(,)
A1 = inv(A) %inv只能对方阵求逆
B1 = pinv(B) %pinv都可,包含了inv的功能
C = A*A1
D = B1*B
11. 用两种方法 求解Ax = b的解(A为4阶随机矩阵,b为4阶列向量)
clear;
clc;
A = rand()
b = ones(,)
x1 = inv(A) * b
x2 = A\b %直接使用高斯消去法,速度快一些
12. 算A的5次方,计算(0.5)^A
矩阵的乘方算法(A^p):
① 当p为正整数时,A^p表示A自乘p次
② 当p为负整数时,A^(-p)表示矩阵A-1自乘p次
③ 当p为0时,A^0等于与A同维的单位矩阵
④ 当p为分数时,若A可以分解为A = WDW-1,D为对角阵,则A^p = WDpW-1

标量的矩阵乘方(p^A):
若A可以分解为A = WDW-1,D为对角阵,则可以定义标量矩阵乘方为:

clear;
clc;
A = rand()
B = A^ %A自乘5次
C = (0.5)^A
Matlab练习——矩阵和数组的操作的更多相关文章
- matlab入门笔记(二):矩阵和数组
摘自<matlab从入门到精通>胡晓东 matlab最基本的数据结构就是矩阵,一个二维的.长方形形状的数据,可以用易于使用的矩阵形式来存储,这些数据可以是数字,字符.逻辑状态,甚至是mat ...
- Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作)
Leetcode 566. Reshape the Matrix 矩阵变形(数组,模拟,矩阵操作) 题目描述 在MATLAB中,reshape是一个非常有用的函数,它可以将矩阵变为另一种形状且保持数据 ...
- matlab中元胞数组(cell)转换为矩阵
matlab中元胞数组(cell)转换为矩阵. cell转换为矩阵函数为:cell2mat(c),其中c为待转换的元胞数组: 转化之后的矩阵可能不满足我们对矩阵维数的要求,那么也许还需要下面两个函数: ...
- MATLAB 的unique函数——数组矩阵的唯一值
MATLAB 的unique函数——求数组矩阵的唯一值 相关MathWork文档见此:unique数组中的唯一值 1.C = unique(A) 返回与 A 中相同的数据,但是不包含重复项.C 已按照 ...
- R: matrix & array 生成、操作矩阵、数组:
################################################### 问题:生成.操作矩阵 18.4.27 怎么生成矩阵 matrix.,,及其相关操作 ??? ...
- matlab矩阵与数组
数组运算:数与数组加减:k+/-A %k加或减A的每个元素数组乘数组: A.*B %对应元素相乘数组乘方: A.^k %A的每个元素k次方:k.^A,分别以k为底A的各元素为指数求幂值数除以数组: k ...
- Matlab基础之单元数组和结构数组
Matlab基础之单元数组和结构数组 前言: 单元数组和结构数组是一种新的数据类型,能将不同类型.不同维数的数组组合在一起,从而方便对不同的数据类型方便管理和维护. 如上图所示的2*2矩阵中,分别存储 ...
- 使用matlab进行图像处理的一些常用操作和tip
本人还是习惯使用Python语言,有时候不得不使用matlab的时候就变得举步维艰,下面记录一下使用matlab进行图像处理的一些常用操作以及代码,方便之后查阅: 1. 图像的读取 %% 读取原图像 ...
- matlab结构体、数组和单元数组类型的创建
matlab结构体.数组和单元数组类型的创建 @ 目录 matlab结构体.数组和单元数组类型的创建 matlab结构体类型 数组类型 单元数组类型 matlab结构体类型 通过字段赋值创建结构体 创 ...
随机推荐
- Linux 安装 MongoDB数据库
1下载: wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.7.tgz (下载较慢) 2.安装: mv mongodb-li ...
- Java如何处理异常方法?
在Java编程中,如何处理异常方法? 本例展示了如何使用System类的System.err.println()方法处理异常方法. package com.yiibai; public class E ...
- goldengate一些參数整理
manager參数: AUTOSTART:指定在mgr启动时自己主动启动那些进程. AUTOSTART ER * AUTOSTART extract extsz AUTORESTART:指定在mgr ...
- Linux系统date时间设定
修改linux系统的时间EDT和EST为CST EDT:指美国东部夏令时间 EST:英国时间 CST:北京时间 那么现在只要改成北京时间的时区CST就可以了,修改如下: [root@localhost ...
- CentOS7 loaded active exited
查了一下,原來是因為它沒有對應的 daemon 在執行 ref: http://ephrain.pixnet.net/blog/post/62911853-%5Blinux%5D-systemctl- ...
- ie10以上媒体查询 css
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { }
- JSON数组,JSON对象,数组的区别与基本操作整理
JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是: ...
- quake3中求1/sqrt(x)的算法源代码
quake3中求1/sqrt(x)的算法源代码如下(未作任何修改): float Q_rsqrt( float number ) { long i; float x2, y; const float ...
- iOS: 定义 Block
定义 typedef void (^RFAudioBasicBlock) (void); typedef void (^RFAudioSuccessBlock) (BOOL flag); typede ...
- 通过NAT转发实现私网对外发布信息
我们可以在防火墙的外部网卡上绑定多个合法IP地址,然后通过ip映射使发给其中某一个IP地址的包转发至内部某一用户的WWW服务器上,然后再将该内部WWW服务器响应包伪装成该合法IP发出的包. 具体的IP ...