matlab 数据分析教程

发布于:2025-09-08 ⋅ 阅读:(15) ⋅ 点赞:(0)

MATLAB 是一款强大的数据分析工具,广泛应用于科学计算、工程分析和数据可视化等领域。以下是一个 MATLAB 数据分析的基础教程,涵盖常用操作和实例:

一、MATLAB 数据分析基础

1. 数据导入

MATLAB 支持导入多种格式的数据(CSV、Excel、文本文件等):

% 导入 CSV 文件
data = readmatrix('data.csv');  % 纯数值数据
tbl = readtable('data.csv');    % 带表头的数据,返回表格

% 导入 Excel 文件
xlData = readmatrix('data.xlsx', 'Sheet', 'Sheet1');

% 手动输入数据
x = [1, 2, 3, 4, 5];
y = [2.1, 4.0, 5.9, 8.2, 10.1];
2. 数据基本统计分析

常用统计函数:

% 计算均值、中位数、标准差
mean_val = mean(data);       % 均值
median_val = median(data);   % 中位数
std_val = std(data);         % 标准差
var_val = var(data);         % 方差

% 最大值、最小值、求和
max_val = max(data);
min_val = min(data);
sum_val = sum(data);

% 相关系数(两个变量)
corr_val = corrcoef(x, y);   % 返回相关系数矩阵
3. 数据可视化

MATLAB 提供丰富的绘图函数:

% 折线图
figure;
plot(x, y, 'o-r', 'LineWidth', 1.5);  % 'o-r' 表示圆形标记+红色线
xlabel('X轴');
ylabel('Y轴');
title('折线图示例');
grid on;

% 直方图
figure;
histogram(data, 10);  % 10个 bins
title('数据分布直方图');

% 散点图(带回归线)
figure;
scatter(x, y);
hold on;
p = polyfit(x, y, 1);  % 一次多项式拟合(线性回归)
y_fit = polyval(p, x);
plot(x, y_fit, 'b--');
legend('数据点', '回归线');

二、进阶分析示例:线性回归

假设我们有一组数据 xy,需要进行线性回归分析:

% 数据
x = [1:1:10]';  % 自变量
y = 2*x + 3 + randn(10,1);  % 带噪声的因变量(y=2x+3+噪声)

% 线性回归
X = [ones(length(x),1), x];  % 构造设计矩阵(包含常数项)
b = X\y;  % 最小二乘求解系数(b(1)为截距,b(2)为斜率)

% 预测值
y_pred = X*b;

% 可视化结果
figure;
scatter(x, y, 'filled');
hold on;
plot(x, y_pred, 'r-', 'LineWidth', 2);
xlabel('x');
ylabel('y');
title('线性回归示例');
legend('原始数据', '回归直线');
grid on;

% 输出结果
fprintf('回归方程:y = %.2f + %.2f x\n', b(1), b(2));

三、批量数据处理

处理多组数据时,可使用循环或向量化操作提高效率:

% 生成3组测试数据
data = randn(100, 3);  % 100行3列的随机数据

% 批量计算每组数据的统计量
stats = zeros(3, 3);  % 存储均值、标准差、中位数
for i = 1:3
    stats(i,1) = mean(data(:,i));
    stats(i,2) = std(data(:,i));
    stats(i,3) = median(data(:,i));
end

% 显示结果
resultTable = table(stats(:,1), stats(:,2), stats(:,3), ...
    'VariableNames', {'均值', '标准差', '中位数'}, ...
    'RowNames', {'组1', '组2', '组3'});
disp(resultTable);

四、常用工具包

MATLAB 提供多个专业工具箱扩展数据分析能力:

  • Statistics and Machine Learning Toolbox:高级统计分析、机器学习
  • Curve Fitting Toolbox:曲线拟合与数据分析
  • Signal Processing Toolbox:信号处理与特征提取

通过以上内容,你可以快速掌握 MATLAB 数据分析的基本流程。实际应用中,可根据具体需求结合官方文档(doc 命令)深入学习。


网站公告

今日签到

点亮在社区的每一天
去签到