# Отчет Иванов Артём А-03-24 ## 1 Установил в качестве текущей папку TEMA2\ ![Скриншот выбора текущей папки](s1.PNG) *Прочитал данные из файла dan_vuz.txt командой ***matlab >> XX=load('dan_vuz.txt') XX = Columns 1 through 7: 1.9700e+02 1.3717e+06 8.0000e+00 4.0000e+00 2.0000e+00 5.3000e+01 7.0000e+00 1.9800e+02 7.3820e+05 4.0000e+00 5.0000e+00 6.0000e+00 7.1000e+01 5.0000e+00 1.9900e+02 2.4167e+05 1.0000e+00 0 1.0000e+00 5.0000e+00 5.0000e+00 2.0000e+02 6.1990e+05 3.0000e+00 1.0000e+00 1.0000e+00 2.8000e+01 0 2.0100e+02 1.7553e+06 7.0000e+00 1.0000e+01 6.0000e+00 5.4000e+01 7.0000e+00 2.0200e+02 5.7215e+05 0 2.0000e+00 2.0000e+00 2.2000e+01 7.0000e+00 2.0300e+02 1.4322e+06 0 6.0000e+00 1.1000e+01 3.0000e+01 8.0000e+00 2.0400e+02 1.3277e+06 5.0000e+00 2.0000e+00 0 7.8000e+01 3.0000e+00 2.0500e+02 4.9080e+05 7.0000e+00 0 0 2.0000e+01 0 2.0600e+02 6.3472e+05 1.0000e+00 1.0000e+00 1.0000e+00 1.2000e+01 3.0000e+00 2.0700e+02 7.4157e+05 8.0000e+00 4.0000e+00 3.0000e+00 3.3000e+01 1.0000e+00 ``` * Проверил размерность матрицы ХХ ```matlab >> size(XX) ans = 290 15 ``` Получил данные о 15 вузах *Выделил в отдельную матрицу данные о показателях результативности ```matlab >> X=XX(:,3:13) X = 8 4 2 53 7 76 13 0 1 5 5 4 5 6 71 5 36 13 0 4 0 0 1 0 1 5 5 2 0 0 2 0 0 3 1 1 28 0 24 0 0 0 3 0 7 10 6 54 7 46 2 0 3 2 0 0 2 2 22 7 17 0 0 0 2 1 0 6 11 30 8 88 0 0 11 14 2 5 2 0 78 3 40 6 0 10 9 0 7 0 0 20 0 30 12 0 6 1 15 1 1 1 12 3 13 3 0 1 2 0 8 4 3 33 1 37 8 0 3 6 3 9 5 6 24 8 36 5 0 1 4 14 ``` *Рассчитал матрицу корреляций между показателями результативности: ```matlab >> R=corr(X) R = Columns 1 through 7: 1.0000e+00 4.4320e-01 4.5229e-01 4.4779e-01 3.8123e-01 4.6516e-01 3.1487e-01 4.4320e-01 1.0000e+00 8.5319e-01 8.5331e-01 8.6240e-01 8.5436e-01 5.5145e-01 4.5229e-01 8.5319e-01 1.0000e+00 8.4660e-01 8.8651e-01 9.0335e-01 5.5091e-01 4.4779e-01 8.5331e-01 8.4660e-01 1.0000e+00 8.7038e-01 9.3849e-01 7.0924e-01 3.8123e-01 8.6240e-01 8.8651e-01 8.7038e-01 1.0000e+00 9.3605e-01 5.7668e-01 4.6516e-01 8.5436e-01 9.0335e-01 9.3849e-01 9.3605e-01 1.0000e+00 6.3033e-01 3.1487e-01 5.5145e-01 5.5091e-01 7.0924e-01 5.7668e-01 6.3033e-01 1.0000e+00 6.5579e-02 2.5082e-02 3.8840e-03 4.9500e-02 3.7562e-02 4.7121e-02 7.9448e-02 2.9153e-01 4.2348e-01 4.4396e-01 4.5873e-01 3.8322e-01 4.7592e-01 4.1878e-01 4.8811e-01 8.2170e-01 7.8358e-01 8.5183e-01 7.7266e-01 8.3810e-01 6.2936e-01 3.9815e-01 2.6183e-01 2.6408e-01 3.4420e-01 1.8751e-01 3.3118e-01 2.8287e-01 Columns 8 through 11: 6.5579e-02 2.9153e-01 4.8811e-01 3.9815e-01 2.5082e-02 4.2348e-01 8.2170e-01 2.6183e-01 3.8840e-03 4.4396e-01 7.8358e-01 2.6408e-01 4.9500e-02 4.5873e-01 8.5183e-01 3.4420e-01 3.7562e-02 3.8322e-01 7.7266e-01 1.8751e-01 4.7121e-02 4.7592e-01 8.3810e-01 3.3118e-01 7.9448e-02 4.1878e-01 6.2936e-01 2.8287e-01 1.0000e+00 4.7985e-02 5.6462e-02 1.3662e-01 4.7985e-02 1.0000e+00 6.2616e-01 4.5537e-01 5.6462e-02 6.2616e-01 1.0000e+00 3.8799e-01 1.3662e-01 4.5537e-01 3.8799e-01 1.0000e+00 ``` * Пусть для исследования результативности применяется метод главных компонент, основу которого составляет получение собственных значений и собственных векторов от квадратичной формы: ```matlab >> [vect,lambda]=eig(X'*X) vect = ``` *В матрице lambda собственные значения расположены в возрастающем порядке на диагонали. Выделил их в отдельный вектор: ```matlab >> Sobst=diag(lambda) Sobst = 2.2947e+01 1.9317e+03 2.5940e+03 3.4573e+03 5.6252e+03 8.6721e+03 1.8915e+04 4.7523e+04 5.7484e+04 2.2565e+05 7.4946e+06 ``` *Представил их на экране с заголовком: ```matlab >> fprintf('Eigenvalues:\n %f \n',Sobst) Eigenvalues: 22.946585 Eigenvalues: 1931.665464 Eigenvalues: 2593.979592 Eigenvalues: 3457.339562 Eigenvalues: 5625.151474 Eigenvalues: 8672.065947 Eigenvalues: 18914.627989 Eigenvalues: 47522.678185 Eigenvalues: 57483.681267 Eigenvalues: 225653.068540 Eigenvalues: 7494628.795394 >> fprintf('\n') ``` *Выделил наибольшее собственное значение и соответствующий ему собственный вектор: ```matlab >> SobMax=Sobst(end) SobMax = 7.4946e+06 >> GlComp=vect(:,end) GlComp = 3.5306e-02 4.6772e-02 4.8953e-02 6.1556e-01 2.4277e-01 7.3685e-01 9.5893e-02 1.6945e-04 1.7911e-02 5.9523e-02 1.7425e-02 ``` *Рассчитал долю информации о результативности НИР, содержащуюся в главной компоненте и отобразил ее на экране: ```matlab >> Delt=100*SobMax/sum(Sobst) Delt = 95.273 >> fprintf('Delta= %d \n ',round(Delt)) Delta= 95 ``` *С использованием главной компоненты рассчитал оценки обобщенной результативности в каждом из представленных в матрице вузов и отобразил ее с указанием кода вуза: ```matlab >> Res=X*GlComp Res = 9.2542e+01 7.3433e+01 5.8855e+00 >> fprintf(' Results \n ') Results >> fprintf('%d %f \n ',[XX(:,1),Res] ') 197 92.541636 198 73.432513 199 5.885468 ``` *Сохранил вектор оценок результативности в отдельном бинарном (mat) файле: ```matlab >> save res.mat Res -mat ``` *Представил распределение оценок результативности в виде гистограммы с 20 интервалами и с обозначением осей: ```matlab >> hist(Res,20) >> xlabel('Results ') >> ylabel('Number of Unis ') ``` *Сохранил изображение гистограммы в файле формата jpg ```matlab >> saveas(gcf, 'Hist.jpg ', 'jpg ') ``` *Рассчитал и отобразил оценку корреляции обобщенной результативности с финансированием, выделенным на проведение НИР: ```matlab >> CorFin=corr(Res,XX(:,2)) CorFin = 0.8437 >> fprintf('Correlation of Results and Money = %f \n',CorFin) Correlation of Results and Money = 0.843710 ```