Spec-Zone.ru › pandas 2

pandas.DataFrame.round

DataFrame.round(decimals=0, *args, **kwargs)[source]

Округление DataFrame до заданного числа десятичных знаков.

Параметры:
decimals:int, dict, Series

Количество десятичных знаков для округления каждой колонки. Если целое число, то все колонки округляются до одного и того же числа десятичных знаков. В противном случае, dict и Series округляют до разного числа десятичных знаков. Имена колонок должны быть ключами, если decimals является типом dict, или индексами, если decimals является Series. Колонки, не включённые в decimals, останутся без изменений. Элементы decimals, которые не являются колонками входных данных, будут проигнорированы.

*args

Дополнительные ключевые слова не оказывают влияния, но могут быть приняты для совместимости с numpy.

**kwargs

Дополнительные ключевые слова не оказывают влияния, но могут быть приняты для совместимости с numpy.

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

DataFrame с округленными колонками до указанного числа десятичных знаков.

См. также

numpy.around

Округление массива numpy до заданного числа десятичных знаков.

Series.round

Округление Series до заданного числа десятичных знаков.

Примеры

>>> df = pd.DataFrame([(.21, .32), (.01, .67), (.66, .03), (.21, .18)],
...                   columns=['dogs', 'cats'])
>>> df
    dogs  cats
0  0.21  0.32
1  0.01  0.67
2  0.66  0.03
3  0.21  0.18

При указании целого числа, каждая колонка округляется до одного и того же числа десятичных знаков

>>> df.round(1)
    dogs  cats
0   0.2   0.3
1   0.0   0.7
2   0.7   0.0
3   0.2   0.2

Используя словарь, можно указать количество десятичных знаков для определенных колонок, используя имена колонок в качестве ключей и количество десятичных знаков в качестве значений

>>> df.round({'dogs': 1, 'cats': 0})
    dogs  cats
0   0.2   0.0
1   0.0   1.0
2   0.7   0.0
3   0.2   0.0

Используя Series, можно указать количество десятичных знаков для определенных колонок, используя имена колонок в качестве индексов и количество десятичных знаков в качестве значений

>>> decimals = pd.Series([0, 1], index=['cats', 'dogs'])
>>> df.round(decimals)
    dogs  cats
0   0.2   0.0
1   0.0   1.0
2   0.7   0.0
3   0.2   0.0

© 2008–2022, 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/2.2.2/reference/api/pandas.DataFrame.round.html

Spec-Zone.ru

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