- API reference
- DataFrame
- pandas.DataF...
pandas.DataFrame.round#
- DataFrame.round(decimals=0,*args,**kwargs)[source]#
Round a DataFrame to a variable number of decimal places.
- Parameters:
- decimalsint, dict, Series
Number of decimal places to round each column to. If an int isgiven, round each column to the same number of places.Otherwise dict and Series round to variable numbers of places.Column names should be in the keys ifdecimals is adict-like, or in the index ifdecimals is a Series. Anycolumns not included indecimals will be left as is. Elementsofdecimals which are not columns of the input will beignored.
- *args
Additional keywords have no effect but might be accepted forcompatibility with numpy.
- **kwargs
Additional keywords have no effect but might be accepted forcompatibility with numpy.
- Returns:
- DataFrame
A DataFrame with the affected columns rounded to the specifiednumber of decimal places.
See also
numpy.around
Round a numpy array to the given number of decimals.
Series.round
Round a Series to the given number of decimals.
Examples
>>>df=pd.DataFrame([(.21,.32),(.01,.67),(.66,.03),(.21,.18)],...columns=['dogs','cats'])>>>df dogs cats0 0.21 0.321 0.01 0.672 0.66 0.033 0.21 0.18
By providing an integer each column is rounded to the same numberof decimal places
>>>df.round(1) dogs cats0 0.2 0.31 0.0 0.72 0.7 0.03 0.2 0.2
With a dict, the number of places for specific columns can bespecified with the column names as key and the number of decimalplaces as value
>>>df.round({'dogs':1,'cats':0}) dogs cats0 0.2 0.01 0.0 1.02 0.7 0.03 0.2 0.0
Using a Series, the number of places for specific columns can bespecified with the column names as index and the number ofdecimal places as value
>>>decimals=pd.Series([0,1],index=['cats','dogs'])>>>df.round(decimals) dogs cats0 0.2 0.01 0.0 1.02 0.7 0.03 0.2 0.0