Добавить Dict в DataFrame в Pandas

Dobavit Dict V Dataframe V Pandas



Мы обсудим, как добавить словарь к существующему DataFrame Pandas с помощью функций pandas.DataFrame.append() и pandas.concat() с примерами. Здесь словарь относится к паре ключ:значение, так что ключ относится к существующим меткам столбцов, присутствующим в DataFrame, и значения добавляются в строку. Кроме того, мы увидим примеры добавления нескольких словарей в DataFrame Pandas.

Использование Pandas.DataFrame.Append

Функция pandas.DataFrame.append() используется для добавления строк другого DataFrame к существующему DataFrame. Если столбцы в существующем DataFrame не существуют, в существующем DataFrame создаются другие столбцы DataFrame. Используйте эту функцию таким образом, чтобы строку нужно было вставить в DataFrame путем добавления словаря.

Синтаксис :







Ниже приведен фактический синтаксис функции pandas.DataFrame.append():



панды. DataFrame . добавить ( другой , ignore_index , проверить_целостность , Сортировать )
  1. другой : Это относится к другому DataFrame, в котором строки этого DataFrame добавляются к существующему DataFrame. Если вы хотите добавить одну строку, вам необходимо передать словарь значений в качестве параметра.
  2. ignore_index (по умолчанию = False): этот параметр используется при добавлении строк в DataFrame, в котором уже есть строки. Если значение «False», индексы существующих строк также добавляются. Если это «True», строки помечаются от 0 до n-1. Убедитесь, что для этого параметра установлено значение «True» при добавлении словаря в DataFrame. В противном случае выдается тип ошибки: «TypeError: можно добавить словарь только в том случае, если ignore_index=True».
  3. Мы можем проверить дубликаты индексов, используя параметрverify_integrity (по умолчанию = False). Если индексы повторяются и для параметраverify_integrity установлено значение «True», возвращается «ValueError: Индексы имеют перекрывающиеся значения».
  4. Сортировать столбцы, если столбцы существующего DataFrame и другого DataFrame не выровнены, можно с помощью параметра сортировки, установив для него значение «True» (по умолчанию = False).

Пример 1. Добавление одного словаря

Создайте DataFrame Pandas с четырьмя столбцами — «Campaign_Name», «Location», «StartDate» и «Budget» — и тремя строками. Добавьте словарь к этому DataFrame.



Импортировать панды

# Создать DataFrame — кампания с 4 столбцами и 3 строками
Кампания '=' панды. DataFrame ( [ [ «Маркетинговый лагерь» , 'Индия' , '12.01.2023' , 8000 ] ,
[ «Лагерь продаж» , 'Италия' , '25.01.2022' , 10000 ] ,
[ «Другой лагерь» , 'США' , '17.04.2023' , 2000 г. ] ] ,
столбцы '=' [ 'Название кампании' , 'Расположение' , 'Дата начала' , 'Бюджет' ] )
Распечатать ( Кампания , ' \п ' )

# Добавить одну строку
Кампания '=' Кампания. добавить ( { 'Название кампании' : «Технический лагерь» , 'Расположение' : 'США' , 'Дата начала' : '12.05.2023' , 'Бюджет' : 2000 г. } , ignore_index '=' Истинный )
Распечатать ( Кампания , ' \п ' )

Выход :





Мы видим, что словарь добавлен в DataFrame «Кампания». Индекс этой новой строки равен 3, поскольку индекс игнорируется.



Пример 2. Добавление нескольких словарей

Используйте тот же DataFrame, который создан в примере 1, и добавляйте по три строки за раз, используя функцию pandas.DataFrame.append(). Установите для параметра ignore_index значение «True».

Импортировать панды

# Создать DataFrame — кампания с 4 столбцами и 3 строками
Кампания '=' панды. DataFrame ( [ [ «Маркетинговый лагерь» , 'Индия' , '12.01.2023' , 8000 ] ,
[ «Лагерь продаж» , 'Италия' , '25.01.2022' , 10000 ] ,
[ «Другой лагерь» , 'США' , '17.04.2023' , 2000 г. ] ] ,
столбцы '=' [ 'Название кампании' , 'Расположение' , 'Дата начала' , 'Бюджет' ] )
Распечатать ( Кампания , ' \п ' )

Кампания '=' Кампания. добавить ( { 'Название кампании' : «Технический лагерь» , 'Расположение' : 'США' , 'Дата начала' : '12.05.2023' , 'Бюджет' : 2000 г. } , ignore_index '=' Истинный )
Кампания '=' Кампания. добавить ( { 'Название кампании' : «Маркетинговый лагерь» , 'Расположение' : 'Индия' , 'Дата начала' : '23.06.2023' , 'Бюджет' : 9000 } , ignore_index '=' Истинный )
Кампания '=' Кампания. добавить ( { 'Название кампании' : «Лагерь MSSales» , 'Расположение' : 'Италия' , 'Дата начала' : '24.01.2023' , 'Бюджет' : 1200 } , ignore_index '=' Истинный )
Распечатать ( Кампания )

Выход :

Три строки добавляются одна за другой с индексами 3, 4 и 5 к существующему DataFrame.

Использование Pandas.Concat

Функция pandas.concat() объединяет два или более DataFrame по строкам или столбцам. Итак, нам нужно преобразовать словарь в DataFrame и передать в эту функцию два DataFrame.

Синтаксис :

Добавьте словарь к существующему DataFrame:

панды. конкат ( [ Существующий_фрейм данных , Трансформированный_словарь ] , ось '=' 0 , ignore_index , проверить_целостность )
  1. Если ось = 0, объединение выполняется вдоль строк. Объединение производится по столбцам, если установлено Применено необходимое написание заглавных букв, так как это подзаголовок. Добавлена ​​необходимая статья для краткости.в 1.
  2. ignore_index (по умолчанию = False): этот параметр используется при добавлении строк в DataFrame, в котором уже есть строки. Если значение «False», индексы существующих строк также добавляются. Если это «True», строки помечаются от 0 до n-1.
  3. Мы можем проверить дубликаты индексов, используя параметрverify_integrity (по умолчанию = False). Если индексы повторяются и для параметраverify_integrity установлено значение «True», возвращается «ValueError: Индексы имеют перекрывающиеся значения».

Пример 1. Добавление одного словаря

Создайте DataFrame Pandas с четырьмя столбцами — «Campaign_Name», «Location», «StartDate» и «Budget» — и тремя строками. Используя функцию pandas.concat(), добавьте один словарь (DataFrame) в качестве строки к этому DataFrame.

Импортировать панды


# Создать DataFrame — кампания с 4 столбцами и 3 строками
Кампания '=' панды. DataFrame ( [ [ «Маркетинговый лагерь» , 'Индия' , '12.01.2023' , 8000 ] ,
[ «Лагерь продаж» , 'Италия' , '25.01.2022' , 10000 ] ,
[ «Другой лагерь» , 'США' , '17.04.2023' , 2000 г. ] ] ,
столбцы '=' [ 'Название кампании' , 'Расположение' , 'Дата начала' , 'Бюджет' ] )
Распечатать ( Кампания , ' \п ' )

словарь_from_DataFrame '=' панды. DataFrame ( [ { 'Название кампании' : «Служебный лагерь» , 'Расположение' : 'США' , 'Дата начала' : '17.04.2023' , 'Бюджет' : 1000 } ] )

# Добавить одну строку
Кампания '=' панды. конкат ( [ Кампания , словарь_from_DataFrame ] , ось '=' 0 )
Распечатать ( Кампания , ' \п ' )

Выход :

Мы видим, что словарь добавлен в DataFrame «Кампания». Индекс этой новой строки равен 0, поскольку индекс не игнорируется.

Пример 2. Добавление нескольких словарей

Используйте предыдущий DataFrame и добавьте три словаря (DataFrame), игнорируя индекс.

Импортировать панды


# Создать DataFrame — кампания с 4 столбцами и 3 строками
Кампания '=' панды. DataFrame ( [ [ «Маркетинговый лагерь» , 'Индия' , '12.01.2023' , 8000 ] ,
[ «Лагерь продаж» , 'Италия' , '25.01.2022' , 10000 ] ,
[ «Другой лагерь» , 'США' , '17.04.2023' , 2000 г. ] ] ,
столбцы '=' [ 'Название кампании' , 'Расположение' , 'Дата начала' , 'Бюджет' ] )
Распечатать ( Кампания , ' \п ' )

словарь_from_DataFrame '=' панды. DataFrame ( [ { 'Название кампании' : «Технический лагерь» , 'Расположение' : 'США' , 'Дата начала' : '17.05.2023' , 'Бюджет' : 1000 } ,
{ 'Название кампании' : 'Социальные службы' , 'Расположение' : 'Япония' , 'Дата начала' : '17.04.2023' , 'Бюджет' : 200 } ,
{ 'Название кампании' : «Лагерь продаж» , 'Расположение' : 'США' , 'Дата начала' : '18.04.2023' , 'Бюджет' : 500 } ] )

# Добавляем несколько строк
Кампания '=' панды. конкат ( [ Кампания , словарь_from_DataFrame ] , ось '=' 0 , ignore_index '=' Истинный )
Распечатать ( Кампания , ' \п ' )

Выход :

Мы видим, что к фрейму данных «Кампания» добавлены три словаря. Индексы этих словарей равны 3, 4 и 5, поскольку для параметра ignore_index установлено значение «False».

Заключение

Одиночные/множественные словари добавляются к DataFrame с помощью функций pandas.DataFrame.append() и pandas.concat(). Индексы новых строк могут быть уникальными, если для параметра ignore_index установить значение «True» в функции pandas.concat(). При использовании функции pandas.DataFrame.append() установите для параметра ignore_index значение «True». В противном случае возникает TypeError.