Сводные таблицы продолжают оставаться одним из самых уважаемых и широко используемых инструментов в MS Excel. Являетесь ли вы аналитиком данных, инженером данных или просто обычным пользователем, скорее всего, у вас уже есть слабость к MS Excel.

Тем не менее, расширяются возможности для воспроизведения инструментов и утилит MS Excel, особенно в Python. Знаете ли вы, что вы можете создавать обширные сводные таблицы в Python DataFrames с помощью нескольких строк кода?

Да, это правильно; если вы заинтригованы, вот как вы можете это сделать.

Предварительные условия для создания сводных таблиц

Как и любой другой язык программирования, даже Python требует, чтобы вы выполнили несколько предварительных условий, прежде чем сможете приступить к программированию.

Чтобы получить максимально оптимизированный опыт при создании вашей самой первой сводной таблицы в Python, вам понадобится следующее:

  • IDE Python: В большинстве кодов Python есть интегрированная среда разработки (IDE), предварительно установленная в их системе. Есть несколько
    instagram viewer
    IDE, совместимые с Python, на рынке, включая Jupyter Notebook, Spyder, PyCharm и многие другие.
  • Образец данных: Для иллюстрации вот пример набора данных, над которым вы можете работать. Кроме того, не стесняйтесь настраивать эти коды непосредственно в ваших текущих данных.

Ссылка на образец данных:Образец супермаркета

Импорт основных библиотек

Так как Python работает на концепции сторонних библиотек, вам необходимо импортировать Панды библиотека для создания сводок.

Вы можете использовать Pandas для импортировать файл Excel в Python и сохранить данные в DataFrame. Чтобы импортировать Pandas, используйте импорт команда следующим образом:

импорт панды в качестве пд

Как создавать сводки в Python

Поскольку библиотека теперь доступна, вам нужно импортировать файл Excel в Python, который является основой для создания и тестирования сводных данных в Python. Сохраните импортированные данные в DataFrame со следующим кодом:

# Создаем новый DataFrame
# замените здесь свой собственный путь
путь = "C://Пользователи//пользователь/OneDrive//Рабочий стол//"
# здесь вы можете определить имя файла
файл = "Образец — Superstore.xls"
df = pd.read_excel (путь + файл)
дф.глава()

Где:

  • ДФ: Имя переменной для хранения данных DataFrame
  • пд: Псевдоним для библиотеки Pandas
  • read_excel(): Функция Pandas для чтения файла Excel в Python
  • дорожка: Место, где хранится файл Excel (Sample Superstore)
  • файл: имя файла для импорта
  • глава(): Отображает первые пять строк DataFrame по умолчанию.

Приведенный выше код импортирует файл Excel в Python и сохраняет данные в DataFrame. Наконец, глава Функция отображает первые пять строк данных.

Эта функция удобна для обеспечения правильного импорта данных в Python.

Какие поля сводной таблицы существуют в Python?

Как и его аналог Excel, сводная таблица имеет аналогичный набор полей в Python. Вот несколько полей, о которых вам нужно знать:

  • Данные: Поле данных относится к данным, хранящимся в Python DataFrame.
  • Ценности: Столбчатые данные, используемые в сводной таблице
  • Индекс: Индексный столбец (столбцы) для группировки данных
  • Столбцы: Столбцы помогают агрегировать существующие данные в DataFrame.

Цель использования индексной функции

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

Предположим, вы хотите увидеть некоторые агрегированные значения для продуктов, перечисленных в Сегмент столбец. Вы можете вычислить предопределенную совокупность (среднее значение) в Python, определив назначенный столбец как значение индекса.

df.pivot_table (индекс = "Сегмент")

Где:

  • дф:DataFrame, содержащий данные
  • сводная_таблица:Функция сводной таблицы в Python
  • индекс: Встроенная функция для определения столбца как индекса.
  • Сегмент: столбец для использования в качестве значения индекса

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

Как использовать мультииндексные значения

Если вы хотите использовать несколько столбцов индекса, вы можете определить имена столбцов в список внутри индексной функции. Все, что вам нужно сделать, это указать имена столбцов в наборе квадратных скобок ([ ]), как показано ниже:

df.pivot_table (индекс = ["Категория", "Подкатегория"])

Функция Pivot устанавливает отступ для столбца индекса в выходных данных. Python отображает иметь в виду всех числовых значений против каждого значения индекса.

Научитесь ограничивать значения в выводе

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

df.pivot_table (индекс = ["Область, край", "Категория", "Подкатегория"], значения = "Продажи")

В окончательном выводе будет три индексных столбца и средние значения для столбца «Продажи» для каждого элемента.

Определение агрегатных функций в сводной таблице

Что произойдет, если вы не хотите вычислять средние значения по умолчанию? Сводная таблица имеет множество других функций, выходящих за рамки вычисления простого среднего значения.

Вот как написать код:

df.pivot_table (индекс = ["Категория"], значения = "Продажи", aggfunc = [сумма, макс, мин, длина])

Где:

  • сумма: Вычисляет сумму значений
  • Максимум: Вычисляет максимальное значение
  • мин: Вычисляет максимальное значение
  • Лен: Вычисляет количество значений

Вы также можете определить каждую из этих функций в отдельных строках кода.

Как добавить общие итоги в сводную таблицу

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

df.pivot_table (индекс = ["Категория"], значения = "Продажи", aggfunc = [сумма, макс, мин, длина], поля = Истина, имя поля ='Общие итоги')

Где:

  • поля: Функция подсчета общего итога
  • поля_имя: Укажите название категории в столбце индекса (например, Общие итоги)

Изменить и использовать окончательный код

Вот окончательное краткое описание кода:

импорт панды в качестве пд
# замените здесь свой собственный путь
путь = "C://Пользователи//пользователь/OneDrive//Рабочий стол//"
# здесь вы можете определить имя файла
файл = "Образец — Superstore.xls"
df = pd.read_excel (путь + файл)
df.pivot_table (индекс = ["Область, край", "Категория", "Подкатегория"], значения = "Продажи",
aggfunc = [сумма, макс, мин, длина],
поля =Истинный,
поля_имя='Общие итоги')

Создание сводных таблиц в Python

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

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

С Python всегда есть что-то новое на горизонте.