MATLAB中的转置操作及其必要性

MATLAB中的转置操作及其必要性

原始数据

matlab 复制代码
x_data = [0, 50, 100, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000]; 
y_data = [0, 0.25, 0.5, 0.85, 1.2, 1.35, 1.45, 1.52, 1.62, 1.68, 1.75, 1.85];

原始数据是行向量.

当调用plot命令时, 且x_datay_data是一维向量, 即是一个 1×n1 \times n1×n(行)或 n×1n \times 1n×1(列)的向量,MATLAB将会正确绘制图像.

matlab 复制代码
%% 原始数据
x_data = [0, 50, 100, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000]; 
y_data = [0, 0.25, 0.5, 0.85, 1.2, 1.35, 1.45, 1.52, 1.62, 1.68, 1.75, 1.85];




%% 查看维度
disp('x_data 维度:'); disp(size(x_data)); % 输出 [1, 12](1行12列)
disp('y_data 维度:'); disp(size(y_data)); % 输出 [1, 12](1行12列)

plot(x_data, y_data);

%% 转置

x_data = x_data';
y_data = y_data';

figure;

% 两者绘制的图像一样
plot(x_data, y_data);

转置

MATLAB 中,单引号 ' 表示复共轭转置(也叫 Hermitian 转置), 对于实数数组, 它的作用就是普通的行列转置(将行向量转为列向量, 或列向量转为行向量); 若为复数数组, 它会先对元素取共轭, 再进行转置.

如果需要严格的普通转置(不进行共轭操作), 可使用点单引号 .', 对于实数数组而言, '.' 效果完全一致.

相关推荐
地平线开发者4 小时前
profiler debug 工具用法与高一致性策略
算法·自动驾驶
编程大师哥4 小时前
匿名函数 lambda + 高阶函数
java·python·算法
isyangli_blog4 小时前
OpenDayLight (Carbon 版本) 启动与组件安装
开发语言·php
vb2008114 小时前
FastAPI APIRouter
开发语言·python
Benszen4 小时前
KVM虚拟化解决方案
开发语言·perl
会编程的土豆4 小时前
Go 语言反射(Reflection)详解
开发语言·后端·golang
東雪木4 小时前
多线程与并发编程 专属复习笔记
java·开发语言·笔记·java面试
我叫袁小陌4 小时前
算法解题思路指南
算法
地平线开发者4 小时前
Conv+BN+Add+ReLU 融合机制简介
算法·自动驾驶