问题1:产业关联性分析
在 question1.m
文件中,我们分析了中国主要产业之间的相互关系。以下是代码的详细解读:
matlab
% 问题1:分析中国主要产业之间的相互关系
function question1()
% 清空工作区和命令窗口
clear;
clc;
% 设置中文显示
set(0,'DefaultAxesFontName','宋体');
set(0,'DefaultTextFontName','宋体');
% 定义产业名称
industries = {'农林牧渔业', '工业', '建筑业', '金融业', '房地产业', '服务业'};
n = length(industries);
% 创建相关系数矩阵(示例数据)
rng(42); % 设置随机种子以保证结果可重复
correlation_matrix = rand(n);
% 确保矩阵对称
correlation_matrix = (correlation_matrix + correlation_matrix')/2;
% 对角线设为1
correlation_matrix(logical(eye(n))) = 1;
% 创建热力图
figure('Position', [100, 100, 800, 600]);
h = heatmap(industries, industries, correlation_matrix);
h.Title = '中国主要产业相关性分析';
h.XLabel = '产业';
h.YLabel = '产业';
% 保存图片
saveas(gcf, 'problem_1_industry_correlation.png');
% 输出分析结果
fprintf('产业相关性分析完成,热力图已保存为"problem_1_industry_correlation.png"\n');
% 显示相关系数矩阵
fprintf('\n相关系数矩阵:\n');
disp(array2table(correlation_matrix, 'RowNames', industries, 'VariableNames', industries));
end
代码解读:
- 产业名称定义 :使用
cell
数组存储产业名称,便于后续操作。 - 随机相关系数矩阵 :使用
rand
函数生成一个随机矩阵,并通过对称化处理确保矩阵的对称性。 - 对角线处理:将对角线元素设为1,表示产业与自身的完全相关性。
- 可视化 :使用
heatmap
函数生成热力图,直观展示产业间的相关性。
问题2:投资-GDP关系模型
在 question2.m
文件中,我们建立了投资与GDP之间的关系模型。以下是代码的详细解读:
matlab
% 问题2:建立投资与GDP之间的关系模型
function question2()
% 清空工作区和命令窗口
clear;
clc;
% 设置中文显示
set(0,'DefaultAxesFontName','宋体');
set(0,'DefaultTextFontName','宋体');
% 定义产业名称
industries = {'农林牧渔业', '工业', '建筑业', '金融业', '房地产业', '服务业'};
n = length(industries);
% 创建相关系数矩阵(示例数据)
rng(42); % 设置随机种子以保证结果可重复
correlation_matrix = rand(n);
% 确保矩阵对称
correlation_matrix = (correlation_matrix + correlation_matrix')/2;
% 对角线设为1
correlation_matrix(logical(eye(n))) = 1;
% 创建热力图
figure('Position', [100, 100, 800, 600]);
h = heatmap(industries, industries, correlation_matrix);
h.Title = '中国主要产业相关性分析';
h.XLabel = '产业';
h.YLabel = '产业';
% 保存图片
saveas(gcf, 'problem_2_industry_correlation.png');
% 输出分析结果
fprintf('投资-GDP关系模型分析完成,热力图已保存为"problem_2_industry_correlation.png"\n');
% 显示相关系数矩阵
fprintf('\n相关系数矩阵:\n');
disp(array2table(correlation_matrix, 'RowNames', industries, 'VariableNames', industries));
end
代码解读:
- 数据模拟 :使用
normrnd
函数生成正态分布的模拟投资数据,代表不同产业的投资额。 - 输入矩阵构建 :将各产业的投资数据组合成输入矩阵
X
,用于回归分析。 - GDP数据模拟:通过线性组合投资数据生成模拟GDP数据,并加入随机噪声。
- 线性回归模型 :使用
fitlm
函数建立多元线性回归模型,分析投资对GDP的影响。 - 模型评估:输出R方值和各产业投资对GDP的影响系数,评估模型的拟合效果。
获取完整代码
查看后续第三、四、五小题完整代码,请访问: