Системы искусственного интеллекта в бизнес-аналитике
Покупка
Тематика:
Кибернетика
Издательство:
Поволжский государственный технологический университет
Автор:
Еклашева Ольга Витальевна
Год издания: 2023
Кол-во страниц: 72
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Магистратура
ISBN: 978-5-8158-2354-9
Артикул: 833845.01.99
Представлены краткие теоретические сведения, практические рекомендации и методические указания к выполнению лабораторных работ как сквозного проекта по дисциплине «Системы искусственного интеллекта в
бизнес-аналитике» для магистрантов направления подготовки 09.04.03 «Искусственный интеллект в бизнес-аналитике».
Тематика:
ББК:
УДК:
- 004: Информационные технологии. Вычислительная техника...
- 334: Формы организации и сотрудничества в экономике
ОКСО:
- ВО - Магистратура
- 09.04.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
О. В. Еклашева СИСТЕМЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА В БИЗНЕС-АНАЛИТИКЕ Практикум Йошкар-Ола ПГТУ 2023
УДК 004.8:334.7 ББК 38.813:65.29 E 45 Рецензенты: А. В. Бородин, канд. экон. наук, заведующий кафедрой информатики и системного программирования ПГТУ; А. В. Швецов, д-р экон. наук, профессор кафедры информационных систем в экономике ПГТУ Печатается по решению редакционно-издательского совета ПГТУ Еклашева, О. В. Е 45 Системы искусственного интеллекта в бизнес-аналитике: прак тикум / О. В. Еклашева. – Йошкар-Ола: Поволжский государственный технологический университет. 2023. – 72 с. ISBN 978-5-8158-2354-9 Представлены краткие теоретические сведения, практические реко мендации и методические указания к выполнению лабораторных работ как сквозного проекта по дисциплине «Системы искусственного интеллекта в бизнес-аналитике» для магистрантов направления подготовки 09.04.03 «Искусственный интеллект в бизнес-аналитике». УДК 004.8:334.7 ББК 38.813:65.29 ISBN 978-5-8158-2354-9 © Еклашева О. В., 2023 © Поволжский государственный технологический университет, 2023
ВВЕДЕНИЕ Тема использования искусственного интеллекта в различных сферах (и в бизнес-аналитике в том числе) в настоящее время является очень актуальной, что делает актуальным и издание настоящего практикума по дисциплине «Системы искусственного интеллекта в бизнес-аналитике». Предлагаемое вниманию читателей учебное издание призвано познакомить их с использованием Python для анализа и визуализации больших данных и построением модели линейной регрессии. В данном практикуме представлено семь лабораторных работ. Студент может выполнить все действия, которые здесь описаны, поскольку все датасеты выложены на гугл-диск, к которому есть ссылка, и доступ к ним разрешен. Все куски кода выделены жирным шрифтом, также жирным шрифтом обозначены названия функций в тексте. Все используемые датасеты можно скачать по ссылке https://drive.google.com/drive/folders/1NKo9fafw6FwD5rSxtpHZ6jo cnnha8U3h?usp=sharing. В работе аналитика большое внимание уделяется подготовке данных, их очистке, связыванию с другими таблицами, визуализации и построению моделей. Все эти вопросы автор и постарался кратко, но достаточно подробно и доступно осветить, снабдив изложение материала конкретными примерами и необходимыми практическими рекомендациями. Данное издание рассчитано на магистрантов первого курса направления подготовки 09.04.03 «Искусственный интеллект в бизнес-аналитике», поэтому здесь рассмотрена только модель регрессии.
Занятие 1. Краткое знакомство с библиотекой Pandas Pandas — наиболее популярная библиотека для работы с дан ными и удобного представления их в табличной форме [1]. Поскольку pandas не встроен в Python по умолчанию, его необ ходимо импортировать. Чаще всего pandas импортируют под псевдонимом pd: import pandas as pd Если библиотека импортирована под псевдонимом, то в даль нейшем, обращаясь к методам и классам из этой библиотеки, необходимо использовать заданный псевдоним: например, pd.read_csv() . Основные объекты Pandas: Series Series можно рассматривать как одну колонку таблицы, это од номерный массив, в котором индексами могут быть не только порядковые номера, но и что угодно другое, например, даты, названия компаний, идентификаторы участников опроса и т.д. Создать Series можно с помощью команды pd.Series() (или pandas.Series()), если библиотека pandas была импортирована без использования псевдонима. Попробуем создать Series, содержащий названия первых четы рёх месяцев года, передав их в виде списка. import pandas as pd data = pd.Series(["Январь", "Февраль", "Март", "Апрель"], index = ['Первый', "Второй", "Третий", "Четвёртый"]) print(data) Если не указывать индекс, то он будет создан автоматически и в нём будут порядковые номера элементов, начиная с нуля. Доступ осуществляется с использованием .loc или .iloc. .loc принимает определённые метки из индекса. В него можно передать как один указатель, так и массив. Например, если нужно получить элемент с индексом "Первый", следует написать: print(data.loc["Первый"])
.iloc принимает на вход порядковые номера элементов Series. В него также можно передавать как одно число, так и массив чисел. Например, если нужно из Series data, полученного в предыдущем блоке кода, получить элемент с индексом "Первый", необходимо написать: print(data.iloc[0]) А если нужно получить, например, элементы с индексами "Пер вый" и "Третий", то следует передать в метод .iloc() список с номерами этих элементов: print(data.iloc[[0, 2]]) Если в .loc передать название индекса, а в .iloc – номер индекса, которого нет в данных, то будет вызвана ошибка. Основные объекты Pandas: DataFrame Объект DataFrame лучше всего представлять в виде обычной таблицы. В таблице присутствуют строки и столбцы. Столбцами в объекте DataFrame выступают объекты Series, строки которых являются их непосредственными элементами. Создать DataFrame проще всего из словаря: df = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]}) display(df) Здесь мы создали DataFrame с колонками 'col1' и 'col2' и индек сом [0, 1], который был сгенерирован автоматически. Кроме того, DataFrame можно создать из списка списков. Также можно указать названия колонок (columns) и индекс (index). df = pd.DataFrame([ [1,2,3], [2,3,4] ], columns = ['foo', 'bar', 'baz'], index = ['foobar', 'foobaz']) display(df)
Здесь мы вручную указали названия колонок (foo, bar и baz) и индекс (foobar, foobaz), чтобы задать нужный нам формат таблицы. Основные объекты Pandas: read_csv Часто при работе с данными бывает так, что данные уже со браны в каком-то виде, например в виде файла с расширением .csv (comma-separated values). Прочитать этой файл поможет функция модуля pandas read_csv. Рассмотрим принцип работы функции на примере набора дан ных о футболистах. Основной код выглядит достаточно просто: pd.read_csv('Полный_путь_к_файлу/название_файла.csv') Функция возвращает DataFrame (то есть таблицу), однако за тем приобретает ещё много важных параметров, среди которых: • sep — разделитель данных, по умолчанию ','; • decimal — разделитель числа на целую и дробную часть, по умолчанию'.'; • names — список с названиями колонок, не обязательный пара метр; • skiprows — если файл содержит системную информацию, можно просто её пропустить. Это необязательный параметр. Получение информации о датафрейме: head и tail Часто после чтения данных с помощью read_csv() хочется убе диться в правильности чтения или, к примеру, посмотреть, что лежит в наборе данных. Для этого используются методы .head() или .tail(), которые по казывают первые или последние пять строк таблицы. Количество строк можно менять параметром n, передаваемым в функцию. Посмотрим, как они работают, на примере набора данных о футболистах: import pandas as pd football = pd.read_csv('/Full_path_to_file/data_sf.csv') display(football.head())
Здесь мы вывели первые пять строк DataFrame. import pandas as pd football = pd.read_csv('/Full_path_to_file/data_sf.csv') display(football.tail(7)) А здесь — последние семь строк. Получение информации о датафрейме: info Если хочется получить более детальную информацию о колон ках DataFrame, используется метод .info(): import pandas as pd football = pd.read_csv('/Full_path_to_file/data_sf.csv') display(football.info()) Получение информации о датафрейме: describe Метод describe показывает основные статистические характе ристики данных по каждому числовому признаку (типы int64 и float64): число непропущенных значений, среднее, стандартное отклонение, диапазон, медиану, 25 % и 75 % квартили.
import pandas as pd football = pd.read_csv('/Full_path_to_file/data_sf.csv') football.describe() Здесь для каждого числового (int64) столбца показано число не пустых значений (count), среднее (mean), стандартное отклонение (std), минимум и максимум (min и max), 25 % и 75 % квартили и медиана (50 %). Чтобы посмотреть статистику по нечисловым признакам (например, по строчным (object) или булевым (bool) данным), нужно явно указать интересующие нас типы в параметре метода describe include: football.describe(include = ['object']) Здесь для каждой колонки с типом object (строчные данные) вы водится количество непустых строк, уникальных значений, самое частое значение (top) и частота этого значения (freq). В обрезанном виде можно написать: with pd.option_context('display.max_rows', None, 'display.max_columns', None): display(football.describe())