Spec-Zone.ru › pandas 0.21

pandas.Panel.mask

Panel.mask(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_error=None) [source]

Возвращает объект той же формы, что и self, и соответствующие элементы которого берутся из self, где cond равно False, а в противном случае берутся из other.

Параметры:

cond : булевый NDFrame, массив или вызываемый объект

Там, где cond равно False, исходное значение сохраняется. Там, где True, значение заменяется соответствующим значением из other. Если cond является вызываемым объектом, он вычисляется для NDFrame и должен возвращать булевый NDFrame или массив. Вызываемый объект не должен изменять входной NDFrame (хотя pandas этого не проверяет).

Новое в версии 0.18.1: В качестве cond может использоваться вызываемый объект.

other : скаляр, NDFrame или вызываемый объект

Элементы, где cond равно True, заменяются соответствующим значением из other. Если other является вызываемым объектом, он вычисляется для NDFrame и должен возвращать скаляр или NDFrame. Вызываемый объект не должен изменять входной NDFrame (хотя pandas этого не проверяет).

Новое в версии 0.18.1: В качестве other может использоваться вызываемый объект.

inplace : булево, по умолчанию False

Выполнять ли операцию на месте в данных

axis : ось выравнивания, если необходимо, по умолчанию None

level : уровень выравнивания, если необходимо, по умолчанию None

errors : строка, {‘raise’, ‘ignore’}, по умолчанию ‘raise’

  • raise : разрешить поднятие исключений
  • ignore : подавить исключения. При ошибке вернуть исходный объект

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

try_cast : булево, по умолчанию False

попытаться привести результат обратно к типу входных данных (если возможно),

raise_on_error : булево, по умолчанию True

Поднимать ли исключение при некорректных типах данных (например, при попытке применения where к строкам)

Устарело начиная с версии 0.21.0.

Возвращает:

wh : тот же тип, что и вызываемый объект

См. также

DataFrame.where()

Примечания

Метод mask применяется к выражению if-then. Для каждого элемента в вызываемом DataFrame, если cond равно False, используется элемент; в противном случае используется соответствующий элемент из DataFrame other.

Подпись для DataFrame.where() отличается от numpy.where(). Приблизительно df1.where(m, df2) эквивалентно np.where(m, df1, df2).

Дополнительные сведения и примеры см. в документации mask в индексировании.

Примеры

>>> s = pd.Series(range(5))
>>> s.where(s > 0)
0    NaN
1    1.0
2    2.0
3    3.0
4    4.0
>>> s.mask(s > 0)
0    0.0
1    NaN
2    NaN
3    NaN
4    NaN
>>> s.where(s > 1, 10)
0    10.0
1    10.0
2    2.0
3    3.0
4    4.0
>>> df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
>>> m = df % 3 == 0
>>> df.where(m, -df)
   A  B
0  0 -1
1 -2  3
2 -4 -5
3  6 -7
4 -8  9
>>> df.where(m, -df) == np.where(m, df, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True
>>> df.where(m, -df) == df.mask(~m, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True

© 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.Panel.mask.html

Spec-Zone.ru

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