Python. Анализ данных. PANDAS

В языке Python существует множество библиотек для анализа данных, включая предобработку данных, Big Data, статистический анализ. Мы начнем свое знакомства с удивительным миром анализа  данных с библиотеки PANDAS, которая осуществляет их предобработку.

Итак, допустим, у нас имеются некоторые данные в формате  CSV. Чтобы их загрузить, в библиотеке есть функция read_csv. Рассмотрим пример:

Данная программа прочитает из файла данные, и выведет на экран краткое содержимое объекта DataFrame:

Стоит иметь в виду, что ead_csv по умолчанию понимает только файлы с разделителем запятая, а в числах в качестве десятичного разделителя — точка. Чтобы читать CSV других форматов, придется указывать параметры явно. Например, вот так:

Данная программа прочтет CSV файл в стандарной виндовой кодировке с разделитем «;»:

Результатом выполнения метода read_csv является объект DataFrame. Этот объект позовляет производить различные манипуляции с данными. Например, можно получить таблицу, содержащую отдельные столбцы исходной таблицы, или наоборот, взять с удалением лишних столбцов:

Если мы посмотрим типы наших переменных X и Y:

То увидим, что X — это все тот же DataFrame, а Y — это Series

Зачем нам нужны подобные манипуляции? Предположим, что мы хотим найти в наших данных закономерности, для чего обучим какую-нибудь AI-модель, которых в Python вагон и маленькая тележка.

Нам дан список сотрудников компании, где имеется их имена, возраст, табельный номер, образование, бальная оценка навыков, и признак, попадает ли сотрудник под сокращение в связи с грядущим кризисом (поле NotFired, если 1 — то сотрудник остаётся работе, 0 — его увольняют). Таким образом, NotFired — это целевая переменная, и нам нужно вывести, как она зависит от остальных переменных. Для чего? Допустим, мы хотим узнать, нет ли при увольнении дискриминации по полу или возрасту. Такие столбцы, как имя и табельный номер нам тут не нужны, мы их удаляем. А NotFired удаляем потому, что эта переменная у нас должны быть в массиве Y — то, что мы хотим предсказать. Остальные — это X — данные для предсказания.

Ну а дальше мы можем обучить модель, например, решающее дерево:

А вот так можно создать датафрейм «с нуля»:

В данном примере мы создаем датафейм с полями numbers и chars. Столбец numbers  заполняется числами от 0 до 9 (10 не включаем), а столбец chars буквами ‘a’:

 

Обратится к столбцам дата фрейма можно через свойство columns:

Размер таблицы можно получить через свойство shape:

Как видим, это свойство возвращает кортеж.

Добавить строку можно методом append:

Обратите внимание, что метод append не меняет существующую таблицу, а возвращает модифицированную (то есть создает копию и ее правит).

Для того, чтобы добавить столбец, достаточно просто присвоить значение новому столбцу (которого раньше не было):

Наконец, дата фрейм можно сохранить в файл (в текстовом формате):

В параметрах мы можем задать также разделитель, наличие заголовка, индекса, а также кодировку (все как и при чтении).

Comments

So empty here ... leave a comment!

Добавить комментарий

Sidebar