Создание пустого DataFrame Pandas и добавление данных
В этой статье вы узнаете, как создать пустой DataFrame в Pandas и как добавлять в него данные. В частности, вы научитесь создавать DataFrame, создавать его с заголовками столбцов, добавлять строки по одной и добавлять строки с помощью цикла.
Оглавление
Создание пустого DataFrame Pandas
Для начала импортируем библиотеку Pandas под псевдонимом pd:
import pandas as pdСоздание полностью пустого DataFrame Pandas очень простое. Мы просто создаём объект DataFrame, не передавая в него никаких данных:
df = pd.DataFrame()
print(df)Empty DataFrame
Columns: []
Index: []Из вывода видно, что DataFrame пустой.
Однако мы также можем проверить, является ли он пустым, с помощью атрибута Pandas .empty, который возвращает булево значение, указывающее, пуст ли DataFrame:Из вывода видно, что DataFrame пустой.
Создание пустого DataFrame Pandas с заголовками столбцов
Могут возникнуть ситуации, когда вы уже знаете, какие столбцы хотите иметь в DataFrame, но пока не располагаете данными для них (подробнее об этом — в разделе о добавлении данных в пустой DataFrame ниже).
Для этого мы можем использовать параметр columns=, передав в него список названий столбцов при создании объекта DataFrame. Давайте создадим DataFrame со следующими столбцами: Name (Имя), Age (Возраст), Birth City (Город рождения) и Gender (Пол):
This prints out the following, indicating that we now have an empty dataframe but with columns attached to it:
Создание пустого DataFrame Pandas с заголовками столбцов и индексами
Аналогично описанной выше ситуации, могут быть случаи, когда вы заранее знаете не только названия столбцов, но и значения индексов DataFrame, однако данные пока отсутствуют.
Мы можем создать такой DataFrame, указав как параметр columns=, так и параметр index=. Давайте создадим тот же DataFrame, что и выше, но используем столбец Name в качестве индекса и укажем несколько примерных индексов:
Теперь, технически, это уже не совсем пустой DataFrame. Это просто DataFrame без данных. Мы можем проверить это с помощью атрибута .empty:
Это возвращает False.
Добавление данных в пустой DataFrame
Теперь, когда у нас есть DataFrame с заголовками столбцов и индексами, мы можем использовать .loc для добавления данных. Если вы хотите узнать больше о методе .loc, ознакомьтесь с моим руководством по этой ссылке.
Давайте добавим данные в запись с индексом Jane:
Добавление данных в пустой DataFrame Pandas
Аналогично добавлению строк по одной с помощью метода .loc, мы также можем использовать метод .append() для добавления строк.
Метод .append() работает следующим образом: он добавляет один DataFrame к другому.
Давайте добавим ту же строку, что и выше, с помощью метода append:
Чтобы ускорить процесс, мы также можем использовать цикл for для добавления данных. Это рассмотрено ниже.
Добавление данных в пустой DataFrame Pandas с помощью цикла
Могут возникнуть ситуации, когда необходимо добавить несколько наборов данных в DataFrame. Это можно упростить с помощью цикла for, например, для чтения нескольких файлов и их объединения. Если вы хотите узнать больше о циклах for в Python, ознакомьтесь с моей статьёй по этой ссылке.
В приведённом ниже примере мы будем работать с разными списками, но метод работает одинаково хорошо и при чтении данных из нескольких файлов.
Мы используем аргумент ignore_index=True, чтобы убедиться, что создаются новые индексы. В противном случае при объединении нескольких DataFrame индексы могут дублироваться.
Заключение
В этой статье вы узнали, как создать пустой DataFrame, как с указанием столбцов, так и без них. После этого вы научились добавлять данные в пустой DataFrame — как единожды, так и с использованием цикла for.
Чтобы узнать больше о классе pandas.DataFrame, ознакомьтесь с официальной документацией по этой ссылке.
Для получения дополнительной информации о методе .append() см. официальную документацию по этой ссылке.
Последнее обновление