РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
685 of 687 menu

Функция assert_frame_equal

Функция assert_frame_equal применяется для проверки идентичности двух объектов DataFrame. Она выбрасывает исключение, если таблицы не совпадают. Функция полезна в тестировании для проверки результатов работы кода. Основные параметры: left и right - сравниваемые DataFrame, check_dtype - проверять ли типы данных, check_index_type - проверять ли типы индексов, check_column_type - проверять ли типы столбцов.

Синтаксис

pd.testing.assert_frame_equal(left, right, check_dtype=True, check_index_type=False, check_column_type=False)

Пример

Давайте сравним два идентичных DataFrame:

import pandas as pd df1 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }) df2 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }) pd.testing.assert_frame_equal(df1, df2) print("DataFrame are equal")

Результат выполнения кода:

"DataFrame are equal"

Пример

Сравним DataFrame с разными значениями. Функция выбросит исключение:

import pandas as pd df1 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }) df2 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 7] }) pd.testing.assert_frame_equal(df1, df2)

Результат выполнения кода:

"AssertionError: DataFrame.iloc[:, 1] (column name='b') are different"

Пример

Отключим проверку типов данных с помощью параметра check_dtype:

import pandas as pd df1 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }) df2 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4.0, 5.0, 6.0] }) pd.testing.assert_frame_equal(df1, df2, check_dtype=False) print("DataFrame are equal")

Результат выполнения кода:

"DataFrame are equal"

Пример

Используем параметр check_index_type для проверки типа индексов:

import pandas as pd df1 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }, index=[0, 1, 2]) df2 = pd.DataFrame({ 'a': [1, 2, 3], 'b': [4, 5, 6] }, index=['0', '1', '2']) pd.testing.assert_frame_equal(df1, df2, check_index_type=True)

Результат выполнения кода:

"AssertionError: Index type are different"

Смотрите также

  • функция assert_series_equal,
    которая сравнивает два объекта Series
  • функция assert_index_equal,
    которая сравнивает два объекта Index
  • функция assert_frame_equal,
    которая сравнивает два объекта DataFrame
  • функция assert_series_equal,
    которая сравнивает два объекта Series
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить