Сводные таблицы продолжают оставаться одним из самых уважаемых и широко используемых инструментов в MS Excel. Являетесь ли вы аналитиком данных, инженером данных или просто обычным пользователем, скорее всего, у вас уже есть слабость к MS Excel.
Тем не менее, расширяются возможности для воспроизведения инструментов и утилит MS Excel, особенно в Python. Знаете ли вы, что вы можете создавать обширные сводные таблицы в Python DataFrames с помощью нескольких строк кода?
Да, это правильно; если вы заинтригованы, вот как вы можете это сделать.
Предварительные условия для создания сводных таблиц
Как и любой другой язык программирования, даже Python требует, чтобы вы выполнили несколько предварительных условий, прежде чем сможете приступить к программированию.
Чтобы получить максимально оптимизированный опыт при создании вашей самой первой сводной таблицы в Python, вам понадобится следующее:
- IDE Python: В большинстве кодов Python есть интегрированная среда разработки (IDE), предварительно установленная в их системе. Есть несколько 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 всегда есть что-то новое на горизонте.