dask_expr._collection.DataFrame.round

dask_expr._collection.DataFrame.round

DataFrame.round(decimals=0)

将 DataFrame 四舍五入到可变的小数位数。

此文档字符串是从 pandas.core.frame.DataFrame.round 复制的。

Dask 版本可能存在一些不一致性。

参数
小数int, dict, Series

要四舍五入的每个列的小数位数。如果给定一个整数,则将每个列四舍五入到相同的小数位数。否则,字典和系列将四舍五入到不同的小数位数。如果 decimals 是类似字典的,则列名应在键中;如果 decimals 是系列,则列名应在索引中。任何未包含在 decimals 中的列将保持原样。decimals 中不是输入列的元素将被忽略。

*args

额外的关键词没有效果,但可能为了与numpy兼容而被接受。

**kwargs

额外的关键词没有效果,但可能为了与numpy兼容而被接受。

返回
DataFrame

一个包含受影响列的 DataFrame,这些列已四舍五入到指定的小数位数。

参见

numpy.around

将 numpy 数组四舍五入到给定的位数。

Series.round

将一个序列四舍五入到给定的位数。

示例

>>> 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