# How to Round Numbers in Pandas

You can use `round()` and `apply()` to round up and down numbers in Pandas.

Round to specific decimal places:

df.round(decimals = number of specific decimal places)

Round up numbers:

df[‘DataFrame column’].apply(np.ceil)

Method 3: Round down values:

df.apply(np.floor)

## Data being used

The following is a column of numbers that we are going to use in this tutorial. It uses Numpy to generate an array of random numbers and then convert it into a column in a dataframe.

``````# import pandas and numpy packages
import pandas as pd
import numpy as np

# create an empty dataframe
df = pd.DataFrame()

# generate a random array of number
np.random.seed(seed=123)
array_1 = np.random.rand(5)

# create a column name 'numbers'
df['numbers']=array_1

# print out the dataframe
print(df)``````

The following is the print of the dataframe created by the code above. It is the starting point for all the examples shown later in this tutorial.

```    numbers
0  0.696469
1  0.286139
2  0.226851
3  0.551315
4  0.719469```

## Example for Specific Decimals

We can specify to have 2 decimals places. The following is the code example.

``````# set decimals to be 2 and then save it as the same name of the original dataframe
df=df.round(decimals = 2)

# print out the updated version of dataframe
print(df)``````

The following is the updated version of dataframe with 2 decimals.

```   numbers
0     0.70
1     0.29
2     0.23
3     0.55
4     0.72```

## Example for Round Up

You can round up numbers in a dataframe. The following is the Python code showing how to do it.

``````# code to round up values
df=df.apply(np.ceil)

# print out the round numbers
print(df)``````

The following shows the round numbers. Note that, since all the original numbers are below 1, they all became 1 now.

```   numbers
0      1.0
1      1.0
2      1.0
3      1.0
4      1.0```

## Example for Round Down

You can also round down. The following is the code.

``````# code to round down  values
df=df.apply(np.floor)

# print out the updated dataframe
print(df)``````

The following is the output. We can see all numbers are zero since the original numbers are all smaller than 1.

```   numbers
0      0.0
1      0.0
2      0.0
3      0.0
4      0.0```