Чтобы проверить, не является ли значение ячейки числом в 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.