Сравнить коммиты
1 Коммитов
| Автор | SHA1 | Дата | |
|---|---|---|---|
| eb4b78d4a5 |
37
README.md
@@ -2,42 +2,53 @@
|
|||||||
|
|
||||||
[Репозиторий с методическими указаниями и заданиями.](http://uit.mpei.ru/git/main/it)
|
[Репозиторий с методическими указаниями и заданиями.](http://uit.mpei.ru/git/main/it)
|
||||||
|
|
||||||
## Работа с Git
|
|
||||||
|
|
||||||
**Работы проверяются только после того, как закоммичены по правилам ниже.**
|
**Работы проверяются только после того, как закоммичены по правилам ниже.**
|
||||||
|
|
||||||
|
## Работа с Git
|
||||||
|
|
||||||
[Лабораторная работа про Git второго семестра][gitlab]
|
[Лабораторная работа про Git второго семестра][gitlab]
|
||||||
поможет вспомнить, как работать с Git.
|
поможет вспомнить, как работать с Git.
|
||||||
|
|
||||||
[gitlab]: http://uit.mpei.ru/git/main/cs/src/branch/main/labs/lab02
|
[gitlab]: http://uit.mpei.ru/git/main/cs/src/branch/main/labs/lab02
|
||||||
|
|
||||||
1. В начале семестра
|
1. Один раз в начале семестра
|
||||||
создать на сервере копию этого репозитория («форкнуть» его), нажав *Fork*.
|
создать на сервере копию этого репозитория («форкнуть» его), нажав *Fork*.
|
||||||
Получится репозиторий-форк `http://uit.mpei.ru/git/IvanovII/it-labs`,
|
Получится репозиторий-форк `http://uit.mpei.ru/git/IvanovII/it-labs`,
|
||||||
где `IvanovII` — ваше имя пользователя.
|
где `IvanovII` — ваше имя пользователя.
|
||||||
|
|
||||||
2. В начале каждого занятия:
|
2. В начале каждого занятия:
|
||||||
|
|
||||||
Клонировать свой форк на рабочий стол
|
1. Настроить Git, чтобы не было проблем с вводом пароля:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
git config --global credential.helper ""
|
||||||
|
git config --global core.askpass ""
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Клонировать свой форк на рабочий стол
|
||||||
(`IvanovII` заменить на свое имя пользователя):
|
(`IvanovII` заменить на свое имя пользователя):
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
git clone http://uit.mpei.ru/git/IvanovII/it-labs.git
|
git clone http://uit.mpei.ru/git/IvanovII/it-labs.git
|
||||||
```
|
```
|
||||||
|
|
||||||
Перебазировать свой форк на исходный репозиторий ("апстрим"):
|
Не клонируйте на диск L (students) в компьютерном классе —
|
||||||
|
не будет работать Git.
|
||||||
|
|
||||||
|
Не клонируйте в папку, в пути к которой есть русские буквы и пробелы —
|
||||||
|
не будет работать Octave.
|
||||||
|
|
||||||
|
3. Перейти в клонированную папку и настроить имя пользователя и почту,
|
||||||
|
чтобы у коммитов был правильный автор:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
# Первую команду нужно запускать только один раз,
|
cd it-labs
|
||||||
# иначе будет ошибка "error: remote upstream already exists".
|
git config user.name "Иванов И. И."
|
||||||
git remote add upstream http://uit.mpei.ru/git/main/it-labs.git
|
git config user.email "IvanovII@mpei.ru"
|
||||||
git fetch upstream
|
|
||||||
git stash push
|
|
||||||
git rebase upstream/main
|
|
||||||
git stash pop
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Перебазировать нужно, чтобы подтянуть из исходного репозитория обновления.
|
Если вы работаете со своего компьютера, а не с лабораторного,
|
||||||
|
то все эти шаги нужно сделать один раз, а не каждое занятие.
|
||||||
|
|
||||||
3. После того, как отчет написан, закоммитить его как `TEMAn/report.md`.
|
3. После того, как отчет написан, закоммитить его как `TEMAn/report.md`.
|
||||||
|
|
||||||
|
|||||||
52
ТЕМА1/Perem
@@ -1,52 +0,0 @@
|
|||||||
# Created by Octave 8.3.0, Wed Feb 11 12:24:54 2026 GMT <unknown@w10prog-66>
|
|
||||||
# name: C
|
|
||||||
# type: double_range
|
|
||||||
# base, limit, increment
|
|
||||||
4 27 1
|
|
||||||
|
|
||||||
|
|
||||||
# name: D
|
|
||||||
# type: matrix
|
|
||||||
# rows: 4
|
|
||||||
# columns: 6
|
|
||||||
4 8 12 16 20 24
|
|
||||||
5 9 13 17 21 25
|
|
||||||
6 10 14 18 22 26
|
|
||||||
7 11 15 19 23 27
|
|
||||||
|
|
||||||
|
|
||||||
# name: D1
|
|
||||||
# type: scalar
|
|
||||||
22
|
|
||||||
|
|
||||||
|
|
||||||
# name: D2
|
|
||||||
# type: matrix
|
|
||||||
# rows: 1
|
|
||||||
# columns: 3
|
|
||||||
18 22 26
|
|
||||||
|
|
||||||
|
|
||||||
# name: D3
|
|
||||||
# type: matrix
|
|
||||||
# rows: 2
|
|
||||||
# columns: 3
|
|
||||||
13 17 21
|
|
||||||
14 18 22
|
|
||||||
|
|
||||||
|
|
||||||
# name: D4
|
|
||||||
# type: matrix
|
|
||||||
# rows: 1
|
|
||||||
# columns: 5
|
|
||||||
19 20 21 22 23
|
|
||||||
|
|
||||||
|
|
||||||
# name: D5
|
|
||||||
# type: matrix
|
|
||||||
# rows: 2
|
|
||||||
# columns: 3
|
|
||||||
6 14 26
|
|
||||||
7 15 27
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
warning('off','all')
|
|
||||||
C=4:27
|
|
||||||
D=reshape(C,[],6)
|
|
||||||
D1=D(3,5)
|
|
||||||
D2=D(3,4:end)
|
|
||||||
D3=D(2:3,3:5)
|
|
||||||
D4=D(16:20)
|
|
||||||
D5=D(3:4,[1,3,6])
|
|
||||||
Двоичные данные
ТЕМА1/assets/figure0.png
|
До Ширина: | Высота: | Размер: 2.9 KiB |
Двоичные данные
ТЕМА1/assets/figure1.png
|
До Ширина: | Высота: | Размер: 53 KiB |
Двоичные данные
ТЕМА1/assets/figure2.png
|
До Ширина: | Высота: | Размер: 27 KiB |
Двоичные данные
ТЕМА1/assets/figure3.png
|
До Ширина: | Высота: | Размер: 24 KiB |
Двоичные данные
ТЕМА1/assets/figure4.png
|
До Ширина: | Высота: | Размер: 16 KiB |
Двоичные данные
ТЕМА1/assets/figure5.png
|
До Ширина: | Высота: | Размер: 48 KiB |
Двоичные данные
ТЕМА1/assets/figure6.png
|
До Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
ТЕМА1/assets/figure7.png
|
До Ширина: | Высота: | Размер: 27 KiB |
Двоичные данные
ТЕМА1/assets/figure8.png
|
До Ширина: | Высота: | Размер: 13 KiB |
568
ТЕМА1/report.md
@@ -1,568 +0,0 @@
|
|||||||
# Отчет по теме 1
|
|
||||||
|
|
||||||
Мокеев Никита, А-03-24
|
|
||||||
|
|
||||||
## 1 Изучение размещения компонентов графического интерфейса и главного меню среды GNU Octave
|
|
||||||
|
|
||||||
## 2 Настройка текущего каталога
|
|
||||||
|
|
||||||
Нажал на окно рядом с *Текущая папка:* и установил путь к папке ТЕМА1:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## 3 Настройка командного окна
|
|
||||||
|
|
||||||
Нажал на "Окно" и отметил галочками нужные закладки:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## 4 Установка путей
|
|
||||||
|
|
||||||
В главном меню нажал "Правка"+"Установить путь" и добавил пути к папкам ТЕМА1 и ТЕМА2:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## 5 Изучение работы со справкой
|
|
||||||
|
|
||||||
- "Справка"+"Документация"+"На диске" -> GNU Octave Manual -> Function Index
|
|
||||||
- Команда help. Пример работы команды:
|
|
||||||
```matlab
|
|
||||||
>> help randn
|
|
||||||
'randn' is a built-in function from the file libinterp/corefcn/rand.cc
|
|
||||||
|
|
||||||
-- X = randn (N)
|
|
||||||
-- X = randn (M, N, ...)
|
|
||||||
-- X = randn ([M N ...])
|
|
||||||
-- X = randn (..., "single")
|
|
||||||
-- X = randn (..., "double")
|
|
||||||
-- V = randn ("state")
|
|
||||||
-- randn ("state", V)
|
|
||||||
-- randn ("state", "reset")
|
|
||||||
-- V = randn ("seed")
|
|
||||||
-- randn ("seed", V)
|
|
||||||
-- randn ("seed", "reset")
|
|
||||||
Return a matrix with normally distributed random elements having
|
|
||||||
zero mean and variance one.
|
|
||||||
|
|
||||||
The arguments are handled the same as the arguments for ‘rand’.
|
|
||||||
|
|
||||||
By default, ‘randn’ uses the Marsaglia and Tsang "Ziggurat
|
|
||||||
technique" to transform from a uniform to a normal distribution.
|
|
||||||
|
|
||||||
The class of the value returned can be controlled by a trailing
|
|
||||||
"double" or "single" argument. These are the only valid classes.
|
|
||||||
|
|
||||||
Reference: G. Marsaglia and W.W. Tsang, ‘Ziggurat Method for
|
|
||||||
Generating Random Variables’, J. Statistical Software, vol 5, 2000,
|
|
||||||
<https://www.jstatsoft.org/v05/i08/>
|
|
||||||
|
|
||||||
See also: rand, rande, randg, randp.
|
|
||||||
|
|
||||||
Additional help for built-in functions and operators is
|
|
||||||
available in the online version of the manual. Use the command
|
|
||||||
'doc <topic>' to search the manual index.
|
|
||||||
|
|
||||||
Help and information about Octave is also available on the WWW
|
|
||||||
at https://www.octave.org and https://octave.discourse.group/c/help/
|
|
||||||
```
|
|
||||||
|
|
||||||
- Для дополнительно подгружанемых пакетов "Справка"+"Пакеты Octave"
|
|
||||||
|
|
||||||
## 6 Создание матриц и векторов
|
|
||||||
|
|
||||||
- Создал матрицу A со случайными, нормально распределенными элементами, с 4 строками и 6 столбцами:
|
|
||||||
```matlab
|
|
||||||
>> A=randn(4,6)
|
|
||||||
A =
|
|
||||||
|
|
||||||
-8.8652e-04 -1.0071e+00 2.6421e+00 3.8636e-01 -7.3431e-01 -1.5501e+00
|
|
||||||
-4.9683e-01 1.0487e+00 1.1767e+00 1.4078e+00 5.8390e-01 -6.8323e-01
|
|
||||||
-1.3548e+00 6.6523e-01 -1.3285e-01 6.6288e-01 4.4201e-01 -1.9994e-01
|
|
||||||
-8.7788e-01 7.6938e-01 -5.0126e-01 5.2538e-01 -2.4666e-01 2.1566e-01
|
|
||||||
```
|
|
||||||
|
|
||||||
- Создал матрицу B 4 на 7 со случайными элементами, равномерно распределенными в диапазоне от 0 до 1:
|
|
||||||
```matlab
|
|
||||||
>> B=rand(4,7)
|
|
||||||
B =
|
|
||||||
|
|
||||||
0.7970 0.1010 0.7218 0.3126 0.4221 0.6251 0.7380
|
|
||||||
0.7449 0.2626 0.9508 0.9491 0.7637 0.5634 0.2042
|
|
||||||
0.1526 0.4856 0.1360 0.3862 0.6602 0.1868 0.8259
|
|
||||||
0.3730 0.9549 0.7369 0.6055 0.6335 0.9687 0.4128
|
|
||||||
```
|
|
||||||
|
|
||||||
- Создал вектор C с целыми числами от 4 до 27:
|
|
||||||
```matlab
|
|
||||||
>> C=4:27
|
|
||||||
C =
|
|
||||||
|
|
||||||
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
|
||||||
```
|
|
||||||
|
|
||||||
- Создал символьный вектор H:
|
|
||||||
```matlab
|
|
||||||
>> H='This is a symbols vector'
|
|
||||||
H = This is a symbols vector
|
|
||||||
```
|
|
||||||
|
|
||||||
- Создал вектор-строку L с 2 комплексными элемантами:
|
|
||||||
```matlab
|
|
||||||
>> L=[-2+23.1j,3-5.6j]
|
|
||||||
L =
|
|
||||||
|
|
||||||
-2.0000 + 23.1000i 3.0000 - 5.6000i
|
|
||||||
```
|
|
||||||
|
|
||||||
## 7 Выполнение операций
|
|
||||||
|
|
||||||
- Преобразование матрицы C в матрицу с 6 столбцами:
|
|
||||||
```matlab
|
|
||||||
>> D=reshape(C,[],6)
|
|
||||||
D =
|
|
||||||
|
|
||||||
4 8 12 16 20 24
|
|
||||||
5 9 13 17 21 25
|
|
||||||
6 10 14 18 22 26
|
|
||||||
7 11 15 19 23 27
|
|
||||||
```
|
|
||||||
|
|
||||||
- Матричное перемножение B и A с транспонированием матрицы B:
|
|
||||||
```matlab
|
|
||||||
>> E=B'*A
|
|
||||||
E =
|
|
||||||
|
|
||||||
-0.905003 0.366963 2.775023 1.653730 -0.174901 -1.694415
|
|
||||||
-1.626754 1.231418 0.032795 1.232379 0.058296 -0.227191
|
|
||||||
-1.304200 0.927556 2.638398 2.094717 -0.096503 -1.636723
|
|
||||||
-1.526554 1.403175 1.587962 2.031026 0.345964 -1.079674
|
|
||||||
-1.830334 1.302351 1.608475 2.008629 0.271495 -1.171358
|
|
||||||
-1.383938 0.830841 1.804013 1.667391 -0.286397 -1.182251
|
|
||||||
-1.583318 0.337804 1.873541 1.336895 -0.159519 -1.359576
|
|
||||||
```
|
|
||||||
|
|
||||||
- Создание матрицы путём "горизонтального" соединения матриц A и B:
|
|
||||||
```matlab
|
|
||||||
>> F=[A,B]
|
|
||||||
F =
|
|
||||||
|
|
||||||
Columns 1 through 10:
|
|
||||||
|
|
||||||
-8.8652e-04 -1.0071e+00 2.6421e+00 3.8636e-01 -7.3431e-01 -1.5501e+00 7.9703e-01 1.0102e-01 7.2181e-01 3.1263e-01
|
|
||||||
-4.9683e-01 1.0487e+00 1.1767e+00 1.4078e+00 5.8390e-01 -6.8323e-01 7.4488e-01 2.6265e-01 9.5078e-01 9.4908e-01
|
|
||||||
-1.3548e+00 6.6523e-01 -1.3285e-01 6.6288e-01 4.4201e-01 -1.9994e-01 1.5260e-01 4.8561e-01 1.3603e-01 3.8621e-01
|
|
||||||
-8.7788e-01 7.6938e-01 -5.0126e-01 5.2538e-01 -2.4666e-01 2.1566e-01 3.7305e-01 9.5489e-01 7.3688e-01 6.0547e-01
|
|
||||||
|
|
||||||
Columns 11 through 13:
|
|
||||||
|
|
||||||
4.2208e-01 6.2507e-01 7.3803e-01
|
|
||||||
7.6366e-01 5.6337e-01 2.0416e-01
|
|
||||||
6.6017e-01 1.8683e-01 8.2585e-01
|
|
||||||
6.3355e-01 9.6867e-01 4.1280e-01
|
|
||||||
```
|
|
||||||
|
|
||||||
- Поэлементное перемножение матриц А и D:
|
|
||||||
```matlab
|
|
||||||
>> G=A.*D
|
|
||||||
G =
|
|
||||||
|
|
||||||
-3.5461e-03 -8.0569e+00 3.1705e+01 6.1818e+00 -1.4686e+01 -3.7201e+01
|
|
||||||
-2.4841e+00 9.4381e+00 1.5297e+01 2.3933e+01 1.2262e+01 -1.7081e+01
|
|
||||||
-8.1286e+00 6.6523e+00 -1.8598e+00 1.1932e+01 9.7243e+00 -5.1984e+00
|
|
||||||
-6.1452e+00 8.4632e+00 -7.5188e+00 9.9823e+00 -5.6732e+00 5.8229e+00
|
|
||||||
```
|
|
||||||
|
|
||||||
- Поэлементное деление элементов матриц G на 4.5:
|
|
||||||
```matlab
|
|
||||||
>> M=G./4.5
|
|
||||||
M =
|
|
||||||
|
|
||||||
-7.8802e-04 -1.7904e+00 7.0455e+00 1.3737e+00 -3.2636e+00 -8.2670e+00
|
|
||||||
-5.5203e-01 2.0973e+00 3.3993e+00 5.3184e+00 2.7249e+00 -3.7957e+00
|
|
||||||
-1.8064e+00 1.4783e+00 -4.1330e-01 2.6515e+00 2.1610e+00 -1.1552e+00
|
|
||||||
-1.3656e+00 1.8807e+00 -1.6709e+00 2.2183e+00 -1.2607e+00 1.2940e+00
|
|
||||||
```
|
|
||||||
|
|
||||||
- Поэлементное возведение в степень элементов матрицы D:
|
|
||||||
```matlab
|
|
||||||
>> DDD=D.^3
|
|
||||||
DDD =
|
|
||||||
|
|
||||||
64 512 1728 4096 8000 13824
|
|
||||||
125 729 2197 4913 9261 15625
|
|
||||||
216 1000 2744 5832 10648 17576
|
|
||||||
343 1331 3375 6859 12167 19683
|
|
||||||
```
|
|
||||||
|
|
||||||
- Cоздание логической матрицы, совпадающей по размерам с D и с элементами по заданному условию:
|
|
||||||
```matlab
|
|
||||||
>> DL=D>=20
|
|
||||||
DL =
|
|
||||||
|
|
||||||
0 0 0 0 1 1
|
|
||||||
0 0 0 0 1 1
|
|
||||||
0 0 0 0 1 1
|
|
||||||
0 0 0 0 1 1
|
|
||||||
```
|
|
||||||
|
|
||||||
- Превращение матрицы в вектор-столбец:
|
|
||||||
```matlab
|
|
||||||
>> Dstolb=D(:)
|
|
||||||
Dstolb =
|
|
||||||
|
|
||||||
4
|
|
||||||
5
|
|
||||||
6
|
|
||||||
7
|
|
||||||
8
|
|
||||||
9
|
|
||||||
10
|
|
||||||
11
|
|
||||||
12
|
|
||||||
13
|
|
||||||
14
|
|
||||||
15
|
|
||||||
16
|
|
||||||
17
|
|
||||||
18
|
|
||||||
19
|
|
||||||
20
|
|
||||||
21
|
|
||||||
22
|
|
||||||
23
|
|
||||||
24
|
|
||||||
25
|
|
||||||
26
|
|
||||||
27
|
|
||||||
```
|
|
||||||
|
|
||||||
## 8 Изучение стандартных функций
|
|
||||||
|
|
||||||
**Математические функции:**
|
|
||||||
- Корень:
|
|
||||||
```matlab
|
|
||||||
>> B1=sqrt(B)
|
|
||||||
B1 =
|
|
||||||
|
|
||||||
0.8928 0.3178 0.8496 0.5591 0.6497 0.7906 0.8591
|
|
||||||
0.8631 0.5125 0.9751 0.9742 0.8739 0.7506 0.4518
|
|
||||||
0.3906 0.6969 0.3688 0.6215 0.8125 0.4322 0.9088
|
|
||||||
0.6108 0.9772 0.8584 0.7781 0.7960 0.9842 0.6425
|
|
||||||
```
|
|
||||||
- Натуральный логарифм:
|
|
||||||
```matlab
|
|
||||||
>> B2=log(B)
|
|
||||||
B2 =
|
|
||||||
|
|
||||||
-0.226865 -2.292455 -0.325995 -1.162730 -0.862562 -0.469892 -0.303766
|
|
||||||
-0.294538 -1.336935 -0.050472 -0.052261 -0.269637 -0.573819 -1.588831
|
|
||||||
-1.879965 -0.722345 -1.994860 -0.951385 -0.415259 -1.677569 -0.191340
|
|
||||||
-0.986048 -0.046156 -0.305325 -0.501751 -0.456419 -0.031827 -0.884786
|
|
||||||
```
|
|
||||||
- Синус:
|
|
||||||
```matlab
|
|
||||||
>> B3=sin(B)
|
|
||||||
B3 =
|
|
||||||
|
|
||||||
0.7153 0.1008 0.6607 0.3076 0.4097 0.5852 0.6728
|
|
||||||
0.6779 0.2596 0.8139 0.8129 0.6916 0.5340 0.2027
|
|
||||||
0.1520 0.4667 0.1356 0.3767 0.6133 0.1857 0.7351
|
|
||||||
0.3645 0.8163 0.6720 0.5691 0.5920 0.8241 0.4012
|
|
||||||
```
|
|
||||||
**Операции с матрицами:**
|
|
||||||
- Длина матрицы(количество столбцов):
|
|
||||||
```matlab
|
|
||||||
>> k=length(B1)
|
|
||||||
k = 7
|
|
||||||
```
|
|
||||||
- Размер матрицы:
|
|
||||||
```matlab
|
|
||||||
>> nm=size(B1)
|
|
||||||
nm =
|
|
||||||
|
|
||||||
4 7
|
|
||||||
```
|
|
||||||
- Количество элементов в матрице:
|
|
||||||
```matlab
|
|
||||||
>> elem=numel(B1)
|
|
||||||
elem = 28
|
|
||||||
```
|
|
||||||
- Вектор линейного интервала:
|
|
||||||
```matlab
|
|
||||||
>> NN=linspace(11.5,34.1,20)
|
|
||||||
NN =
|
|
||||||
|
|
||||||
Columns 1 through 15:
|
|
||||||
|
|
||||||
11.500 12.689 13.879 15.068 16.258 17.447 18.637 19.826 21.016 22.205 23.395 24.584 25.774 26.963 28.153
|
|
||||||
|
|
||||||
Columns 16 through 20:
|
|
||||||
|
|
||||||
29.342 30.532 31.721 32.911 34.100
|
|
||||||
```
|
|
||||||
- Матрица из единиц:
|
|
||||||
```matlab
|
|
||||||
>> FF=ones(2,4)
|
|
||||||
FF =
|
|
||||||
|
|
||||||
1 1 1 1
|
|
||||||
1 1 1 1
|
|
||||||
```
|
|
||||||
- Матрица из нулей:
|
|
||||||
```matlab
|
|
||||||
>> GG=zeros(5)
|
|
||||||
GG =
|
|
||||||
|
|
||||||
0 0 0 0 0
|
|
||||||
0 0 0 0 0
|
|
||||||
0 0 0 0 0
|
|
||||||
0 0 0 0 0
|
|
||||||
0 0 0 0 0
|
|
||||||
```
|
|
||||||
- Диагональ матрицы:
|
|
||||||
```matlab
|
|
||||||
>> B1D=diag(B1)
|
|
||||||
B1D =
|
|
||||||
|
|
||||||
0.8928
|
|
||||||
0.5125
|
|
||||||
0.3688
|
|
||||||
0.7781
|
|
||||||
```
|
|
||||||
- Диагональная матрица из вектора:
|
|
||||||
```matlab
|
|
||||||
>> DB=diag(B1D)
|
|
||||||
DB =
|
|
||||||
|
|
||||||
Diagonal Matrix
|
|
||||||
|
|
||||||
0.8928 0 0 0
|
|
||||||
0 0.5125 0 0
|
|
||||||
0 0 0.3688 0
|
|
||||||
0 0 0 0.7781
|
|
||||||
```
|
|
||||||
- Сортировка в столбцах:
|
|
||||||
```matlab
|
|
||||||
>> BS1=sort(B)
|
|
||||||
BS1 =
|
|
||||||
|
|
||||||
0.1526 0.1010 0.1360 0.3126 0.4221 0.1868 0.2042
|
|
||||||
0.3730 0.2626 0.7218 0.3862 0.6335 0.5634 0.4128
|
|
||||||
0.7449 0.4856 0.7369 0.6055 0.6602 0.6251 0.7380
|
|
||||||
0.7970 0.9549 0.9508 0.9491 0.7637 0.9687 0.8259
|
|
||||||
```
|
|
||||||
- Сортировка по 2 стобцу:
|
|
||||||
```matlab
|
|
||||||
>> BS2=sortrows(B,2)
|
|
||||||
BS2 =
|
|
||||||
|
|
||||||
0.7970 0.1010 0.7218 0.3126 0.4221 0.6251 0.7380
|
|
||||||
0.7449 0.2626 0.9508 0.9491 0.7637 0.5634 0.2042
|
|
||||||
0.1526 0.4856 0.1360 0.3862 0.6602 0.1868 0.8259
|
|
||||||
0.3730 0.9549 0.7369 0.6055 0.6335 0.9687 0.4128
|
|
||||||
```
|
|
||||||
- Сумма каждого столбца:
|
|
||||||
```matlab
|
|
||||||
>> DS1=sum(D)
|
|
||||||
DS1 =
|
|
||||||
|
|
||||||
22 38 54 70 86 102
|
|
||||||
```
|
|
||||||
- Сумма каждой строки:
|
|
||||||
```matlab
|
|
||||||
>> DS2=sum(D,2)
|
|
||||||
DS2 =
|
|
||||||
|
|
||||||
84
|
|
||||||
90
|
|
||||||
96
|
|
||||||
102
|
|
||||||
```
|
|
||||||
- Произведение по столбцам:
|
|
||||||
```matlab
|
|
||||||
>> DP1=prod(D)
|
|
||||||
DP1 =
|
|
||||||
|
|
||||||
840 7920 32760 93024 212520 421200
|
|
||||||
```
|
|
||||||
- Определитель:
|
|
||||||
```matlab
|
|
||||||
>> dt=det(A*A')
|
|
||||||
dt = 30.417
|
|
||||||
```
|
|
||||||
- Обратная матрица:
|
|
||||||
```matlab
|
|
||||||
>> dinv=inv(A*A')
|
|
||||||
dinv =
|
|
||||||
|
|
||||||
0.195493 -0.178920 0.018720 0.280781
|
|
||||||
-0.178920 0.512852 -0.507281 0.032452
|
|
||||||
0.018720 -0.507281 1.652127 -1.325540
|
|
||||||
0.280781 0.032452 -1.325540 2.074159
|
|
||||||
```
|
|
||||||
|
|
||||||
## 9 Работа с индексацией элементов матриц
|
|
||||||
- Элемент 3 строки 5 столбца:
|
|
||||||
```matlab
|
|
||||||
>> D1=D(3,5)
|
|
||||||
D1 = 22
|
|
||||||
```
|
|
||||||
- Часть строки 3 строки с 4 по последний столбцы:
|
|
||||||
```matlab
|
|
||||||
>> D2=D(3,4:end)
|
|
||||||
D2 =
|
|
||||||
|
|
||||||
18 22 26
|
|
||||||
```
|
|
||||||
- Кусок матрицы:
|
|
||||||
```matlab
|
|
||||||
>> D3=D(2:3,3:5)
|
|
||||||
D3 =
|
|
||||||
|
|
||||||
13 17 21
|
|
||||||
14 18 22
|
|
||||||
```
|
|
||||||
- Элементы с 16 по 20 место(по столбцам сверху вниз):
|
|
||||||
```matlab
|
|
||||||
>> D4=D(16:20)
|
|
||||||
D4 =
|
|
||||||
|
|
||||||
19 20 21 22 23
|
|
||||||
```
|
|
||||||
- Смешанная матрица( 3,4 строки; 1,3,6 столбцы):
|
|
||||||
```matlab
|
|
||||||
>> D5=D(3:4,[1,3,6])
|
|
||||||
D5 =
|
|
||||||
|
|
||||||
6 14 26
|
|
||||||
7 15 27
|
|
||||||
```
|
|
||||||
## 10 Управляющие конструкции
|
|
||||||
- Цикл по перечислению:
|
|
||||||
```matlab
|
|
||||||
>> Dsum=0
|
|
||||||
Dsum = 0
|
|
||||||
>> for i=1:6
|
|
||||||
Dsum=Dsum+sqrt(D(2,i))
|
|
||||||
endfor
|
|
||||||
Dsum = 2.2361
|
|
||||||
Dsum = 5.2361
|
|
||||||
Dsum = 8.8416
|
|
||||||
Dsum = 12.965
|
|
||||||
Dsum = 17.547
|
|
||||||
Dsum = 22.547
|
|
||||||
```
|
|
||||||
- Цикл пока выполняется условие:
|
|
||||||
```matlab
|
|
||||||
>> Dsum2=0;i=1
|
|
||||||
i = 1
|
|
||||||
>> while(D(i)<22)
|
|
||||||
Dsum2=Dsum2+sin(D(i))
|
|
||||||
i=i+1
|
|
||||||
endwhile
|
|
||||||
Dsum2 = -0.7568
|
|
||||||
i = 2
|
|
||||||
Dsum2 = -1.7157
|
|
||||||
i = 3
|
|
||||||
Dsum2 = -1.9951
|
|
||||||
i = 4
|
|
||||||
Dsum2 = -1.3382
|
|
||||||
i = 5
|
|
||||||
Dsum2 = -0.3488
|
|
||||||
i = 6
|
|
||||||
Dsum2 = 0.063321
|
|
||||||
i = 7
|
|
||||||
Dsum2 = -0.4807
|
|
||||||
i = 8
|
|
||||||
Dsum2 = -1.4807
|
|
||||||
i = 9
|
|
||||||
Dsum2 = -2.0173
|
|
||||||
i = 10
|
|
||||||
Dsum2 = -1.5971
|
|
||||||
i = 11
|
|
||||||
Dsum2 = -0.6065
|
|
||||||
i = 12
|
|
||||||
Dsum2 = 0.043799
|
|
||||||
i = 13
|
|
||||||
Dsum2 = -0.2441
|
|
||||||
i = 14
|
|
||||||
Dsum2 = -1.2055
|
|
||||||
i = 15
|
|
||||||
Dsum2 = -1.9565
|
|
||||||
i = 16
|
|
||||||
Dsum2 = -1.8066
|
|
||||||
i = 17
|
|
||||||
Dsum2 = -0.8937
|
|
||||||
i = 18
|
|
||||||
Dsum2 = -0.057011
|
|
||||||
i = 19
|
|
||||||
```
|
|
||||||
- Условие if:
|
|
||||||
```matlab
|
|
||||||
>> if(D(3,5)>=20)
|
|
||||||
printf('D(3,5)>=20')
|
|
||||||
else
|
|
||||||
printf('D(3,5)<20')
|
|
||||||
endif
|
|
||||||
D(3,5)>=20
|
|
||||||
```
|
|
||||||
## 11 Использование графических функций
|
|
||||||
- Функция построения графиков:
|
|
||||||
```matlab
|
|
||||||
>> graphics_toolkit('gnuplot')
|
|
||||||
>> plot(D(1,:),B([2,4],1:6))
|
|
||||||
```
|
|
||||||

|
|
||||||
- Функция расчета и построения гистограммы:
|
|
||||||
```matlab
|
|
||||||
>> graphics_toolkit('gnuplot')
|
|
||||||
>> hist(A(:),6)
|
|
||||||
```
|
|
||||||

|
|
||||||
- Функция pie():
|
|
||||||
```matlab
|
|
||||||
>> graphics_toolkit('gnuplot')
|
|
||||||
>> pie(C)
|
|
||||||
```
|
|
||||||

|
|
||||||
- Функция bar():
|
|
||||||
```matlab
|
|
||||||
>> graphics_toolkit('gnuplot')
|
|
||||||
>> bar(C)
|
|
||||||
```
|
|
||||||

|
|
||||||
## 12 Работа с текстовым редактором
|
|
||||||
Нажал «Файл»+ «Создать»+«Создать сценарий», в окно редактора перенёс команды из пункта 9, сохранил в файле Prog1.m.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Вывод программы:
|
|
||||||
```matlab
|
|
||||||
>> Prog1
|
|
||||||
|
|
||||||
D1 = 22
|
|
||||||
D2 =
|
|
||||||
|
|
||||||
18 22 26
|
|
||||||
|
|
||||||
D3 =
|
|
||||||
|
|
||||||
13 17 21
|
|
||||||
14 18 22
|
|
||||||
|
|
||||||
D4 =
|
|
||||||
|
|
||||||
19 20 21 22 23
|
|
||||||
|
|
||||||
D5 =
|
|
||||||
|
|
||||||
6 14 26
|
|
||||||
7 15 27
|
|
||||||
```
|
|
||||||
## 13 Сохранение и загрузка переменных
|
|
||||||
В главном меню выбрал «Файл» + «Сохранить область переменных» и сохранил содержимое области переменных в файле Perem. Вышел и запустил систему заново. Текущей папкой выбрал ТЕМА1. Выбрал «Файл» + «Загрузить область переменных» и восстановил содержимое из файла Perem.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
266
ТЕМА1/task.md
@@ -1,266 +0,0 @@
|
|||||||
# Общее контрольное задание по теме 1
|
|
||||||
|
|
||||||
Мокеев Никита, А-03-24
|
|
||||||
|
|
||||||
## Задание
|
|
||||||
|
|
||||||
|
|
||||||
- Создайте переменную ММ – матрицу 5х7 со случайными нормально распределенными элементами с математическим ожиданием 10 и стандартным отклонением 8.
|
|
||||||
- Рассчитайте среднее значение SR по всем элементам матрицы ММ.
|
|
||||||
- Замените в ММ все значения, превышающие SR+8, на значение SR+8, а значения, меньшие, чем SR-8, - на SR-8.
|
|
||||||
- Превратите ММ в вектор – столбец ММС. Упорядочьте его элементы по возрастанию. Определите значение медианы, в качестве которого возьмите серединное по порядку индексов значение в упорядоченном векторе.
|
|
||||||
- Рассчитайте матрицу ММ1 с элементами, равными натуральным логариф-мам от значений соответствующих элементов из матрицы ММ.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Решение
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> MM=10+8*randn(5,7)
|
|
||||||
|
|
||||||
MM =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-0.3150 18.2714 16.3823 -0.3882 7.6231 9.4711 0.3784
|
|
||||||
|
|
||||||
1.1265 11.5555 -0.9722 16.4186 2.9388 16.7871 14.8105
|
|
||||||
|
|
||||||
8.8727 1.8825 5.0660 14.5294 14.5326 5.5724 9.9409
|
|
||||||
|
|
||||||
1.0583 3.3569 13.8140 9.1158 12.5865 10.9011 4.3489
|
|
||||||
|
|
||||||
15.5769 12.6464 -6.4921 12.9410 2.3038 9.3104 2.6408
|
|
||||||
|
|
||||||
>> SR=sum(MM(:))/numel(MM)
|
|
||||||
|
|
||||||
SR = 7.9598
|
|
||||||
|
|
||||||
>> UP=SR+8
|
|
||||||
|
|
||||||
UP = 15.960
|
|
||||||
|
|
||||||
>> LOW=SR-8
|
|
||||||
|
|
||||||
LOW = -0.040190
|
|
||||||
|
|
||||||
>> MM(MM>UP)=UP;
|
|
||||||
>> LOW(MM<LOW)=LOW;
|
|
||||||
>> MM
|
|
||||||
|
|
||||||
MM =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-4.0190e-02 1.5960e+01 1.5960e+01 -4.0190e-02 7.6231e+00 9.4711e+00 3.7838e-01
|
|
||||||
|
|
||||||
1.1265e+00 1.1556e+01 -4.0190e-02 1.5960e+01 2.9388e+00 1.5960e+01 1.4810e+01
|
|
||||||
|
|
||||||
8.8727e+00 1.8825e+00 5.0660e+00 1.4529e+01 1.4533e+01 5.5724e+00 9.9409e+00
|
|
||||||
|
|
||||||
1.0583e+00 3.3569e+00 1.3814e+01 9.1158e+00 1.2587e+01 1.0901e+01 4.3489e+00
|
|
||||||
|
|
||||||
1.5577e+01 1.2646e+01 -4.0190e-02 1.2941e+01 2.3038e+00 9.3104e+00 2.6408e+00
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
>> MMC=MM(:)
|
|
||||||
|
|
||||||
MMC =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
1.1265e+00
|
|
||||||
|
|
||||||
8.8727e+00
|
|
||||||
|
|
||||||
1.0583e+00
|
|
||||||
|
|
||||||
1.5577e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
1.1556e+01
|
|
||||||
|
|
||||||
1.8825e+00
|
|
||||||
|
|
||||||
3.3569e+00
|
|
||||||
|
|
||||||
1.2646e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
5.0660e+00
|
|
||||||
|
|
||||||
1.3814e+01
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
1.4529e+01
|
|
||||||
|
|
||||||
9.1158e+00
|
|
||||||
|
|
||||||
1.2941e+01
|
|
||||||
|
|
||||||
7.6231e+00
|
|
||||||
|
|
||||||
2.9388e+00
|
|
||||||
|
|
||||||
1.4533e+01
|
|
||||||
|
|
||||||
1.2587e+01
|
|
||||||
|
|
||||||
2.3038e+00
|
|
||||||
|
|
||||||
9.4711e+00
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
5.5724e+00
|
|
||||||
|
|
||||||
1.0901e+01
|
|
||||||
|
|
||||||
9.3104e+00
|
|
||||||
|
|
||||||
3.7838e-01
|
|
||||||
|
|
||||||
1.4810e+01
|
|
||||||
|
|
||||||
9.9409e+00
|
|
||||||
|
|
||||||
4.3489e+00
|
|
||||||
|
|
||||||
2.6408e+00
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
>> MMC1=sort(MMC)
|
|
||||||
|
|
||||||
MMC1 =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
-4.0190e-02
|
|
||||||
|
|
||||||
3.7838e-01
|
|
||||||
|
|
||||||
1.0583e+00
|
|
||||||
|
|
||||||
1.1265e+00
|
|
||||||
|
|
||||||
1.8825e+00
|
|
||||||
|
|
||||||
2.3038e+00
|
|
||||||
|
|
||||||
2.6408e+00
|
|
||||||
|
|
||||||
2.9388e+00
|
|
||||||
|
|
||||||
3.3569e+00
|
|
||||||
|
|
||||||
4.3489e+00
|
|
||||||
|
|
||||||
5.0660e+00
|
|
||||||
|
|
||||||
5.5724e+00
|
|
||||||
|
|
||||||
7.6231e+00
|
|
||||||
|
|
||||||
8.8727e+00
|
|
||||||
|
|
||||||
9.1158e+00
|
|
||||||
|
|
||||||
9.3104e+00
|
|
||||||
|
|
||||||
9.4711e+00
|
|
||||||
|
|
||||||
9.9409e+00
|
|
||||||
|
|
||||||
1.0901e+01
|
|
||||||
|
|
||||||
1.1556e+01
|
|
||||||
|
|
||||||
1.2587e+01
|
|
||||||
|
|
||||||
1.2646e+01
|
|
||||||
|
|
||||||
1.2941e+01
|
|
||||||
|
|
||||||
1.3814e+01
|
|
||||||
|
|
||||||
1.4529e+01
|
|
||||||
|
|
||||||
1.4533e+01
|
|
||||||
|
|
||||||
1.4810e+01
|
|
||||||
|
|
||||||
1.5577e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
1.5960e+01
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
>> Med=MMC1(floor(numel(MMC1)/2)+1)
|
|
||||||
|
|
||||||
Med = 9.1158
|
|
||||||
|
|
||||||
>> MM1=log(MM)
|
|
||||||
|
|
||||||
MM1 =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Columns 1 through 4:
|
|
||||||
|
|
||||||
|
|
||||||
-3.2141 + 3.1416i 2.7701 + 0i 2.7701 + 0i -3.2141 + 3.1416i
|
|
||||||
|
|
||||||
0.1191 + 0i 2.4472 + 0i -3.2141 + 3.1416i 2.7701 + 0i
|
|
||||||
|
|
||||||
2.1830 + 0i 0.6326 + 0i 1.6226 + 0i 2.6762 + 0i
|
|
||||||
|
|
||||||
0.0567 + 0i 1.2110 + 0i 2.6257 + 0i 2.2100 + 0i
|
|
||||||
|
|
||||||
2.7458 + 0i 2.5374 + 0i -3.2141 + 3.1416i 2.5604 + 0i
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Columns 5 through 7:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2.0312 + 0i 2.2482 + 0i -0.9719 + 0i
|
|
||||||
|
|
||||||
1.0780 + 0i 2.7701 + 0i 2.6953 + 0i
|
|
||||||
|
|
||||||
2.6764 + 0i 1.7178 + 0i 2.2967 + 0i
|
|
||||||
|
|
||||||
2.5326 + 0i 2.3889 + 0i 1.4699 + 0i
|
|
||||||
|
|
||||||
0.8346 + 0i 2.2311 + 0i 0.9711 + 0i
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
Двоичные данные
ТЕМА2/Hist.jpg
|
До Ширина: | Высота: | Размер: 16 KiB |
Двоичные данные
ТЕМА2/Hist2.jpg
|
До Ширина: | Высота: | Размер: 16 KiB |
@@ -1,21 +0,0 @@
|
|||||||
XX=load('dan_vuz.txt');
|
|
||||||
size(XX);
|
|
||||||
X=XX(:,3:13);;
|
|
||||||
R=corr(X);
|
|
||||||
[vect,lambda]=eig(X'*X);
|
|
||||||
Sobst=diag(lambda);
|
|
||||||
fprintf('Eigenvalues:\n %f \n',Sobst);
|
|
||||||
fprintf('\n');
|
|
||||||
SobMax=Sobst(end);
|
|
||||||
GlComp=vect(:,end);
|
|
||||||
Delt=100*SobMax/sum(Sobst);
|
|
||||||
fprintf('Delta= %d \n ',round(Delt));
|
|
||||||
Res=X*GlComp;
|
|
||||||
fprintf(' Results \n ');
|
|
||||||
fprintf('%d %f \n ',[XX(:,1),Res] ');
|
|
||||||
save res.mat Res -mat;
|
|
||||||
hist(Res,20)
|
|
||||||
xlabel('Results ');
|
|
||||||
ylabel('Number of Unis ');
|
|
||||||
hist(Res,20)
|
|
||||||
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
XX=load('dan_vuz.txt');
|
|
||||||
size(XX);
|
|
||||||
X=XX(:,3:13);;
|
|
||||||
R=corr(X);
|
|
||||||
[vect,lambda]=eig(X'*X);
|
|
||||||
Sobst=diag(lambda);
|
|
||||||
fprintf('Eigenvalues:\n %f \n',Sobst);
|
|
||||||
fprintf('\n');
|
|
||||||
SobMax=Sobst(end);
|
|
||||||
GlComp=vect(:,end);
|
|
||||||
Delt=100*SobMax/sum(Sobst);
|
|
||||||
fprintf('Delta= %d \n ',round(Delt));
|
|
||||||
Res=X*GlComp;
|
|
||||||
fprintf(' Results \n ');
|
|
||||||
fprintf('%d %f \n ',[XX(:,1),Res] ');
|
|
||||||
save res.mat Res -mat;
|
|
||||||
hist(Res,20)
|
|
||||||
xlabel('Results ')
|
|
||||||
ylabel('Number of Unis ')
|
|
||||||
saveas(gcf, 'Hist2.jpg ', 'jpg ');
|
|
||||||
CorFin=corr(Res,XX(:,2));
|
|
||||||
fprintf('Correlation of Results and Money = %f \n',CorFin);
|
|
||||||
|
|
||||||
Двоичные данные
ТЕМА2/assets/figure0.png
|
До Ширина: | Высота: | Размер: 3.9 KiB |
Двоичные данные
ТЕМА2/assets/figure1.png
|
До Ширина: | Высота: | Размер: 15 KiB |
Двоичные данные
ТЕМА2/assets/figure2.png
|
До Ширина: | Высота: | Размер: 22 KiB |
Двоичные данные
ТЕМА2/assets/figure3.png
|
До Ширина: | Высота: | Размер: 24 KiB |
322
ТЕМА2/report.md
@@ -1,322 +0,0 @@
|
|||||||
# Отчет по теме 2
|
|
||||||
|
|
||||||
|
|
||||||
Мокеев Никита, А-03-24
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 1 Настройка текущего каталога
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Установил в качестве текущей папки ТЕМА2:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 2
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Загрузка данных из текстового файла в матрицу:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
>> XX=load('dan_vuz.txt');
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
Размерность:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> size(XX)
|
|
||||||
|
|
||||||
ans =
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
290 15
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*Данные о скольких вузах России представлены в этой матрице?* - 290
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Данные о показателях результативности:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> X=XX(:,3:13);
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Матрица корреляций между показателями результативности:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> R=corr(X);
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Метод главных компонент, получение собственных значений и собственных векторов от квадратичной формы:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> [vect,lambda]=eig(X'*X);
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Извлечение диагональных элементов матрицы в вектор:
|
|
||||||
|
|
||||||
```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
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Выделения собственного наибольшего значения и вектора:
|
|
||||||
|
|
||||||
```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);
|
|
||||||
|
|
||||||
>> fprintf('Delta= %d n ',round(Delt))
|
|
||||||
|
|
||||||
Delta= 95
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Вектор оценки обобщенной результативности для каждого ВУЗа:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> Res=X*GlComp;
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Вывод заголовка результатов:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> fprintf(' Results n ')
|
|
||||||
|
|
||||||
Results
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Вывод таблицы результатов:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> fprintf('%d %f n ',[XX(:,1),Res] ')
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Сохранение вектора оценок в бинарном файле:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> save res.mat Res -mat
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Построение гистограммы:
|
|
||||||
|
|
||||||
```matlab
|
|
||||||
|
|
||||||
>> hist(Res,20)
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Обозначение осей и повторный вывод:
|
|
||||||
```matlab
|
|
||||||
xlabel('Results ');
|
|
||||||
ylabel('Number of Unis ');
|
|
||||||
hist(Res,20)
|
|
||||||
```
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Сохранение гистограммы:
|
|
||||||
```matlab
|
|
||||||
saveas(gcf, 'Hist.jpg ', 'jpg ')
|
|
||||||
```
|
|
||||||
|
|
||||||
Расчет оценки коререляции:
|
|
||||||
```matlab
|
|
||||||
>> CorFin=corr(Res,XX(:,2))
|
|
||||||
CorFin = 0.8437
|
|
||||||
```
|
|
||||||
|
|
||||||
И ее вывод:
|
|
||||||
```matlab
|
|
||||||
>> fprintf('Correlation of Results and Money = %f n',CorFin)
|
|
||||||
Correlation of Results and Money = 0.843710
|
|
||||||
```
|
|
||||||
|
|
||||||
## 3
|
|
||||||
|
|
||||||
|
|
||||||
figure2
|
|
||||||
Prog2
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||