Метод any
Метод any применяется к DataFrame
и проверяет наличие хотя бы одного истинного
значения в данных. По умолчанию проверка
выполняется вдоль оси 0 (строки),
то есть для каждого столбца. Параметр axis
позволяет изменить направление проверки на
оси 1 (столбцы). Параметр skipna
определяет, учитывать ли пропущенные значения
NaN (по умолчанию они игнорируются).
Синтаксис
df.any([axis, skipna, level, bool_only])
Пример
Создадим таблицу с разными значениями и проверим наличие истинных элементов в каждом столбце:
import pandas as pd
df = pd.DataFrame({
'a': [0, 0, 0],
'b': [0, 1, 0],
'c': [False, False, False]
})
res = df.any()
print(res)
Результат выполнения кода:
a False
b True
c False
dtype: bool
Пример
Теперь выполним проверку вдоль оси столбцов, чтобы получить результат для каждой строки:
import pandas as pd
df = pd.DataFrame({
'a': [0, 5, 0],
'b': [0, 0, 7],
'c': [0, 0, 0]
})
res = df.any(axis=1)
print(res)
Результат выполнения кода:
0 False
1 True
2 True
dtype: bool
Пример
Рассмотрим работу метода с пропущенными значениями.
По умолчанию NaN игнорируются, но если
задать skipna=False, то наличие любого
NaN в столбце сделает результат True,
так как NaN считается истинным:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, 2, np.nan],
'b': [0, 0, 0]
})
res = df.any(skipna=False)
print(res)
Результат выполнения кода:
a True
b False
dtype: bool