Spec-Zone.ru › pandas 0.24

pandas.DataFrame.transform

DataFrame.transform(func, axis=0, *args, **kwargs) [source]

Вызовите func для себя, создавая DataFrame с преобразованными значениями, у которого длина оси такая же, как и у self.

Новая в версии 0.20.0.

Параметры:
func : function, str, list or dict

Функция для преобразования данных. Если функция, должна работать, когда ей передаётся DataFrame или когда она передаётся в DataFrame.apply.

Допустимые комбинации:

  • функция
  • имя функции
  • список функций и/или имён функций, например [np.exp. 'sqrt']
  • словарь меток осей -> функций, имён функций или списка таких.
axis : {0 or ‘index’, 1 or ‘columns’}, default 0

Если 0 или ‘index’: применяет функцию к каждому столбцу. Если 1 или ‘columns’: применяет функцию к каждой строке.

*args

Позиционные аргументы для передачи в func.

**kwargs

Ключевые аргументы для передачи в func.

Возвращает:
DataFrame

DataFrame, длина которого должна быть такой же, как у self.

Возбуждает:
ValueError : If the returned DataFrame has a different length than self.

См. также

DataFrame.agg
Выполнять только операции агрегирования.
DataFrame.apply
Вызвать функцию для DataFrame.

Примеры

>>> df = pd.DataFrame({'A': range(3), 'B': range(1, 4)})
>>> df
   A  B
0  0  1
1  1  2
2  2  3
>>> df.transform(lambda x: x + 1)
   A  B
0  1  2
1  2  3
2  3  4

Несмотря на то, что результирующий DataFrame должен иметь такую же длину, как и входной DataFrame, можно предоставить несколько входных функций:

>>> s = pd.Series(range(3))
>>> s
0    0
1    1
2    2
dtype: int64
>>> s.transform([np.sqrt, np.exp])
       sqrt        exp
0  0.000000   1.000000
1  1.000000   2.718282
2  1.414214   7.389056

© 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.24.2/reference/api/pandas.DataFrame.transform.html

Spec-Zone.ru

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