Spec-Zone.ru › pandas 0.21

pandas.to_numeric

pandas.to_numeric(arg, errors='raise', downcast=None) [source]

Преобразование аргумента к числовому типу.

Параметры:

arg : список, кортеж, одномерный массив или Series

errors : {‘ignore’, ‘raise’, ‘coerce’}, по умолчанию ‘raise’

  • Если ‘raise’, некорректное разбор вызовет исключение
  • Если ‘coerce’, некорректное разбор будет приведено к NaN
  • Если ‘ignore’, некорректное разбор вернёт входное значение

downcast : {‘integer’, ‘signed’, ‘unsigned’, ‘float’} , по умолчанию None

Если не None, и если данные были успешно преобразованы к числовому типу (или если данные изначально были числовыми), понизьте тип данных до наименьшего возможного числового типа в соответствии со следующими правилами:

  • ‘integer’ или ‘signed’: наименьший тип данных со знаком int (мин.: np.int8)
  • ‘unsigned’: наименьший тип данных без знака int (мин.: np.uint8)
  • ‘float’: наименьший тип данных float (мин.: np.float32)

Поскольку это поведение отделено от основного преобразования в числовые значения, любые ошибки, возникшие во время понижения типа данных, будут отображаться независимо от значения входного параметра ‘errors’.

Кроме того, понижение типа данных произойдёт только в том случае, если размер типа данных результирующих данных строго больше, чем тип данных, к которому они должны быть преобразованы. Таким образом, если ни один из проверяемых типов данных не удовлетворяет этому условию, никаких понижений типов данных не будет произведено.

Новое в версии 0.19.0.

Возвращает:

ret : числовое значение, если разбор прошёл успешно.

Тип возвращаемого значения зависит от входных данных. Series, если вход Series, в противном случае ndarray

См. также

pandas.DataFrame.astype
Преобразование аргумента к заданному типу данных.
pandas.to_datetime
Преобразование аргумента в дату и время.
pandas.to_timedelta
Преобразование аргумента в промежуток времени.
numpy.ndarray.astype
Преобразование массива numpy в указанный тип.

Примеры

Взять отдельные Series и преобразовать в числовые, с приведением к NaN, когда нужно

>>> import pandas as pd
>>> s = pd.Series(['1.0', '2', -3])
>>> pd.to_numeric(s)
0    1.0
1    2.0
2   -3.0
dtype: float64
>>> pd.to_numeric(s, downcast='float')
0    1.0
1    2.0
2   -3.0
dtype: float32
>>> pd.to_numeric(s, downcast='signed')
0    1
1    2
2   -3
dtype: int8
>>> s = pd.Series(['apple', '1.0', '2', -3])
>>> pd.to_numeric(s, errors='ignore')
0    apple
1      1.0
2        2
3       -3
dtype: object
>>> pd.to_numeric(s, errors='coerce')
0    NaN
1    1.0
2    2.0
3   -3.0
dtype: float64

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.21.1/generated/pandas.to_numeric.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API