РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
447 of 687 menu

Метод isnumeric

Метод isnumeric применяется к текстовым данным серии через аксессор str и проверяет, содержат ли строки только числовые символы. Метод возвращает серию булевых значений, где ⁅b⁆True⁅/b⁆ означает, что строка полностью состоит из числовых символов, а ⁅b⁆False⁅/b⁆ - в противном случае. К числовым символам относятся не только цифры 0-9, но и другие символы Юникода, обозначающие числа, например, римские цифры или дробные символы.

Метод не принимает никаких параметров и возвращает серию типа bool. Важно отметить, что пустая строка или строка с пробелами вернут ⁅b⁆False⁅/b⁆.

Синтаксис

ser.str.isnumeric()

Пример

Проверим, какие строки в серии состоят только из числовых символов:

import pandas as pd ser = pd.Series(['123', 'abc', '456', '12a', '789']) res = ser.str.isnumeric() print(res)

Результат выполнения кода:

0 True 1 False 2 True 3 False 4 True dtype: bool

Пример

Рассмотрим работу метода с числами в разных системах счисления и специальными символами:

import pandas as pd ser = pd.Series(['123', '½', 'Ⅲ', '1.5', '1,5']) res = ser.str.isnumeric() print(res)

Результат выполнения кода:

<+text+> 0 True 1 True 2 True 3 False 4 False dtype: bool <-python->

Как видно из примера, дробные символы (½) и римские цифры (Ⅲ) считаются числовыми, а десятичные дроби с точкой или запятой - нет.

Пример

Используем метод isnumeric для фильтрации серии. Оставим только строки, состоящие из числовых символов:

import pandas as pd ser = pd.Series(['123', 'abc', '456', '12a', '789', '']) mask = ser.str.isnumeric() res = ser[mask] print(res)

Результат выполнения кода:

0 123 2 456 4 789 dtype: object

Обратите внимание, что пустая строка также отфильтровалась, так как метод вернул для неё ⁅b⁆False⁅/b⁆.

Пример

Применим метод isnumeric к столбцу таблицы DataFrame:

import pandas as pd df = pd.DataFrame({ 'a': ['123', '456', 'abc', '789'], 'b': [1, 2, 3, 4] }) res = df['a'].str.isnumeric() print(res)

Результат выполнения кода:

0 True 1 True 2 False 3 True Name: a, dtype: bool

Смотрите также

  • метод isdigit,
    который проверяет, состоят ли строки только из цифр
  • метод isalpha,
    который проверяет, состоят ли строки только из букв
  • метод isalnum,
    который проверяет, состоят ли строки из букв и цифр
  • метод isdecimal,
    который проверяет, состоят ли строки из десятичных цифр
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить