日常简单数据分析之matlab (一)

文章目录

    • [1. 背景](#1. 背景)
    • [2. 待分析数据](#2. 待分析数据)
      • [3. 函数介绍](#3. 函数介绍)
      • [3.1 提取函数](#3.1 提取函数)
      • [3.2 画图函数](#3.2 画图函数)
    • [4. 分析步骤](#4. 分析步骤)

1. 背景

日常工作中,相信很多人也会遇到很长片段的数值计算并分析,如果这些数值可以复制到excel中就还好,可以充分利用excel强大的公式来计算。如果夹杂一些格式的符号作为分割符号,就比较难办了。但如果你是一个开发,那么使用matlab就几行代码的事情,这是非常方便的。

2. 待分析数据

这些数据指的是好几列数据,中间只是简单用分割符 区分了一下,并不包含其他格式的内容。如果包含了,就需要先进行数据提取到希望的格式,再按照此方法进行计算。

  • 简单数据内容如下:
c 复制代码
      9,0,1764646526152078,1764646526241306
     67,0,1764646526190572,1764646526291972
     90,1,1764646526228836,1764646526308426
    136,1,1764646526269024,1764646526346550
    163,2,1764646526297787,1764646526349888
    193,0,1764646526312443,1764646526384586
    230,0,1764646526352615,1764646526421861
    269,1,1764646526349327,1764646526445200

3. 函数介绍

针对上面的数据,我们需要先已分隔符作为标识,然后分别按列进行提取,提取之后就可以进行相关计算了。

3.1 提取函数

  • readmatrix 介绍
cpp 复制代码
A = readmatrix(filename)  % 读取文件并返回矩阵
A = readmatrix(filename, Name, Value)  % 使用指定Name标识的-Value值对组指定选项

Name标识如下:

  • 'Range':指定数据范围(如 'A1:C10')
  • 'Sheet':指定 Excel 工作表(如 2 或 'Sheet1')
  • 'Delimiter':指定分隔符(如 ',' 或 '\t')
  • 'NumHeaderLines':跳过的标题行数
  • 'TreatAsMissing':将特定文本视为缺失值(如 ['NA', 'NaN'])

针对数据分析,我们就可以使用 Delimiter 标识进行数据提取。

3.2 画图函数

  • plot 介绍
c 复制代码
plot 是 MATLAB 中用于绘制二维图形的函数,支持多种数据输入方式和图形属性设置。其核心功能是通过连接数据点绘制曲线或散点图。

```c
plot(y)  % 仅输入纵坐标数据
plot(x, y)  % 输入横纵坐标数据
plot(x1, y1, x2, y2, ...)  % 多条曲线绘制
plot(..., 'LineStyle', 'Color', 'Marker')  % 设置图形属性

常用调用格式
‌- 单变量输入‌
plot(y)  % 以索引为横坐标,y为纵坐标
plot(X)  % X为复数时,实部为横坐标,虚部为纵坐标
示例:plot([1, 2, 3, 4]) 绘制折线图(横坐标为1:4)。

‌- 双变量输入‌
plot(x, y)  % x和y为同维向量或矩阵
示例:plot(0:0.1:2*pi, sin(0:0.1:2*pi)) 绘制正弦曲线。

‌- 多曲线绘制‌
plot(x1, y1, x2, y2, ...)  % 每对(x, y)绘制一条曲线
示例:plot(1:10, rand(1,10), 1:10, rand(1,10)) 绘制两条随机曲线。

- 图形属性设置
‌线型‌:'-'(实线)、'--'(虚线)、':'(点线)、'-.'(点划线)
‌颜色‌:'r'(红)、'g'(绿)、'b'(蓝)、'k'(黑)
‌标记‌:'o'(圆)、'x'(叉)、'+'(加号)、'*'(星)
示例:plot(x, y, 'r--o') 绘制红色虚线圆点曲线。

4. 分析步骤

  1. 使用分割符提取数据
  2. 获得数据所需的列
  3. 简单计算
  4. 画图

大致代码如下:

matlab 复制代码
% 使用 , 分割符提取文件,返回矩阵形式
data = readmatrix('time.txt', 'Delimiter', ',');

% 分别获得需要的列
col1 = data(:,3);
col2 = data(:,4);

% 进行简单计算
diff_col = col2 - col1;

figure;

% plot 画图
plot(diff_col, 'b-o','LineWidth',1.5,'MarkerSize',1);

grid on;

% 设置图的标题
xlabel('行号 (Index)');
ylabel('第2列 - 第1列');
title('第2列减去第1列的结果');
legend('差值');

大致呈现结果如下:

相关推荐
bu_shuo3 小时前
MATLAB中的转置操作及其必要性
开发语言·算法·matlab
软件算法开发4 小时前
基于山羚羊优化的LSTM深度学习网络模型(MGO-LSTM)的一维时间序列预测算法matlab仿真
深度学习·matlab·lstm·一维时间序列预测·山羚羊优化·mgo-lstm
ClkLog-开源埋点用户分析6 小时前
【埋点分析系统】初次选型的实用指南(附开源解决方案)
数据分析·开源·开源软件·用户画像·埋点分析
电商API_180079052478 小时前
淘宝商品视频提取API全解析:从授权到落地实战
爬虫·python·信息可视化·数据分析·音视频
没有梦想的咸鱼185-1037-16639 小时前
面向自然科学的人工智能建模方法【涵盖机器学习与深度学习的核心方法(如随机森林、XGBoost、CNN、LSTM、Transformer等)】
人工智能·深度学习·随机森林·机器学习·数据分析·卷积神经网络·transformer
stars-he11 小时前
单相双半波可控整流电路的MATLAB仿真设计
笔记·学习·matlab
wuk99811 小时前
MATLAB中求解和分析马蒂厄方程
人工智能·算法·matlab
十三画者13 小时前
【文献分享】PepQueryMHC:基于免疫肽组学数据实现肿瘤抗原的快速全面筛选
数据挖掘·数据分析
Evand J13 小时前
【2026课题介绍】无人机集群时间与角度约束下的协同攻击算法,附代码例程的运行示例
matlab·无人机·协同·协同攻击
DX_水位流量监测13 小时前
地埋式积水监测仪:城市防涝的智能感知核心
大数据·网络·人工智能·数据分析·自动化