Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Методы системного анализа, принятия решений и обработки информации с помощью компьютерных программ. Учебное пособие
.pdf
Рисунок 28. Пример доступа кэлементам матрицы
Рисунок 29. Пример доступа к третьемуэлементу матрицы
При работе с матрицами операции индексирования
инарезки становятся ещё более практичными:
Объект среза Python создается путем передачи параметров начальный_индекс, конечный_индекс ишаг встро-
енной функции slice (срез). Синтксис [начальный_индекс:
конечный_индекс: шаг]. Этот объект среза передается
массиву для извлечения части массива. Если матрица
многомерная, то можно делать срезы сразу вдоль нескольких осей. Рассмотрим напримере двухмерной матрицы.
Выражением matrix[i, j] мы получаем элемент массива matrix напересечении i-й строки иj-й строки.
Например, получить j-й столбец двухмерного массива
matrix можно выражением: matrix[:, j]. Одну i-ю строку
можно получить как выражением matrix[i, :], так ивыражением matrix[i]. Рассмотри пример создания среза, рисунок 30.
В скрипте всрезе указали [0, 1:4:2]. Это означает, что
выделяем первую строку снулевым индексом, и какие
61

в этой строке столбцы нам нужны: Таким образом мы
выбираем изматрицы элементы 1, 3 и5.
Рисунок 30. Пример доступа кэлементам матрицы
5.5. Набор данных
Библиотека NumPy содержит множество базовых статистических функций, которые помогают решать задачи
и описывать набор данных: среднее арифметическое
(mean), медиана (median), стандартное отклонение (std),
корреляция (corrcoef) итак далее. Посмотрим, как эти
статистические показатели помогут нам при решении
задач.
Средние величины. Вычислить среднее арифметическое вNumPy пользуемся методом mean():
В NumPy для нахождения медианы есть метод
median():
62

Показатели вариации. Для расчета стандартного
отклонения вNumPy используем метод std():
Коэффициент корреляции. Корреляция (corrcoef)—
статистическая взаимосвязь между переменными. Корреляция показывает степень связи между двумя явлениями, меняются переменные совместно или нет. Значение
коэффициента корреляции показывает, насколько сильно
связаны между собой переменные и всегда принимает
значение от0 до1 (помодулю). Коэффициент может быть
положительным или отрицательным.
Для расчета параметров описательной статистики
используют функции:
63

5.6. Практическая работа №3.
Описательный анализ данных. NumPy
Задача 1. Напишите программу NumPy для создания
массива 3x3x3, заполненного произвольными значениями.
Пример решения:
Код Python:
Задача 2. Создать случайную матрицу 5x7 целых
чисел от1 до100 иудалить [3,5] колонки.
Выходные данные:
Выведите матрицу 5x7со случайными целыми числами от1 до100 иматрицу 5x5судалённой по условию
задачи колонкой. Каждая матрица выводится с новой
строки, между матрицами есть пустая строка.
64

Пример решения:
Код Python:
Задача 3. Напишите программу NumPy, чтобы пре-
образовать данный массив всписок, азатем снова преобразовать его всписок.
Пример решения:
Код Python:
65

Задача 4. Напишите программу NumPy для вычисления среднего значения, стандартного отклонения идисперсии данного массива вдоль второй оси.
Пример решения:
Код Python:
Задача 5. Напишите программу NumPy для создания
нулевого вектора размера 8 иобновите второе значение до28.
66

Пример решения:
Код Python:
Задача 6. Напишите программу вбиблиотеке NumPy
для создания массива созначениями от21 до100с шагом 10.
Пример решения:
Код Python:
67

Задание для выполнения практической работы:
1. Средствами NumPy сформировать две вектора: первый длиной 15+N, (где N— номер студента всписке журнала группы) элементов созначениями от0 до1,4сшагом
0,1; второй— длиной 8 элементов со значениями от 1
до8.
2. Преобразовать первый вектор вматрицу 5хN, авторой — в матрицу 4х2. Выполнить перемножение этих
матриц. Результат иматрицы вывести наэкран.
Порядок выполнения практической работы №3
1. Запустить IDLE Python (или Jupyter Notebook).
2. Подключить необходимые пакеты.
3. Ввести необходимые переменные и их значения
(взависимости отварианта).
4. Вычислить спомощью уравнения всоответствии
свыданным заданием.
5. Оформить практическую работу изащитить.
Отчет составляется после выполнения задания.
Структура отчета: название практической работы, цель
работы, задание, скриншоты с выполненным заданием
иописание расчета. Отчет завершается ответами наконтрольные вопросы. Все рисунки должны быть подписаны
снизу (например, Рис. Название рисунка). Страницы пронумерованы снизу поцентру.
Контрольные вопросы кпрактической работе №3
1. Особенные типы данных вNumPy?
2. Какие библиотеки Python используются для работы
в области анализа данных? Дайте краткую характеристику каждой библиотеке.
3. Для чего предназначен установщик пакетов pip?
4. Умножение матриц. Правило умножения матриц.
Произведение матрицы на скаляр. Приведите Задача
вNumPy.
68

5. Сложение ивычитание матриц. Приведите Задача
сложения ивычитания матриц вNumPy.
6. Срез матрицы. Пример решения вNumPy.
7. Доступ к элементам матрицы. Пример решения
вNumPy.
5.7. Библиотека Pandas
Python обладает мощными функциями для чтения,
записи, фильтрации иагрегации данных вструктурированном наборе данных (датасеты).
Для работы с ними в Python созданы библиотеки:
Pandas, Numpy, Scikit-learn. Pandas позволяет создавать
иманипулировать датасетами, осуществлять различные
операции над данными. Numpy содержит инструменты
для работы смассивами иматрицами. Scikit-learn содержит инструменты для машинного обучения.
Pandas — это библиотека языка Python, которая
позволяет создавать объекты, вкоторых данные хранятся
втабличной форм [21]. Это основной структурный объект необходимый для анализа иочистки данных перед их
использованием вобучении модели.
Pandas недоступна вPython по умолчанию. Чтобы
начать сней работать, нужно ее импортировать с помощью этого кода:
где pd — это сокращенное название библиотеки при
импорте.
5.8. Серии итаблица данных
Библиотека pandas предоставляет две структуры:
Series иDataFrame (таблица данных).
69

С Series можно работать как с обычным массивом
икак сассоциированным массивом.
DataFrame— это двумерная маркированная таблица
данных.
Конструктор класса Series:
Пример создания структуры Series нарисунке 31.
Рисунок 31. Пример создания структуры Series
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
