ответвлено от main/it-labs
76 строки
4.1 KiB
Markdown
76 строки
4.1 KiB
Markdown
# Общее контрольное задание по теме 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);%закрытие файла
|
|
|
|
``` |