Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы системного анализа, принятия решений и обработки информации с помощью компьютерных программ. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
Рисунок 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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]