[讨论]医学数据处理——一道建模题的matlab实现
<p>原题如附件所示:</p><p> </p>
<p><br/>题目要求判别病人的方法,以及确定主要的因素。</p>
<p>首先对题目给出的数据进行处理,将表一前面30个数据每种元素求平均值得到病人体内各种元素的平均含量。</p>
<p>再对表一后面30个元素求平均值,得到健康人体内个元素的平均含量,结果如下:</p>
<p> </p>
<p></p>
<p>将ca k作为自变量,sorh作为因变量,进行回归。(得到的模型为线性概率模型,见《经计量学精要》,古亚拉提)</p>
<p>回归的代码如附件里的m文件所示:</p>
<p><br/> </p>
<p><br/>运行的结果:</p><font face="Verdana">
<p><font face="Verdana">b =</font></p>
<p><font face="Verdana"> 0.85943269933448<br/> -0.00026521067844<br/> 0.00045376919071</font></p><font face="Verdana">
<p><br/>bint =</p>
<p> 0.68868335685722 1.03018204181175<br/> -0.00033716969449 -0.00019325166239<br/> -0.00002536250203 0.00093290088345</p>
<p><br/>r =</p>
<p> 0.24499009043804<br/> 0.24298645516293<br/> 0.22596382129192<br/> 0.26974523197013<br/> 0.26938499769464<br/> 0.20134048077000<br/> 0.26428218646615<br/> 0.24546068238966<br/> 0.24204749612136<br/> 0.26329869754702<br/> -0.30239364378778<br/> 0.22418882468333<br/> 0.36151397969142<br/> 0.27800877719166<br/> 0.22562971091175<br/> 0.25817997058727<br/> 0.34088284102996<br/> 0.47584435732540<br/> 0.39924147789994<br/> 0.10818014268404<br/> 0.03268403910683<br/> 0.23266006146459<br/> 0.42213189599121<br/> 0.15295625201459<br/> 0.32936275116498<br/> 0.23035596133112<br/> 0.27508838782562<br/> 0.19186969392530<br/> -0.04387393419007<br/> 0.37180169649244<br/> -0.28881576082096<br/> -0.54037252177113<br/> -0.47247370212743<br/> -0.49482518478078<br/> -0.27629228737278<br/> -0.08212896037942<br/> -0.34347303417696<br/> -0.60782985983678<br/> -0.50802211576599<br/> 0.82648437263390<br/> -0.60023746186573<br/> -0.21743324654913<br/> -0.59323300437026<br/> -0.32095218604696<br/> 0.10204363196572<br/> -0.41168153438852<br/> -0.22705964801276<br/> -0.40337580412737<br/> 0.50019536866747<br/> 0.05178812516079<br/> -0.08624980592198<br/> -0.28795869072225<br/> -0.34221336479873<br/> -0.47546878418730<br/> 0.13032287365765<br/> -0.06744638245026<br/> 0.12456342765303<br/> -0.33184299743823<br/> -0.32238525982281<br/> -0.46743958519949</p>
<p><br/>rint =</p>
<p> -0.45268049797649 0.94266067885257<br/> -0.45471901948541 0.94069192981128<br/> -0.47070402952424 0.92263167210809<br/> -0.42749772755413 0.96698819149440<br/> -0.42530394206593 0.96407393745521<br/> -0.49119576109825 0.89387672263825<br/> -0.42929291658125 0.95785728951356<br/> -0.45189766754183 0.94281903232114<br/> -0.45372849228423 0.93782348452696<br/> -0.43273992792445 0.95933732301849<br/> -0.72468928783798 0.11990200026242<br/> -0.47284729549112 0.92122494485777<br/> -0.33268274520904 1.05571070459188<br/> -0.41631507827795 0.97233263266126<br/> -0.47200984810697 0.92326926993047<br/> -0.43768034176985 0.95404028294440<br/> -0.35542375701992 1.03718943907983<br/> -0.21577903322429 1.16746774787510<br/> -0.29583373430114 1.09431669010102<br/> -0.57933084093047 0.79569112629854<br/> -0.65245595836408 0.71782403657773<br/> -0.46476517082366 0.93008529375283<br/> -0.26956573150114 1.11382952348357<br/> -0.53878440595437 0.84469690998355<br/> -0.36446419214936 1.02318969447933<br/> -0.46717750756131 0.92788943022355<br/> -0.41904949253371 0.96922626818495<br/> -0.50456761920479 0.88830700705539<br/> -0.68119689782050 0.59344902944035<br/> -0.32210495077523 1.06570834376012<br/> -0.98555305629226 0.40792153465034<br/> -1.22681878775805 0.14607374421580<br/> -1.16263827940142 0.21769087514656<br/> -1.18559446484527 0.19594409528372<br/> -0.97334318994612 0.42075861520057<br/> -0.77754513466812 0.61328721390927<br/> -1.03962716392182 0.35268109556790<br/> -1.28897250636556 0.07331278669200<br/> -1.19830502970058 0.18226079816860<br/> 0.27837161793377 1.37459712733402<br/> -1.28240289420555 0.08192797047410<br/> -0.91514787090337 0.48028137780510<br/> -1.27825077913241 0.09178477039189<br/> -1.01775836842798 0.37585399633405<br/> -0.58172439829518 0.78581166222663<br/> -1.10573438258273 0.28237131380568<br/> -0.92471005188033 0.47059075585482<br/> -1.09775532080452 0.29100371254977<br/> -0.13489900871102 1.13528974604595<br/> -0.63713063617393 0.74070688649551<br/> -0.78029430110123 0.60779468925727<br/> -0.98542624488175 0.40950886343724<br/> -1.03853703868559 0.35411030908814<br/> -1.16731658432257 0.21637901594796<br/> -0.55440318902529 0.81504893634058<br/> -0.76249963681796 0.62760687191744<br/> -0.55996646809892 0.80909332340498<br/> -1.02839058696323 0.36470459208677<br/> -1.01901501263124 0.37424449298562<br/> -1.15831993205002 0.22344076165104</p>
<p><br/>s =</p>
<p> 0.53107910778697 32.27784221875193 0.00000000042300 0.12340023479290</font></p></font>
<p>得到回归方程:</p>
<p><font face="Verdana">sorh=0.85943269933448-0.00026521067844.*ca+0.00045376919071.*k</font></p>
<p>这就是我们需要的模型。</p>
<p>然后判断表二中的30个病例。</p>
<p>matlab代码如下:</p>
<p><font face="Verdana">ca=;<br/>k=;<br/>sorh=0.85943269933448-0.00026521067844.*ca+0.00045376919071.*k</font></p>
<p>运行结果如下:</p>
<p><font face="Verdana">sorh =</font></p>
<p><font face="Verdana"> Columns 1 through 5 </font></p>
<p><font face="Verdana"> 0.85499433533545 0.79918204271064 0.56425453206328 0.83402879546814 0.74658007076821</font></p>
<p><font face="Verdana"> Columns 6 through 10 </font></p>
<p><font face="Verdana"> 0.67069889230140 0.77130142136514 0.67967325412561 0.82020036114713 0.38397110012925</font></p>
<p><font face="Verdana"> Columns 11 through 15 </font></p>
<p><font face="Verdana"> 1.13531091637190 0.89223866315360 0.82227702046971 0.29879868302170 0.45165511738824</font></p>
<p><font face="Verdana"> Columns 16 through 20 </font></p>
<p><font face="Verdana"> 0.70253827538617 0.47247370213094 0.49482518478434 0.59924224155178 0.27184534930907</font></p>
<p><font face="Verdana"> Columns 21 through 25 </font></p>
<p><font face="Verdana"> 0.09537902075506 0.33448840420565 0.66927020826128 0.52980303692384 0.60023746186819</font></p>
<p><font face="Verdana"> Columns 26 through 30 </font></p>
<p><font face="Verdana"> 0.21725173887874 0.59906763929878 0.32095218605194 -0.10204363195679 0.41172691131176</font></p>
<p>定义:</p>
<p>凡是sorh值大于0.55的为患有肾病,否则为健康</p>
<p>可以从结果中得到30个病例中的患病者。</p>
<p> </p>
<p> </p>
[此贴子已经被作者于2008-8-12 13:57:50编辑过]
页:
[1]