数学建模论文.docx
《数学建模论文.docx》由会员分享,可在线阅读,更多相关《数学建模论文.docx(32页珍藏版)》请在冰点文库上搜索。
数学建模论文
糖尿病发病率问题
1.摘要
本文通过对题目提供的数据进行分析,就不同年龄、不同职业人群中糖尿病患病情况,估算出各种工作、生活行为方式下糖尿病患病率,从而得出各种工作、生活行为方式对糖尿病患病率的影响及影响的强度,为糖尿病防治提供参考。
在问题一的求解过程中,我们通过比较线性回归的算法和logitic回归的方法,得出此题的最佳方案是logitic回归的方法。
我们建立了logit模型,结合数据拟合的方法,在曲线拟合的时候使用了最小二乘法,从而得到最佳答案。
因为是大规模的统计问题,难以直接求解,针对此问题,我们用matlab软件编程求解得到了糖尿病的发病率,结果表明,在较年轻的时候,网络公司的糖尿病患病率较高;在较年长的时候,设计研究院的糖尿病患病率较高。
在问题二中,在统计的过程中,我们按照不同职业、生活行为方式对被调查人数进行了分组。
利用成因关联分析模型,进行糖尿病与某个指标的关联计数,计算每个指标的支持度和置信度,采用基于频集理论的Apriori的层次算法来对糖尿病危险因素做出关联度分析,分别求得糖尿病与各个指标之间的关系,并根据人群的发病情况及危险因素大小对患病者及高危人群给出干预措施。
根据关联度分析,糖尿病与加班频繁程度、午餐情况等呈独立相关,加班频繁,饮食不健康都是糖尿病的危险因子。
据此,我们可以从相关方面给出防治建议。
关键词:
糖尿病,患病率,logit模型,数据拟合法,最小二乘法,防治,关联分析模型
2.问题重述
糖尿病(diabetes)是一种常见病、多发病,是全球流行并且严重威胁人类生命健康的疾病,儿童和青少年也不能幸免,它已成为现代疾病中的第二杀手,对人体的危害仅次于癌症。
它是由遗传因素、免疫功能紊乱、微生物感染及其毒素、自由基毒素、精神因素等等各种致病因子作用于机体导致胰岛功能减退、胰岛素抵抗等而引发的糖、蛋白质、脂肪、水和电解质等一系列代谢紊乱综合征,临床上以高血糖为主要特点,典型病例可出现多尿、多饮、多食、消瘦等表现,即“三多一少”症状。
糖尿病可分为:
先天性儿童时期就开始的I型糖尿病(即儿童糖尿病)以及Ⅱ型糖尿病。
Ⅱ型糖尿病只发生在成人身上,所以称为成人糖尿病。
糖尿病患者中大部分都是成人糖尿病患者,儿童糖尿病患者只占到5%左右。
多项研究表明,糖尿病患病率随着年龄的增加而上升,
目前,世界卫生组织推荐的糖尿病诊断标准为:
1.任何时刻静脉血糖大于或等于11.1mmol/L(200mg/μ);
2.空腹静脉血糖大于或等于7.0mmol/L(126mg/μ);
3.葡萄糖耐量试验的2小时血糖大于或等于11.1mmol/L(200mg/μ);
4.上述测定值在同等状态下(饮食、运动量、精神状态无改变)可重复。
我们通过对设计研究院人员和网络公司体人员共计1750的体检表及其生活习惯,工作情况的访谈结果进行分析,建立logit模型,按糖尿病的诊断标准(结合提供的数据,我们将糖尿病的诊断标准简化为:
空腹静脉血糖大于或等于7.0mmol/L(126mg/μ)即认定为患有糖尿病)了解设计研究院和网络公司的人员糖尿病的患病情况,确定患病人数。
此外,还要根据体检表的数据和访谈的结果,建立适当的模型对危险因素做出关联度分析和合理解释,最后,就得到的结果,对大家做出防治措施,降低糖尿病的患病率。
以研究糖尿病患病率与年龄的关系为例,我们分别对网络公司的1000名不同年龄的人和设计研究院的750名不同年龄的人进行观察,表1.1给出了设计研究院的750名被观察者的年龄及他们是否患糖尿病的数据,表1.2给出了网络公司的1000名被观察者的年龄及他们是否患糖尿病的数据(在表1.1和表1.2的糖尿病一栏中,1代表被观察者患糖尿病,0代表不患糖尿病)。
根据这些数据建立数学模型,来分析糖尿病患病率与年龄的关系,并进行统计预测。
表1.1设计研究院750名被观察者的年龄与是否患糖尿病的观察数据
年龄
总人数
患病人数
年龄
总人数
患病人数
25
9
0
45
28
2
26
16
0
46
15
1
27
10
0
47
20
0
28
9
0
48
22
3
29
15
0
49
33
2
30
16
0
50
23
0
31
8
0
51
23
1
32
12
0
52
27
2
33
14
0
53
17
1
34
14
0
54
25
0
35
11
0
55
23
1
36
10
0
56
26
1
37
13
1
57
26
0
38
12
0
58
29
1
39
15
0
59
34
2
40
12
1
60
25
1
41
16
0
61
29
1
42
13
0
62
26
4
43
12
0
63
25
0
44
15
1
64
24
1
表1.2网络公司1000名被观察者的年龄与是否患糖尿病的观察数据
年龄
总人数
患病人数
年龄
总人数
患病人数
25
34
0
45
5
0
26
39
1
46
3
0
27
45
0
47
7
0
28
48
1
48
5
0
29
45
1
49
8
0
30
54
1
50
5
1
31
34
1
51
4
0
32
54
1
52
3
1
33
49
1
53
3
0
34
46
1
54
6
0
35
44
0
55
4
1
36
54
2
56
5
0
37
53
1
57
2
0
38
48
2
58
5
1
39
47
1
59
4
0
40
51
1
60
3
0
41
41
0
61
7
0
42
46
2
62
10
1
43
34
1
63
8
1
44
33
0
64
2
0
3.模型假设与记号
3.1问题一
3.1.1年龄对糖尿病患病率的影响:
3.1.1.1模型假设:
①如果被调查者空腹静脉血糖大于或等于7.0mmol/L(126mg/μ),我们就认定其患有糖尿病。
②在实验中,各职员除年龄不同外,其他影响因子如环境条件、工作生活方式均处于同等水平。
③在实际问题中,患糖尿病的几率受环境条件、身心因素、工作方式、生活习惯等各种因素的作用,而忽略以上各种因素的影响,仅仅考虑年龄大小对患上糖尿病的影响。
④这些被观察者是独立选取的,相互之间不存在关联关系。
3.1.1.2符号说明
X:
被观察者的年龄
Y:
被观察者患糖尿病的情况(Y=1表示患糖尿病,Y=0表示为患糖尿病。
显然,Y是一个0-1变量。
)
3.2问题二
3.2.1模型假设
①在实验中,各职员除职业不同外,其他影响因子如环境条件、工作生活方式均处于同等水平。
②在实际问题中,患糖尿病的几率受环境条件、身心因素、年龄、生活习惯等各种因素的作用,而忽略以上各种因素的影响,仅仅考虑不同职业对患上糖尿病的影响。
3.2.2符号说明
:
糖尿病患者数据集
:
工作人员工作、生活方式不同产生的集合
R:
糖尿病的类别集
n:
该糖尿病的类别总数
:
影响因子数据集
m:
影响因子个数,为第j个影响因子的类别集
D:
合并糖尿病患者数据集与影响因子数据集得到的关联分析数据集
r:
糖尿病患者
q:
影响因子
X:
将糖尿病患者r的类别与影响因子q的类别进行组合得到的所关心的项集
:
x的支持度计数,即x在事务集D中出现的次数(其中,
)
:
x的支持度
σx:
x的置信度
4.分析与建立模型
4.1问题分析
4.1.1问题一
随着社会经济的发展,人们生活水平的提高和生活方式的改变,糖尿病的发病率近年来在我国呈现递增趋势,且患病率越来越趋向于年轻化。
除去糖尿病本身对人体带来的危害,血糖一旦控制不好,还会引发各种并发症,导致肾、眼、足等部位的衰竭病变,且无法治愈,严重危害着人的身体健康。
因此,很多专家已经就及早治疗及预防糖尿病达成共识。
因为我们是分别对设计研究院和网络公司进行分析的,以设计研究院为例(同网络公司),以年龄为变量,得出糖尿病患病率与年龄的关系。
为此,我们在统计处理数据时,对被调查者的年龄进行分组。
除此之外,性别也会影响糖尿病的患病情况。
但是,题目中没有要我们求出性别对糖尿病患病率的影响,在此,就不进行研究分析了。
4.1.1.1年龄对糖尿病患病率的影响
我们利用表1的数据作出Y对x的散点图。
下面分别对网络公司和设计研究院进行处理。
图1.1设计研究院糖尿病患病情况对年龄的散点图
图1.2网络公司糖尿病患病情况对年龄的散点图
从图1.1和图1.2易知,不能直接对上述数据建立回归模型,需要先对题目中所给的数据进行预处理。
数据预处理的一种方法是将被观察者按年龄段进行分组,并统计各年龄段中患糖尿病的人数,及患病人数占该年龄段总人数的比例(以下简称:
患病人数)。
我们分别以设计研究院和网络公司为例,将年龄分成4个年龄段,统计好的结果如表2.1和表2.2所示。
表2.1设计研究院各年龄段的糖尿病患病人数及比例
年龄段
年龄段中点
人数
患者人数
患病比率
25--35
30
121.00
-
0.00%
35--45
40
129.00
3.00
2.33%
45--55
50
233.00
12.00
5.15%
55--65
60
267.00
12.00
4.49%
合计
750.00
27.00
3.60%
表2.2网络公司各年龄段的糖尿病患病人数及比例
年龄段
年龄段中点
人数
患者人数
患病比率
25--35
30
449.00
8.00
1.78%
35--45
40
451.00
10.00
2.22%
45--55
50
49.00
2.00
4.08%
55--65
60
69.00
4.00
5.80%
合计
1000.00
24.00
2.40%
我们根据表2.1和表2.2的数据,分别作出关于设计研究院和网络公司的患病比例对各年龄段中点的散点图(为方便起见,散点的横坐标均简单地取各年龄段的中点),来研究患病比例与年龄的关系。
图2.1设计研究院患病比例对各年龄段中点的散点图
图2.2网络公司患病比例对各年龄段中点的散点图
从图2.1和图2.2可以看出,糖尿病患病比例随年龄的增大而增大,大致是一条介于0和1之间的S型曲线,这条曲线用回归方程来确定。
表2.1,表2.2,图2.1和图2.2中的患病比例实际上就是年龄为x时(以下均取年龄段的中点)Y的平均值,用期望的符号记作y=E(Y|x)……
(1)
患病比例y是年龄x的函数,其取值在区间[0,1]上。
根据模型汇总和参数估计值的曲线拟合,易得设计研究院的线性回归曲线更接近于S型曲线的3次多项式回归曲线,而网络公司的线性回归曲线更接近于S型曲线的2次多项式回归曲线。
表3.1.网络公司模型汇总和参数估计值
因变量:
患病率
方程
模型汇总
参数估计值
R方
F
df1
df2
Sig.
常数
b1
b2
b3
线性
.948
36.472
1
2
0.026
-2.794
0.139
对数
.897
17.402
1
2
0.053
-18.606
5.849
倒数
.829
9.712
1
2
0.089
8.977
-231.859
二次
.988
41.494
2
1
0.109
3.286
-0.149
0.003
三次
.986
34.857
2
1
0.119
1.223
-0.005
0.000
2.300E-5
复合
.972
68.824
1
2
0.014
0.480
1.042
幂
.945
34.183
1
2
0.028
0.004
1.769
S
.897
17.461
1
2
0.053
2.822
-71.059
增长
.972
68.824
1
2
0.014
-.734
0.042
指数
.972
68.824
1
2
0.014
0.480
0.042
Logistic
.972
68.824
1
2
0.014
2.083
0.959
自变量为年龄。
表3.2.设计研究院模型汇总和参数估计值
因变量:
患病率
方程
模型汇总
参数估计值
R方
F
df1
df2
Sig.
常数
b1
b2
b3
线性
0.814
8.778
1
2
0.098
-4.338
0.163
对数
0.871
13.481
1
2
0.067
-24.472
7.277
倒数
0.905
19.008
1
2
0.049
10.255
-305.789
二次
0.952
9.837
2
1
0.220
-18.541
0.836
-0.007
三次
0.959
11.841
2
1
0.201
-14.266
0.520
0.000
-5.686E-5
复合a
.
.
.
.
.
.
.
幂a
.
.
.
.
.
.
.
Sa
.
.
.
.
.
.
.
增长a
.
.
.
.
.
.
.
指数a
.
.
.
.
.
.
.
Logistica
.
.
.
.
.
.
.
说明:
1.自变量为年龄。
2.因变量(患病率)包含非正数值。
最小值为0.00。
无法应用对数变换。
无法为此变量计算复合模型、幂模型、S模型、增长模型、指数模型和对数模型。
因此,我们建立了设计研究院和网络公司的回归模型,如下:
=β0+β1*x+β2*x^2+β3*x^3+ε……
(2)
=β0+β1*x+β2*x^2+ε……(3)
其中随机误差ε服从均值为0的正态分布,特别的,在
(2)式中,当β2=β3=0时,为线性回归模型;在(3)式中,当β2=0时,为线性回归模型。
图3.1设计研究院y对x的线性回归曲线
图3.2网络公司y对x的线性回归曲线
图4.1设计研究院y对x的三次多项式回归曲线
图4.2网络公司y对x的二次多项式回归曲线
但是,
(2)式回归方程中y的取值不一定在[0,1]中,即使y的取值在[0,1]中,由于给定x时,误差项ε也只能取0,1两个值,显然ε不具有正态性,而且ε的方差依赖于x,具有异方差性,这些都不满足普通回归分析的前提条件。
因此,Y为一个二分类(或多分类)变量而不是连续变量时,用最小二乘法的回归分析来做,需要建立新的回归模型。
4.1.1.2职业对糖尿病患病率的影响
我们根据题目中所给的相关数据,进行简单的数据处理,得到如下的饼图。
由图中可以看出,设计研究院糖尿病的发病率比网络公司的发病率高很多。
一般而言,在设计研究院工作的人群脑力劳动和压力较一般人大,在较大压力作用下,会导致身体机能下降,抵抗力下降,会更容易患上糖尿病。
4.1.2问题二
网络公司与设计研究院是两个完全不同性质和类型的事业单位,网络公司作为白领一代的代表,其工作需要创新力,因此网络公司更加年轻化。
IT业作为这两年高速发展的产业,也代表了高竞争力,这意味着他们的员工身负高压力、厚作业,加班加点是常事,饮食、生活不规律更是便饭。
而设计研究院又代表了另一类的人群,他们经验老到、老神在在,高收入,生活条件优渥,没有更大的生活压力,工作对他们而言更像是变相的铁饭碗。
他们之中都存在糖尿病患者,而他们不同的工作、生活行为方式又会对糖尿病的发生概率产生什么样的影响呢?
我们对其将通过数学分析来进行研究。
4.2模型建立:
4.2.1问题一:
4.2.1.1年龄对糖尿病患病率的影响
年龄与患上糖尿病几率的模型,符合统计模型的要求,因此可以运用logit模型的知识进行求解,对于年龄与患上糖尿病的关系,将其类比于logit模型。
Logit模型用π(x)表示年龄为x的被观察者患糖尿病的概率,即π(x)=P(Y=1|x)……(3)
显然Y的期望为E(Y|x)=π(x),方差为D(Y|x)=π(x)(1-π(x)).
由
(1)式可知,π(x)为该年龄段的患病比例y.
为了寻求患病率π(x)与年龄x,S型曲线的函数关系,且π(x)∈[0,1],建立logit模型。
(4)
(4)的反函数为
(5)
(5)式左端可看作π(x)的变化,记作
称为logit模型或logistic回归模型,当
时,
。
在数据预处理时,将被观察者的年龄分为k=4组,记第i组(i=1,2,….k)的年龄为
被观察人数为
,患病人数为
每位被观察者患病率为πi=
/
,这时logit模型具有如下形式:
其中β0,β1是回归系数。
合理地设mi服从二项分布B(ni,πi),β0,β1可用最大似然估计法得到。
4.2.1.2职业对糖尿病患病率的影响
由表2.1和表2.2比较可发现,设计研究院总的发病率远高于网络公司。
且我们已知我国糖尿病的高发人群为40—59岁的中老年群体,发病年龄在不断提早。
对于表2.1和表2.2,则是很好的体现。
如在表2.2中我们可以清楚地看到在25—35年龄段中,其糖尿病的发病率已达到了1.78%。
因为网络公司则代表了当今社会上白领们的身体现状,为数不少正处于青壮年,黄金时期的人群,由于现代生活节奏的加快,生活压力增加,和暴饮暴食、生活习惯不规律等一些不健康的生活习惯等纷纷患上糖尿病。
至于在设计研究院中多是干部教授,这些人年龄普遍较大,而生活条件较优,研究院的工作多是脑力活动,体力活动较少,所以研究院中的糖尿病患者多年龄偏大。
4.2.2问题二:
由一般的健康知识我们知道,糖尿病与很多因素有关,其中最常见的也最影响糖尿病发生的因素就是饮食和身体自身体质。
所以我们研究不同的工作生活方式对患上糖尿病的影响。
我们将题中所给的数据三进行分析,归纳,得出了如下的图,表
患病因子
患病情况
结论
患有糖尿病
不患有糖尿病
加班情况
经常加班
92.60%
7%
加班时间长工作压力大会增大患糖尿病的几率
偶尔加班
70.30%
28.60%
不加班
2%
97.60%
说不清
5%
95.80%
午餐情况
单位餐厅
13.50%
87.20%
经常吃外卖等油腻食物会增大患糖尿病的几率
自带
3.50%
92.70%
盒饭
87.90%
23.80%
其他
30.60%
65.20%
从图中可以清晰地看出,调查人群中经常加班与经常吃盒饭的人患糖尿病的几率比一般人要大很多,其次是偶尔加班和在单位餐厅吃饭的人。
经常加班的人,得不到很好的休息,也不能很好的锻炼身体,人容易疲劳,处于“亚健康”状态,导致身体机能下降,容易患上糖尿病;而总是吃盒饭等外卖的人,食物质量和营养得不到很好的保证,而且经常较咸较油腻,容易引发各种身体问题,也容易患上糖尿病。
为此我们分析糖尿病成因,找到预防和治疗糖尿病的方法,建立糖尿病成因关联分析模型。
5.模型求解
5.1问题一的求解
5.1.1年龄对糖尿病患病率的影响
logit模型是一种广义线性模型,可利用MATLAB统计工具箱中的命令glmfit求解,通常的使用格式为:
b=glmfit(x,y’distr’,’link’)
或[b,dev,stats]=glmfit(x,y,’distr’,’link’)
其中输入x为自变量数据矩阵,缺省是会自动添加一列1向量作为x的第1列;y为因变量数据向量;distr为估计系数是所用的分布,可以是binomial,poisson等,缺省是为normal;特别当distr取binomial时,y可取一个2列矩阵,第1列为观察“成功”的次数,第2列为观察次数;link取logit,probit(Probit模型间下面)等,缺省是为logit。
输出b为回归系数的估计值;dev为拟合偏差,是一般的残差平方和的推广;stats输出一些统计指标,详见MATLAB的帮助文件。
用表2的数据输入并执行以下的程序:
5.1.1.1设计研究院:
Age=[30,40,50,60]’;
Diabetes=[0,3,12,12]’;
Total=[121,129,233,267]’;
Proport=Diabetes./Total;
[b,dev,stats]=glmfit(Age,[DiabetesTotal],’binomial’,’logit’);
logitFit=glmval(b,Age,’logit’);
plot(Age,Proport,’o’,Age,logitFit,’r-’);
xlabel(‘Age’);ylabel(‘ProportionofDiabetes’);
b,bi=stats.se,dev
得到logit模型中的参数β0,β1的最大似然估计与它的标准值(见表3.1),拟合偏差为5.5666.图5.1给出了logistic回归曲线与散点图。
图5.1.设计研究院logit回归曲线与散点图
表3.1设计研究院模型参数的估计结果
参数
参数估计值
标准差
β0
-5.8619
0.0504
β1
1.2042
0.0223
利用命令[yhat,dylo,dyhi]=glmval(b,x,’logit’)
还可以给出自变量为x时因变量y的预测值和置信度为95%的置信区间,结果如表4.1。
表4.1患病比例的预测值
年龄段
年龄x
患病比例
预测值π(x)'
25--35
30
0.00%
0.0128
35--45
40
2.33%
0.0209
45--55
50
5.15%
0.0342
55--65
60
4.49%
0.0554
5.1.1.2网络公司:
同理,对网络公司的数据进行相关处理,
Age=[30,40,50,60]’;
Diabetes=[8,10,2,4]’;
Total=[449,451,49,69]’;
Proport=Diabetes./Total;
[b,dev,stats]=glmfit(Age,[DiabetesTotal],’binomial’,’logit’);
logitFit=glmval(b,Age,’logit’);
plot(Age,Proport,’o’,Age,logitFit,’r-’)