Метод Pandas DataFrame append() в Python с примерами

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

Что такое функция DataFrame append() в Pandas?

Метод Pandas DataFrame append() используется в Python для добавления строк одного DataFrame в конец другого. После добавления он возвращает новый объект.

Функция append() не изменяет исходный DataFrame. Столбцы, отсутствующие в первом фрейме данных, добавляются во второй, а новые ячейки заполняются значением NaN. Функция DataFrame append() возвращает новый объект DataFrame и не изменяет исходные объекты. Вам нужно назначить обратно добавленный DataFrame.

Синтаксис

Параметры

Функция append() имеет следующие параметры:

  • other: это DataFrame или серия.
  • ignore_index: если этот параметр имеет значение true, то не используйте метки индекса.
  • verify_integrity: это также логическое значение, и по умолчанию оно равно false. Если это правда, он вызывает ValueError при создании индекса с дубликатами.
  • sort: сортирует все столбцы, если столбцы self и other не выровнены.

Возвращаемое значение

Функция df.append() возвращает добавленный DataFrame.

Примеры программ с DataFrame append()

  • Напишем программу, показывающую работу метода append() в Python.

Выход:

В приведенном выше примере мы создали два фрейма данных. Затем мы использовали функцию append() для добавления данных обоих DataFrames, а затем распечатали объединенные данные.

  • Добавим данные двух таких фреймов данных, к которым добавлен фрейм данных с некоторыми значениями NaN.

Выход:

Здесь мы создали два фрейма данных. В первом DataFrame у нас есть 2 столбца, во втором 3 столбца.

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

Повышение ValueError для повторяющихся индексов

Мы можем передать verify_integrity=True, чтобы поднять ValueError, если в двух объектах DataFrame есть повторяющиеся индексы.

Выход:

В выводе видно ValueError: индексы имеют перекрывающиеся значения: Int64Index([0, 1], dtype=’int64′) был поднят.

Теперь давайте посмотрим на другой пример, где у нас нет повторяющихся индексов.

Выход:

Вы можете видеть, что значения col1 и col2 объединены в dataframe3.

Добавление объектов DataFrame с несовпадающими столбцами

Выход:

Мы явно передаем параметр sort=False, чтобы избежать сортировки столбцов и игнорировать FutureWarning. Если вы не передадите параметр sort=False, выходные данные будут содержать следующее предупреждающее сообщение.

Что если мы передаем sort=True.

Выход:

Обратите внимание, что столбцы в результирующем объекте DataFrame отсортированы. Обратите внимание, что эта функция устарела и будет удалена из будущих выпусков.

Вставка и удаление строк в Pandas DataFrame

Как мы видели, вы можете добавить john в качестве новой строки в конец df с помощью метода .append().

Давайте создадим DataFrame и серию и добавим эту серию в DataFrame, используя метод append().

Выход:

Здесь .append() возвращает Pandas DataFrame с добавленной новой строкой. Обратите внимание, как Pandas использует атрибуты series.Name и series.ID, которые являются значениями Elsa и 21, чтобы указать метку для новой строки.

Вот и все. Мы добавили новую строку в DataFrame одним вызовом .append() и можем удалить ее одним вызовом .drop().

Добавление строк в pd.DataFrame с использованием цикла for

Добавление строк в pandas.DataFrame с помощью цикла for использует его для перебора списка строк, что в конечном итоге приводит к их добавлению в DataFrame.

Внутри цикла for:

  1. Объедините имена столбцов в качестве ключей с данными столбцов в качестве значений, используя zip(ключи, значения).
  2. Создайте словарь с заархивированным итератором, используя dict(zip).
  3. Сохраните созданный словарь в списке.

Затем добавьте список словарей с именем data в существующий DataFrame, используя pandas.Dataframe.append(data, ignore_index=None). Установите ignore_index как True, чтобы сохранить индексы DataFrame.

См. следующий код.

Выход:

В этом примере сначала мы создали DataFrame и распечатали его. Затем мы получили столбцы этого DataFrame, используя метод list(). И, наконец, я определил пустой список.

Внутри цикла for сначала мы создаем список из 3 значений, который увеличивается на 1. Затем мы создаем итератор, а затем преобразуем его в словарь с помощью метода dict(), а затем добавляем данные в список.

Затем я добавил эти данные с помощью функции df.append() в DataFrame. Вы можете видеть, что мы добавили строки с индексами 1 и 2. Мы добавили две строки в существующий DataFrame, используя функцию range(), цикл for, функцию zip(), функцию dict(), функцию list append() и функцию df.append().

Но этот подход не рекомендуется для добавления DataFrame, поскольку он занимает больше времени.

Заключение

Метод Pandas DataFrame append() в Python

В этом руководстве мы увидели, как добавить один DataFrame в другой, как добавить данные, строки и данные с помощью цикла for.

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

Автор статей и разработчик, делюсь знаниями.

Программирование на Python