Лекции.ИНФО


Л а б о р а т о р н а я р а б о т а № 7



 

1. Введите матрицу N, размером 6х6, состоящую из произвольных элементов.

2. Для матрицы N определите максимальные элементы по строкам.

3. Определите для этой же матрицы максимальные элементы по строкам.

4. Найдите один максимальный элемент, среди всех элементов этой матрицы.

5. Введите матрицу К, размером 6х6, состоящую из произвольных элементов.

6. Для матрицы К определите минимальные элементы по строкам.

7. Определите для этой же матрицы минимальные элементы по строкам.

8. Найдите один минимальный элемент, среди всех элементов этой матрицы.

9. Введите матрицу М размером 5х5.

10. Найдите средние значения элементов по столбцам.

11. Найдите средние значения элементов по строкам.

12. Найдите среднее значение всех элементов матрицы М.

13. Введите матрицу Z размером 4х4, состоящую из произвольных элементов.

14. Выведите на экран значения медиан для столбцов.

15. Выведите на экран значения медиан для строк

16. Получите медиану для всей матрицы.

17. Введите матрицу L размером 3х3, состоящую из произвольных элементов.

18. Определите стандартное отклонение по формуле

;

19. Определите стандартное отклонение по формуле

20. Осуществите вычисление стандарного отклонения по предыдущей формуле вторым способом.

 

 

Л е к ц и я № 15, 16

 
 

 

 


Функции сортировки элементов массива

Многие операции статистической обработки данных выполняются быстрее и надежнее, если данные предварительно отсортированы. Кроме того, нередко представление данных в от-сортированном виде более наглядно и ценно. Ряд функций служит для выполнения сортировки элементов массива. Они представлены ниже:

· sort(A) в случае одномерного массива А сортирует и возвращает элементы по возраста-нию их значений; в случае двумерного массива происходит сортировки и возврат эле-ментов каждого столбца;

· [B, INDEX]= sort(A) наряду с отсортированным массивом возвращает массив индексов INDEX;

· sort(A, dim) для матриц сортирует элементы по столбцам или по строкам в зависимости от значения dim.

Например,

>> A=magic(6)

A =

35 1 6 26 19 24

3 32 7 21 23 25

31 9 2 22 27 20

8 28 33 17 10 15

30 5 34 12 14 16

4 36 29 13 18 11

 

>> [B, INDEX]=sort(A)

B =

3 1 2 12 10 11

4 5 6 13 14 15

8 9 7 17 18 16

30 28 29 21 19 20

31 32 33 22 23 24

35 36 34 26 27 25

 

INDEX =

2 1 3 5 4 6

6 5 1 6 5 4

4 3 2 4 6 5

5 4 6 2 1 3

3 2 4 3 2 1

1 6 5 1 3 2

 

· sortrows(A) выполняет сортировку строк массива А по возрастанию и возвращает отсор-тированный массив, который может быть или матрицей. или вектором-столбцом;

· sortrows(A, colum) возвращает матрицу, отсортированную по столбцам, точно указанным в векторе colum;

· [B, INDEX]= sortrows(A) также возвращает вектор индексов.

Например,

>>А=[2 3 5 6 8 9; 5 7 1 2 3 5; 1 3 2 1 5 1; 5 0 8 8 4 3]

A =

 

2 3 5 6 8 9

5 7 1 2 3 5

1 3 2 1 5 1

5 0 8 8 4 3

 

>> B=sortrows(A)

B =

1 3 2 1 5 1

2 3 5 6 8 9

5 0 8 8 4 3

5 7 1 2 3 5

 

>> B=sortrows(A, 2)

B =

5 0 8 8 4 3

2 3 5 6 8 9

1 3 2 1 5 1

5 7 1 2 3 5

 

Вычисление коэффициентов корреляции

Под корреляцией понимается взаимосвязь некоторых зависимостей, представленных данными – векторами или матрицами. Общепринятой мерой этой связи является коэффициент корреляции. Его близость к единице указывает на высокую степень идентичности зависимос-тей. Приведенная ниже функция позволяет вычислить коэффициент корреляции для входного массива данных.

corrcoef(X) возвращает матрицу коэффициентов корреляции для входной матрицы, стро-ки которой рассматриваются как наблюдения, а столбцы – как переменные.

Например,

>> M=magic(5)

M =

 

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

 

>> S=corrcoef(M)

S =

1.0000 0.0856 -0.5455 -0.3210 -0.0238

0.0856 1.0000 -0.0981 -0.6731 -0.3210

-0.5455 -0.0981 1.0000 -0.0981 -0.5455

-0.3210 -0.6731 -0.0981 1.0000 0.0856

-0.0238 -0.3210 -0.5455 0.0856 1.0000

 

В целом корреляции данных довольно низкая, за исключением данных, расположенных по диагонали – здесь коэффициенты равны 1.

 

Вычисление матрицы ковариации

Приведенная ниже функция позволяет вычислить матрицу ковариации для массива данных

сov(X) возвращает дисперсию элементов массива Х. Для матрицы, где каждая строка рассматривается как наблюдение, а каждый столбец – как переменная, cov(X) возвращает матрицу ковариаций. При этом diag(cov(X)) – вектор дисперсий для каждого столбца, а sqrt(diag(cov(X))) – вектор стандартных отклонений.

Пример:

>> D=[2 3 6; 3 6 -1; 9 8 5]

D =

2 3 6

3 6 -1

9 8 5

 

>> C=cov(D)

C =

14.3333 8.3333 3.6667

8.3333 6.3333 -2.3333

3.6667 -2.3333 14.3333

 

>> diag(cov(D))

ans =

14.3333

6.3333

14.3333

Основы программирования

Множество математических задач решается в системе MATLAB без использования тра-диционного программирования. Однако даже в самой большой и мощной математической сис-теме невозможно предусмотреть решения всех задач. которые могут интересовать пользовате-ля. Поэтому возникает необходимость программирования решения задач.

Программирование в системе MATLAB является эффективным средством ее расширения и адаптации к решению специальных проблем. Оно реализуется с помощью языка программи-рования системы.

С позиций программиста язы кпрограммирования системы является типичным проблем-но-ориентированным языком программирования высокого уровня. Точнее говоря, это даже язык сверхвысокого уровня, содержащий сложные операторы и функции, реализация которых на обычных языках (например, Бейсике, Паскале или СИ) потребовала бы много усилий и времени.

MATLAB представляет собой яркий пример плодотворности структурного программиро-вания. Подавляющее большинство функций и команд языка представляет собой вполне закон-ченные модули, обмен данными между которыми происходит через их входные параметры, хо-тя возможен обмен информации и через глобальные переменные. Программные модули оформ-лены в виде текстовых m-файлов, которые хранятся на диске и подключаются к программам по мере необходимости. Важно отметить, что в отличие от многих языков программирования, при-менение тех или иных модулей не требует предварительного объявления, а для создания и от-ладки самостоятельных модулей MATLAB имеет все необходимые средства. Подавляющее большинство команд и функций сиситемы MATLAB поставляется в виде таких модулей.

Поскольку язык программирования системы MATLAB ориентирован на структурное программирование, в нем нет номеров строк (присущих до недавнего времени Бейсику) и прог-раммных операторов перехода GO TO. Имеются лишь управляющие структуры следующих ти-пов: условных выражений IF…ELSE…ELSEIF…END, циклы FOR…END и WHILE…END. Их форма похожа на ту, которая используется в языке Паскаль (то есть область действия управляю-щих структур начинается их заголовком, но без слова begin, а заканчивается словом end). С по-зиций структурного программирования этих средств достаточно для решения любых задач.

 









Последнее изменение этой страницы: 2017-03-17; Просмотров: 10;


lektsia.info 2017 год. Все права принадлежат их авторам! Главная