diff --git a/task.md b/task.md new file mode 100644 index 0000000..2b729f0 --- /dev/null +++ b/task.md @@ -0,0 +1,76 @@ +# Общее контрольное задание по теме 1 + +Бакайкин Константин, А-03-24 + +## Задание 1 + +Рассчитать главную компоненту, представляющую показатель обобщенного кадрового обеспечения НИР в каждом вузе + +## Решение 1 + +```matlab +>>fp=fopen('prtcl_task.txt ','w');%открытие файла +>>XX=load('dan_vuz.txt');%считывание данных +>>size(XX);%размер матрицы +>>X=XX(:,14:15);%создание новой матрицы по заданным параметрам +>>[vect, lambda] = eig(X' * X);%расчет собственных векторов и собственных значений матрицы X'*X +>>Sobst = diag(lambda);%извлечение собственных значений из диагональной матрицы lambda в вектор +>>SobMax=Sobst(end);%выделение наибольшего собственного значения (последний элемент вектора) +>>GlComp=vect(:,end);%выделение соответствующего наибольшему собственному значению собственного вектора (главной компоненты) +``` + +## Задание 2 + +Определить и отобразить долю представле в этом показателе информации о кадрах + +## Решение 2 + +```matlab +>>Delt=100*SobMax/sum(Sobst);%расчет доли информации, содержащейся в главной компоненте +>>fprintf(fp,'Delta= %d \n ',round(Delt));%запись значения доли информации в файл + +``` + + +## Задание 3 + +Рассчитать и вывести в некоторый текстовый файл значения показателя для каждого вуза + +## Решение 3 + +```matlab +>>Res=X*GlComp;%расчет оценок результативности для каждого вуза +>>fprintf(fp, '%d %f\n', [XX(:,1)'; Res']);%запись в файл кодов вузов и соответствующих им оценок результативности +>>save res_task.mat Res -mat;%сохранение вектора оценок результативности в бинарный файл + +``` + +## Задание 4 + +Рассчитать и отобразить корреляции этого показателя с финансированием НИР, + +## Решение 4 + +```matlab +>>CorFin=corr(Res,XX(:,2));%расчет коэффициента корреляции +>>fprintf(fp,'Correlation of Results and Money = %f \n', CorFin);% Запись значения корреляции в файл + +``` + +## Задание 5 + +Рассчитать и отобразить корреляцию между показателями результативности и кадрового обеспечения. + +## Решение 5 + +```matlab +>>X2 = XX(:, 3:13);%создание новой матрицы по заданным параметрам +>>[vect2, lambda2] = eig(X2' * X2);%расчет собственных векторов и собственных значений матрицы X2'*X2 +>>Sobst2 = diag(lambda2);%извлечение собственных значений из диагональной матрицы lambda2 в вектор +>>GlComp2 = vect2(:, end);%выделение соответствующего наибольшему собственному значению собственного вектора (главной компоненты2) +>>Res2 = X2 * GlComp2;%расчет оценок результативности для каждого вуза +>>CorFin2 = corr(Res2, Res);%расчет коэффициента корреляции +>>fprintf(fp, 'Correlation of Results and Staff = %f\n', CorFin2);% Запись в файл корреляции между результативностью и кадровым обеспечением +>>fclose(fp);%закрытие файла + +``` \ No newline at end of file diff --git a/ТЕМА2/Prog2.m b/ТЕМА2/Prog2.m new file mode 100644 index 0000000..2f2e0a5 --- /dev/null +++ b/ТЕМА2/Prog2.m @@ -0,0 +1,23 @@ +fp=fopen('prtcl_task.txt ','w');%открытие файла +XX=load('dan_vuz.txt');%считывание данных +size(XX);%размер матрицы +X=XX(:,14:15);%создание новой матрицы по заданным параметрам +[vect, lambda] = eig(X' * X);%расчет собственных векторов и собственных значений матрицы X'*X +Sobst = diag(lambda);%извлечение собственных значений из диагональной матрицы lambda в вектор +SobMax=Sobst(end);%выделение наибольшего собственного значения (последний элемент вектора) +GlComp=vect(:,end);%выделение соответствующего наибольшему собственному значению собственного вектора (главной компоненты) +Delt=100*SobMax/sum(Sobst);%расчет доли информации, содержащейся в главной компоненте +fprintf(fp,'Delta= %d \n ',round(Delt));%запись значения доли информации в файл +Res=X*GlComp;%расчет оценок результативности для каждого вуза +fprintf(fp, '%d %f\n', [XX(:,1)'; Res']);%запись в файл кодов вузов и соответствующих им оценок результативности +save res_task.mat Res -mat;%сохранение вектора оценок результативности в бинарный файл +CorFin=corr(Res,XX(:,2));%расчет коэффициента корреляции +fprintf(fp,'Correlation of Results and Money = %f \n', CorFin);% Запись значения корреляции в файл +X2 = XX(:, 3:13);%создание новой матрицы по заданным параметрам +[vect2, lambda2] = eig(X2' * X2);%расчет собственных векторов и собственных значений матрицы X2'*X2 +Sobst2 = diag(lambda2);%извлечение собственных значений из диагональной матрицы lambda2 в вектор +GlComp2 = vect2(:, end);%выделение соответствующего наибольшему собственному значению собственного вектора (главной компоненты2) +Res2 = X2 * GlComp2;%расчет оценок результативности для каждого вуза +CorFin2 = corr(Res2, Res);%расчет коэффициента корреляции +fprintf(fp, 'Correlation of Results and Staff = %f\n', CorFin2);% Запись в файл корреляции между результативностью и кадровым обеспечением +fclose(fp);%закрытие файла diff --git a/ТЕМА2/prtcl_task.txt b/ТЕМА2/prtcl_task.txt new file mode 100644 index 0000000..1d0b0fe --- /dev/null +++ b/ТЕМА2/prtcl_task.txt @@ -0,0 +1,293 @@ +Delta= 96 + 197 -128.127901 +198 -51.855169 +199 -12.312620 +200 -21.248748 +201 -155.976732 +202 -20.263078 +203 -131.294652 +204 -61.915418 +205 -32.577762 +206 -38.695330 +207 -78.168654 +208 -99.344048 +209 -58.186607 +210 -6.190923 +211 -137.972217 +212 -3.166751 +213 -231.832047 +214 -20.405657 +216 -14.917310 +217 -61.776967 +218 -10.693599 +219 -92.167456 +220 -17.167616 +221 -78.447620 +222 -47.702748 +223 -81.756951 +224 -48.409452 +225 -160.844114 +226 -78.451749 +227 -80.844634 +228 -94.493180 +229 -31.311061 +230 -40.949765 +231 -27.653539 +232 -1.547731 +233 -137.135319 +234 -81.620564 +235 -188.438749 +236 -23.146734 +237 -34.687553 +238 -60.931812 +239 -161.469207 +240 -104.482139 +241 -419.834801 +242 -29.197142 +245 -5.276542 +246 -36.585539 +247 -6.683758 +248 -3.588296 +252 -162.605713 +253 -8.583808 +256 -24.272919 +257 -19.346633 +258 -12.172105 +259 -23.922664 +261 -80.632830 +264 -3.728811 +267 -10.202829 +268 -53.967025 +273 -41.369246 +275 -5.066802 +296 -6.683758 +304 -22.374933 +305 -41.371310 +311 -3.095461 +318 -37.432758 +322 -10.834115 +325 -32.573633 +326 -133.746442 +329 -22.444159 +330 -38.487654 +334 -22.796478 +335 -84.084739 +336 -121.224082 +339 -121.303629 +340 -305.911313 +341 -113.980328 +342 -77.040405 +343 -10.836179 +346 -4.502677 +347 -126.431399 +348 -215.218234 +349 -185.815480 +352 -296.781958 +356 -56.213202 +357 -22.444159 +362 -456.892533 +365 -48.197647 +366 -54.948566 +371 -386.919169 +372 -65.640101 +373 -5.769377 +376 -172.519255 +377 -121.653884 +379 -324.140018 +381 -259.422554 +383 -16.674781 +387 -0.773865 +388 -126.016046 +389 -104.480075 +391 -262.430212 +392 -36.371670 +393 -23.289314 +394 -418.075265 +395 0.000000 +399 -58.958408 +410 -168.438123 +412 -331.402349 +413 -3.588296 +414 -119.116355 +441 -9.569478 +446 -139.243046 +448 -95.548076 +451 -37.921465 +456 -36.094768 +465 -12.874680 +466 -181.031773 +467 -44.045226 +472 -78.592264 +476 -61.422583 +477 -74.863452 +484 -23.218024 +1001 -10.624374 +1002 -71.975668 +1004 -211.994643 +1017 -81.759015 +1030 -59.593822 +1034 -20.474882 +1035 -53.402900 +1037 -12.381845 +1038 -19.419987 +1039 -210.577107 +1041 -136.426551 +1044 -6.050407 +1 -12.876744 +2 -245.348334 +3 -32.225442 +4 -5.136027 +6 -40.458994 +7 -217.055252 +8 -105.467810 +9 -45.588829 +10 -113.972071 +11 -85.135506 +12 -44.888317 +13 -231.202825 +14 -1382.852725 +15 -94.136732 +16 -330.540681 +17 -7.809943 +18 -3.800101 +19 -233.320873 +20 -194.264966 +21 -14.774731 +22 -15.127051 +23 -127.136039 +26 -58.473830 +28 -4.362162 +29 -107.365796 +33 -178.435340 +34 -62.479543 +35 -2.954946 +36 -191.385438 +37 -304.864674 +38 -29.199206 +40 -9.286384 +41 -2.814431 +42 -74.511132 +43 -19.558438 +44 -42.149304 +45 -6.190923 +51 -100.684102 +52 -27.791990 +53 -68.886399 +54 -103.076988 +55 -66.772479 +56 -69.937166 +57 -255.762968 +58 -9.145869 +59 -46.505273 +60 -86.897106 +62 -52.138264 +63 -508.988406 +64 -65.363200 +65 -142.766245 +66 -436.110743 +67 -79.928190 +68 -11.538754 +69 -52.981354 +71 -12.381845 +72 -110.045904 +73 -36.870698 +74 -2.321596 +75 -15.691175 +76 -128.545318 +77 -472.814091 +78 -209.119243 +79 -14.846020 +80 -36.447088 +81 -185.398063 +82 -23.289314 +84 -8.443293 +85 -84.711897 +86 -7.738653 +87 -16.886586 +88 -14.703441 +89 -127.637130 +90 -23.358539 +91 -66.910930 +92 -85.276022 +93 -68.532015 +94 -75.425513 +95 -16.955812 +96 -58.536863 +97 -6.964788 +99 -11.047984 +100 -6.190923 +101 -43.063685 +102 -30.323327 +103 -26.594515 +104 -2.321596 +105 -25.753489 +107 -6.964788 +108 -12.455199 +109 -6.964788 +110 -0.633350 +111 -4.362162 +112 -2.321596 +113 -6.543243 +114 -9.850509 +115 -28.070956 +116 -4.362162 +118 -13.508030 +119 -10.202829 +120 -3.869327 +121 -3.728811 +122 -18.857926 +123 -23.146734 +124 -13.791125 +132 -7.738653 +133 -4.362162 +134 -8.090973 +135 -51.922330 +136 -11.750559 +137 -14.915246 +138 -6.262212 +139 -3.588296 +140 -5.417057 +141 -14.353185 +142 -210.512010 +143 -10.764889 +144 -7.738653 +146 -13.929576 +147 -19.631792 +148 -53.679802 +149 -7.036078 +150 -4.643192 +151 -9.779219 +152 -4.362162 +153 -6.964788 +154 -10.060249 +162 -12.312620 +166 -20.334367 +167 -17.238906 +168 -9.709993 +170 -2.321596 +171 -95.831170 +172 -7.598138 +173 -12.734165 +174 -7.809943 +175 -8.512519 +176 -3.728811 +177 -23.218024 +178 -2.181081 +179 0.000000 +180 -1.547731 +181 -6.190923 +182 -8.302778 +183 -6.262212 +184 -9.638704 +185 -184.221231 +186 -6.190923 +187 -11.679269 +188 -68.318146 +189 -216.520026 +190 -20.191788 +191 -43.688778 +192 -26.946835 +193 -2.321596 +194 -0.633350 +Correlation of Results and Money = -0.913020 +Correlation of Results and Staff = -0.927138 diff --git a/ТЕМА2/res_task.mat b/ТЕМА2/res_task.mat new file mode 100644 index 0000000..2b99955 Binary files /dev/null and b/ТЕМА2/res_task.mat differ