# Calculate Rolling Correlation in Pandas

This tutorial will discuss how to find rolling correlation values in Pandas.

## Steps to Calculate Rolling Correlation Values in Pandas

The following are the steps to calculate rolling correlations between two columns of a Pandas dataframe.

### Import Pandas

We need to start with importing the Pandas library.

```
import pandas as pd
```

### Create a DataFrame

Let us now create a sample Pandas dataframe with two columns between which we will calculate the rolling correlation.

```
data = {'Data1': [1, 4, 7, 10], 'Data2': [2, 5, 8, 11]}
df = pd.DataFrame(data)
```

We have created a dictionary named `data`

with two columns, `Data1`

and `Data2`

, and passed this dictionary to the `pd.DataFrame()`

function to create a Pandas dataframe as shown below.

```
print(df)
```

Output:

```
Data1 Data2
0 1 2
1 4 5
2 7 8
3 10 11
```

### Calculate Rolling Correlation

We will roll our first column using the `rolling()`

function in Pandas and then calculate the correlation of the rolled column with the other column in our data frame using the `corr()`

function.

```
rc = df['Data1'].rolling(2).corr(df['Data2'])
```

We pass the window length of two observations to roll our first column by 2 and correlate it to the second column. We store the value of correlations in a new variable.

Let us now print the new variable to see the value of rolling correlations between the two columns.

```
print(rc)
```

Output:

```
0 NaN
1 1.0
2 1.0
3 1.0
```

The above output shows the rolling correlation values between our two columns in the dataframe. Thus, we can successfully determine the required rolling correlations values between two dataframe columns in Pandas using the above technique.

**Preet Sanghavi**