Метод all
Метод all применяется к DataFrame
и возвращает Series или bool, указывающее,
все ли элементы истинны. По умолчанию метод проверяет
каждый столбец на наличие только истинных значений.
Параметр axis задаёт направление проверки:
0 (по умолчанию) или 'index' для проверки столбцов,
1 или 'columns' для проверки строк.
Параметр skipna определяет, нужно ли пропускать
значения NaN (по умолчанию True).
Если skipna=False и встречается NaN,
метод вернёт False. Параметр bool_only
позволяет проверять только булевы столбцы.
Синтаксис
df.all(axis=0, skipna=True, bool_only=False)
Пример
Давайте проверим, все ли значения в столбцах истинны:
import pandas as pd
df = pd.DataFrame({
'a': [True, True, True],
'b': [True, False, True]
})
print(df.all())
Результат выполнения кода:
a True
b False
dtype: bool
Пример
Проверим все ли значения в каждой строке истинны.
Для этого укажем параметр axis равным 1:
import pandas as pd
df = pd.DataFrame({
'a': [True, False, True],
'b': [True, True, True]
})
print(df.all(axis=1))
Результат выполнения кода:
0 True
1 False
2 True
dtype: bool
Пример
Рассмотрим поведение с пропущенными значениями.
По умолчанию NaN пропускается:
import pandas as pd
df = pd.DataFrame({
'a': [True, None, True],
'b': [True, True, True]
})
print(df.all())
Результат выполнения кода:
a True
b True
dtype: bool
Пример
Если отключить пропуск NaN через параметр
skipna=False, то наличие NaN приведёт
к результату False:
import pandas as pd
df = pd.DataFrame({
'a': [True, None, True],
'b': [True, True, True]
})
print(df.all(skipna=False))
Результат выполнения кода:
a False
b True
dtype: bool
Пример
Метод all можно использовать и для Series.
В этом случае возвращается одно булево значение:
import pandas as pd
ser = pd.Series([True, True, True])
print(ser.all())
Результат выполнения кода:
True
Пример
Если передать в метод all пустую Series,
то результатом будет True:
import pandas as pd
ser = pd.Series([])
print(ser.all())
Результат выполнения кода:
True