Питон пандас руководство на русском

Начало работы¶

pandas является частью дистрибутива Anaconda и может быть установлен вместе с Anaconda или Miniconda:

pandas можно установить через pip из PyPI.

Нужны подробные инструкции?

Устанавливаете конкретную версию? Устанавливаете из исходников? Загляните на страницу расширенной установки.

Введение в pandas¶

pandas — подходящий инструмент для работы с табличными данными, такими как данные в электронных таблицах или базах данных. pandas поможет вам исследовать, очищать и обрабатывать ваши данные. В pandas таблица данных называется DataFrame .

В руководстве пользователя

pandas поддерживает интеграцию со многими форматами файлов или источниками данных «из коробки» (csv, excel, sql, json, parquet и другими). Импорт данных из таких источников обеспечивается функцией с префиксом read_* . Точно так же методы to_* используются для сохранения данных.

В руководстве пользователя

Выбор или фильтрация определенных строк или столбцов? Фильтрация данных по условию? В pandas доступны методы для получения срезов, выбора и извлечения необходимых данных.

В руководстве пользователя

pandas обеспечивает построение диаграмм «из коробки», используя возможности Matplotlib. Вы можете выбрать тип диаграммы (точечная, гистограмма, диаграмма размаха и так далее), соответствующий вашим данным.

В руководстве пользователя

Для выполнения вычислений не нужно перебирать все строки таблицы. Манипуляции с данными в столбце работают поэлементно. Добавить столбец в DataFrame на основе существующих данных в других столбцах очень просто.

В руководстве пользователя

Основные статистические показатели (среднее, медиана, минимум, максимум и прочее) легко поддаются вычислению. Стандартный либо пользовательский набор показателей можно получить для всего набора данных, скользящего окна данных или группировок по категориям. Последнее еще называют подходом «разделить-применить-объединить».

В руководстве пользователя

Изменяйте структуру таблицы данных несколькими способами. Функцией melt() можно преобразовать таблицу данных из широкого в длинный (аккуратный) формат, а функцией pivot() — из длинного в широкий формат. Благодаря встроенным агрегирующим функциям сводная таблица создается с помощью одной команды.

В руководстве пользователя

Несколько таблиц можно объединить как по столбцам, так и по строкам, поскольку для объединения нескольких таблиц данных предусмотрены операции объединения, как в базах данных.

В руководстве пользователя

pandas отлично поддерживает временные ряды и имеет обширный набор инструментов для работы с датами, временем и с данными, индексированными по времени.

В руководстве пользователя

Наборы данных содержат не только числовые данные. pandas предоставляет широкий набор функций для очистки текстовых данных и извлечения из них полезной информации.

Читайте также:  Прицелы моды для css v34

В руководстве пользователя

Предшественники¶

Знакомы ли вы с другим программным обеспечением для обработки табличных данных? Изучите операции, которые эквивалентны в pandas и в программном обеспечении, которое вы уже знаете:

Язык программирования R предоставляет структуру данных data.frame и несколько пакетов, таких как tidyverse , для удобной обработки данных, аналогично pandas.

Уже знакомы с SELECT , GROUP BY , JOIN и так далее? Большинство этих запросов к SQL имеют эквиваленты в pandas.

data set , включенный в пакет статистического программного обеспечения STATA , соответствует DataFrame в pandas. Многие операции из STATA имеют эквивалент в pandas.

Пользователи Excel или других программ для работы с электронными таблицами обнаружат, что многие концепции можно перенести на pandas.

Набор статистического программного обеспечения SAS также предоставляет data set , соответствующий DataFrame в pandas. Кроме того, векторизованные операции SAS, фильтрация, операции обработки строк и многое другое имеют аналогичные функции в pandas.

Учебные материалы¶

Краткий обзор функциональности pandas см. в статье 10 Minutes to pandas.

Вы можете обратиться к шпаргалке по pandas, в ней в сжатом виде приведена информация об управлении данными в pandas.

Сообщество выпускает множество учебных пособий, доступных в Интернете. Некоторые материалы включены в список предоставленных сообществом (см. раздел Учебные материалы сообщества ).

Источник

Библиотека Pandas в Python

Pandas – это библиотека с открытым исходным кодом на Python. Она предоставляет готовые к использованию высокопроизводительные структуры данных и инструменты анализа данных.

  • Модуль Pandas работает поверх NumPy и широко используется для обработки и анализа данных.
  • NumPy – это низкоуровневая структура данных, которая поддерживает многомерные массивы и широкий спектр математических операций с массивами. Pandas имеет интерфейс более высокого уровня. Он также обеспечивает оптимизированное согласование табличных данных и мощную функциональность временных рядов.
  • DataFrame – это ключевая структура данных в Pandas. Это позволяет нам хранить и обрабатывать табличные данные, как двумерную структуру данных.
  • Pandas предоставляет богатый набор функций для DataFrame. Например, выравнивание данных, статистика данных, нарезка, группировка, объединение, объединение данных и т.д.

Установка и начало работы с Pandas

Для установки модуля Pandas вам потребуется Python 2.7 и выше.

Если вы используете conda, вы можете установить его, используя команду ниже.

Если вы используете PIP, выполните команду ниже, чтобы установить модуль pandas.

Модуль Pandas в Python

Чтобы импортировать Pandas и NumPy в свой скрипт Python, добавьте следующий фрагмент кода:

import pandas as pd import numpy as np

Поскольку Pandas зависит от библиотеки NumPy, нам нужно импортировать эту зависимость.

Структуры данных

Модуль Pandas предоставляет 3 структуры данных, а именно:

  • Series: это одномерный массив неизменного размера, подобный структуре, имеющей однородные данные.
  • DataFrames: это двумерная табличная структура с изменяемым размером и неоднородно типизированными столбцами.
  • Panel: это трехмерный массив с изменяемым размером.
Читайте также:  Api честный знак javascript

DataFrame

DataFrame – самая важная и широко используемая структура данных, а также стандартный способ хранения данных. Она содержит данные, выровненные по строкам и столбцам, как в таблице SQL или в базе данных электронной таблицы.

Мы можем либо жестко закодировать данные в DataFrame, либо импортировать файл CSV, файл tsv, файл Excel, таблицу SQL и т.д.

Мы можем использовать приведенный ниже конструктор для создания объекта DataFrame.

pandas.DataFrame(data, index, columns, dtype, copy)

Ниже приводится краткое описание параметров:

  • data – создать объект DataFrame из входных данных. Это может быть список, dict, series, Numpy ndarrays или даже любой другой DataFrame;
  • index – имеет метки строк;
  • columns – используются для создания подписей столбцов;
  • dtype – используется для указания типа данных каждого столбца, необязательный параметр;
  • copy – используется для копирования данных, если есть.

Есть много способов создать DataFrame. Мы можем создать объект из словарей или списка словарей. Мы также можем создать его из списка кортежей, CSV, файла Excel и т.д.

Давайте запустим простой код для создания DataFrame из списка словарей.

import pandas as pd import numpy as np df = pd.DataFrame(< "State": ['Andhra Pradesh', 'Maharashtra', 'Karnataka', 'Kerala', 'Tamil Nadu'], "Capital": ['Hyderabad', 'Mumbai', 'Bengaluru', 'Trivandrum', 'Chennai'], "Literacy %": [89, 77, 82, 97,85], "Avg High Temp(c)": [33, 30, 29, 31, 32 ] >) print(df)

Модуль Dataframe Python

Первый шаг – создать словарь. Второй шаг – передать словарь в качестве аргумента в метод DataFrame(). Последний шаг – распечатать DataFrame.

Как видите, DataFrame можно сравнить с таблицей, имеющей неоднородное значение. Кроме того, можно изменить размер.

Мы предоставили данные в виде карты, и ключи карты рассматриваются Pandas, как метки строк.

Индекс отображается в крайнем левом столбце и имеет метки строк. Заголовок столбца и данные отображаются в виде таблицы.

Также возможно создавать индексированные DataFrames. Это можно сделать, настроив параметр индекса.

Импорт данных из CSV

Мы также можем создать DataFrame, импортировав файл CSV. Файл CSV – это текстовый файл с одной записью данных в каждой строке. Значения в записи разделяются символом «запятая».

Pandas предоставляет полезный метод с именем read_csv() для чтения содержимого файла CSV.

Например, мы можем создать файл с именем «cities.csv», содержащий подробную информацию о городах Индии. Файл CSV хранится в том же каталоге, что и сценарии Python. Этот файл можно импортировать с помощью:

import pandas as pd data = pd.read_csv('cities.csv') print(data)

Наша цель – загрузить данные и проанализировать их, чтобы сделать выводы. Итак, мы можем использовать любой удобный способ загрузки данных.

Проверка данных

Head

Tail

Точно так же print (df.dtypes) печатает типы данных.

Dtype

print (df.index) печатает index.

df.index

print (df.columns) печатает столбцы DataFrame.

df.columns

print (df.values) отображает значения таблицы.

df.value

1. Получение статистической сводки записей

Функция df.describe()

Функция df.describe() отображает статистическую сводку вместе с типом данных.

Читайте также:  Python for excel data

2. Сортировка записей

print(df.sort_values('Literacy %', ascending=False))

Сортировка записей

3. Нарезка записей

Нарезка записей

Slicemultiplecol

Slicerows

Интересной особенностью библиотеки Pandas является выбор данных на основе меток строк и столбцов с помощью функции iloc [0].

Часто для анализа может потребоваться всего несколько столбцов. Мы также можем выбрать по индексу, используя loc [‘index_one’]).

Например, чтобы выбрать вторую строку, мы можем использовать df.iloc [1 ,:].

Допустим, нам нужно выбрать второй элемент второго столбца. Это можно сделать с помощью функции df.iloc [1,1]. В этом примере функция df.iloc [1,1] отображает в качестве вывода «Мумбаи».

4. Фильтрация данных

Для фильтрации по условию можно использовать любой оператор сравнения.

Фильтрация данных

print(df[df['State'].isin(['Karnataka', 'Tamil Nadu'])])

Filter

5. Переименование столбца

df.rename(columns = , inplace=True) print(df.head())

Аргумент inplace = True вносит изменения в DataFrame.

Переименование столбца

6. Сбор данных

Наука о данных включает в себя обработку данных, чтобы данные могли хорошо работать с алгоритмами данных. Data Wrangling – это процесс обработки данных, такой как слияние, группировка и конкатенация.

Библиотека Pandas предоставляет полезные функции, такие как merge(), groupby() и concat() для поддержки задач Data Wrangling.

import pandas as pd d = < 'Employee_id': ['1', '2', '3', '4', '5'], 'Employee_name': ['Akshar', 'Jones', 'Kate', 'Mike', 'Tina'] >df1 = pd.DataFrame(d, columns=['Employee_id', 'Employee_name']) print(df1)

Сбор данных

import pandas as pd data = < 'Employee_id': ['4', '5', '6', '7', '8'], 'Employee_name': ['Meera', 'Tia', 'Varsha', 'Williams', 'Ziva'] >df2 = pd.DataFrame(data, columns=['Employee_id', 'Employee_name']) print(df2)

Wrangling 2

а. merge()

print(pd.merge(df1, df2, on='Employee_id'))

Функция merge()

Мы видим, что функция merge() возвращает строки из обоих DataFrames, имеющих то же значение столбца, которое использовалось при слиянии.

b. Группировка

import pandas as pd import numpy as np data = < 'Employee_id': ['4', '5', '6', '7', '8'], 'Employee_name': ['Meera', 'Meera', 'Varsha', 'Williams', 'Ziva'] >df2 = pd.DataFrame(data) group = df2.groupby('Employee_name') print(group.get_group('Meera'))

Поле «Employee_name» со значением «Meera» сгруппировано по столбцу «Employee_name». Пример вывода приведен ниже:

Группировка

c. Конкатенация

Конкатенация

Создание DataFrame, переход Dict в Series

series_sample = pd.Series([100, 200, 300, 400]) print(series_sample)

Пример создания серии

Мы создали серию. Вы можете видеть, что отображаются 2 столбца. Первый столбец содержит значения индекса, начиная с 0. Второй столбец содержит элементы, переданные как серии.

Можно создать DataFrame, передав словарь Series. Давайте создадим DataFrame, который формируется путем объединения и передачи индексов ряда.

d = df = pd.DataFrame(d) print(df)

Создание DataFrame

Для первой серии, поскольку мы не указали метку ‘d’, возвращается NaN.

Выбор столбца, добавление и удаление

d = df = pd.DataFrame(d) print(df['Matches played'])

Приведенный выше код печатает только столбец «Matches played» в DataFrame.

Выбор столбца

d = df = pd.DataFrame(d) df['Runrate']=pd.Series([80, 70, 60, 50], index=['Sachin', 'Kohli', 'Raina', 'Dravid']) print(df)

Добавление

Удаление

Заключение

В этом руководстве у нас было краткое введение в библиотеку Pandas в Python. Мы также сделали практические примеры, чтобы раскрыть возможности библиотеки, используемой в области науки о данных. Мы также рассмотрели различные структуры данных в библиотеке Python.

Источник

Оцените статью