Как запустить ожидания больших ожиданий в нескольких столбцах?

Я хочу использовать набор тестов Great Expectations для выполнения одинаковых проверок во многих столбцах. . Я вижу, что есть закрытый запрос функции, чтобы сделать это встроенным ожидание, но можно ли это сделать с помощью цикла for над именами столбцов?

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


person crypdick    schedule 18.08.2020    source источник


Ответы (1)


К сожалению, если вы ищете в документах filter(), там нет ничего задокументированного, но если вы проверите type(batch), вы увидите, что это great_expectations.dataset.pandas_dataset.PandasDataset, который согласно документации подклассы pandas.DataFrame.

Таким образом, вы можете фильтровать столбцы, как если бы вы использовали обычный фрейм данных, используя batch.filter(), и запускать цикл for для столбцов:

Ожидания по отфильтрованным столбцам

Однако есть одна загвоздка: вы не можете запускать ожидания непосредственно в отфильтрованном DataFrame; вместо этого вам нужно запустить ожидания на исходном наборе данных batch, иначе вы получите ошибки при попытке выполнить filtered_df.save_expectation_suite()

Ожидаемые результаты

person crypdick    schedule 18.08.2020