pandas.DataFrame.round #

数据框。round (小数= 0 , * args , ** kwargs ) [来源] #

将 DataFrame 舍入为可变的小数位数。

参数
小数int、字典、系列

每列舍入的小数位数。如果给出 int,则将每列四舍五入到相同位数。否则 dict 和 Series 舍入到可变数量的位置。如果decimals是类似字典,则列名称应位于键中;如果decimals是系列,则列名称应位于索引中。任何未包含在小数中的列将保持原样。不是输入列的小数元素将被忽略。

*参数

其他关键字没有效果,但可能会被接受以与 numpy 兼容。

**夸格

其他关键字没有效果,但可能会被接受以与 numpy 兼容。

返回
数据框

受影响的列四舍五入到指定小数位数的 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