Проверьте, не является ли значение ячейки числом (NaN) в Pandas

Чтобы проверить, не является ли значение ячейки числом в pandas, вы можете использовать следующие методы с примерами кода:

Метод 1: использование функции pd.to_numericи функции np.isnan:

import pandas as pd
import numpy as np
# Example DataFrame
df = pd.DataFrame({'A': ['1', '2', '3', 'foo', '5']})
# Check if cell value is not a number
df['Numeric'] = pd.to_numeric(df['A'], errors='coerce')
df['Is_Not_Number'] = np.isnan(df['Numeric'])
print(df)

Выход:

     A  Numeric  Is_Not_Number
0    1      1.0          False
1    2      2.0          False
2    3      3.0          False
3  foo      NaN           True
4    5      5.0          False

В этом методе мы преобразуем столбец в числовой, используя pd.to_numericс errors='coerce', чтобы заменить нечисловые значения на NaN. Затем мы используем np.isnan, чтобы проверить, является ли значение NaNили нет.

Метод 2: использование функций pd.to_numericи pd.isna:

import pandas as pd
# Example DataFrame
df = pd.DataFrame({'A': ['1', '2', '3', 'foo', '5']})
# Check if cell value is not a number
df['Numeric'] = pd.to_numeric(df['A'], errors='coerce')
df['Is_Not_Number'] = pd.isna(df['Numeric'])
print(df)

Выход:

     A  Numeric  Is_Not_Number
0    1      1.0          False
1    2      2.0          False
2    3      3.0          False
3  foo      NaN           True
4    5      5.0          False

Здесь мы также используем pd.to_numericдля преобразования столбца в числовой с помощью errors='coerce', а затем используем pd.isnaчтобы проверить, является ли значение NaNили нет.

Метод 3: использование функций pd.to_numericи pd.notna:

import pandas as pd
# Example DataFrame
df = pd.DataFrame({'A': ['1', '2', '3', 'foo', '5']})
# Check if cell value is not a number
df['Numeric'] = pd.to_numeric(df['A'], errors='coerce')
df['Is_Not_Number'] = pd.notna(df['Numeric'])
print(df)

Выход:

     A  Numeric  Is_Not_Number
0    1      1.0           True
1    2      2.0           True
2    3      3.0           True
3  foo      NaN          False
4    5      5.0           True

В этом методе мы также используем pd.to_numericдля преобразования столбца в числовой с помощью errors='coerce', а затем используем pd.notna, чтобы проверить, не является ли значение NaN.