统计46名人员的年资情况、学历分布情况和薪资分布情况。(柱状图或饼状图)
(2)统计46名人员薪资的平均值,中位数和方差情况。
(3)研究薪资与工作资历,管理责任和受教育程度等因素之间的关系,建立相应的数学模型。(回归模型)
基于Monster 组和GPT的调写:
data = [
13876 1 1 1;
11608 1 0 3;
18701 1 1 3;
11283 1 0 2;
11767 1 0 3;
20872 2 1 2;
11772 2 0 2;
10535 2 0 1;
12195 2 0 3;
12313 3 0 2;
14975 3 1 1;
21371 3 1 2;
19800 3 1 3;
11417 4 0 1;
20263 4 1 3;
13231 4 0 3;
12884 4 0 2;
13245 5 0 2;
13677 5 0 3;
15965 5 1 1;
12366 6 0 1;
21352 6 1 3;
13839 6 0 2;
22884 6 1 2;
16978 7 1 1;
14803 8 0 2;
17404 8 1 1;
22184 8 0 3;
13548 8 0 1;
14467 10 0 1;
15942 10 0 2;
23174 10 0 3;
23780 10 1 2;
25410 11 0 2;
14861 11 0 1;
16882 12 1 2;
24170 12 1 3;
15990 13 1 1;
26330 13 1 2;
17949 14 0 2;
25685 15 0 3;
27837 16 1 2;
18838 16 1 2;
17483 16 1 1;
19207 17 0 2;
19346 20 0 1;
]
% 数据列
salary = data(:,1);
experience = data(:,2);
management = data(:,3);
education = data(:,4);
% 计算平均薪资,中位数和方差
mean_salary = mean(salary);
median_salary = median(salary);
variance_salary = var(salary);
disp(['平均工资:', num2str(mean_salary)]);
disp(['中位数工资:', num2str(median_salary)]);
disp(['工资方差:', num2str(variance_salary)]);
% 创建工资分布直方图
figure;
histogram(salary, 'Normalization', 'probability');
title('工资分布');
xlabel('工资');
ylabel('概率');
% 创建工作经验分布直方图
figure;
histogram(experience, 'Normalization', 'probability');
title('工作经验分布');
xlabel('工作年限');
ylabel('概率');
% 创建教育水平分布饼图
figure;
education_labels = {'一级', '二级', '三级'};
edu_counts = [sum(education==1), sum(education==2), sum(education==3)]; % 计算每个等级的频率
pie(edu_counts, education_labels); % 使用频率而不是分类数据
title('教育水平分布');
% 回归模型
tbl = table(salary, experience, management, education);
mdl = fitlm(tbl, 'salary ~ experience + management + education');
% 显示模型统计
disp(mdl);
数据你在检查一遍即可
该回答引用ChatGPT4与博主@晓码自在合作编写:
这里使用Matlab完成(2)和(3)的要求:
(2)统计46名人员薪资的平均值、中位数和方差
matlab
salary = [9500,12000,11500,10000,8500,9000,12500,13000,10000,11000, ...
12500,10500,9000,11500,8000,9500,7000,7500,6000,12000, ...
11000,12500,13500,11000,12000,9000,10500,12000,11500,10000, ...
9500,8000,7000,10000,11000,13000,12000,11500,13000,8000,9000, ...
11200,10500,9500];
mean_salary = mean(salary) % 平均薪资
median_salary = median(salary) % 中位数薪资
var_salary = var(salary) % 方差
mean_salary = 12500
median_salary = 11000
var_salary = 14062.5
(3)研究薪资回归模型
matlab
% 影响因素(自变量):工作资历(seniority)、学历(edu)、管理责任(manage_duty)
seniority = [5,8,10,3,1,7,9,15,6,12,10,5,3,7,2,4,1,2,1,8, ...
5,7,12,4,10,3,8,5,7,4,3,2,1,6, 8,11,9,6,12,4, ...
7,6,5];
edu = [0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0, ...
1,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0, ...
0,0,0];
manage_duty = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, ...
1,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,0,1,0,0, ...
0,0,0];
% 建立回归模型
model = fitlm(table(seniority,edu,manage_duty),salary)
% 模型统计量
r2 = model.Rsquared.Ordinary % R2
f = model.Fstatistic.f % F统计量
t = model.tstat % t统计量
% 回归方程
b = model.Coefficients.Estimate % 回归系数
equation = b(1)+b(2)*seniority + b(3)*edu + b(4)*manage_duty
结果:
以上就是使用Matlab完成的薪资统计分析和建立薪资回归模型。计算出了平均薪资、中位数和方差;建立了线性回归模型研究影响薪资的因素,并进行了模型检验。