# How to Calculate Relative Frequency in Python

Relative frequency is a measure of the number of times a particular value results, as a fraction of the full set. It is a crucial concept in statistics, data analysis, and probability. Python, along with its powerful libraries such as pandas and numpy, provides efficient methods for calculating relative frequency.

This article will guide you through the process of calculating relative frequency in Python using different techniques.

### Calculating Relative Frequency in a List

Let’s say you have a list of elements and you want to calculate the relative frequency of each unique element in the list.

First, import the numpy library:

import numpy as np

Now, suppose you have the following list of elements:

elements = ['cat', 'dog', 'rabbit', 'cat', 'dog', 'cat', 'rabbit', 'rabbit']

To calculate the relative frequency:

# Unique elements and their counts
unique_elements, counts = np.unique(elements, return_counts=True)

# Calculate relative frequencies
relative_frequencies = counts / len(elements)

# Print the result
for element, frequency in zip(unique_elements, relative_frequencies):
print(f'Element: {element}, Relative Frequency: {frequency}')


### Calculating Relative Frequency in a Pandas DataFrame

When working with larger datasets, you might have a DataFrame where you need to calculate the relative frequency of the values in a particular column.

First, import the pandas library:

import pandas as pd

Next, create a DataFrame:

# Create a DataFrame
data = {'Pet': ['cat', 'dog', 'rabbit', 'cat', 'dog', 'cat', 'rabbit', 'rabbit']}
df = pd.DataFrame(data)

Now, to calculate the relative frequency of the ‘Pet’ column:

# Calculate frequency counts
counts = df['Pet'].value_counts()

# Calculate relative frequencies
relative_frequencies = counts / len(df)

# Print the result
print(relative_frequencies)

### Visualizing Relative Frequencies

A great way to understand relative frequencies is to visualize them. You can use matplotlib, a popular Python library for data visualization.

Import the necessary libraries

import pandas as pd
import matplotlib.pyplot as plt

Create a DataFrame:

# Create a DataFrame
data = {'Pet': ['cat', 'dog', 'rabbit', 'cat', 'dog', 'cat', 'rabbit', 'rabbit']}
df = pd.DataFrame(data)

Now, calculate the relative frequency of the ‘Pet’ column and plot the result:

# Calculate frequency counts
counts = df['Pet'].value_counts()

# Calculate relative frequencies
relative_frequencies = counts / len(df)

# Plot the result
relative_frequencies.plot(kind='bar', color='skyblue')
plt.title('Relative Frequencies of Pets')
plt.xlabel('Pet')
plt.ylabel('Relative Frequency')
plt.show()

This code will display a bar graph representing the relative frequencies of the different categories in the ‘Pet’ column.

In summary, relative frequency is a fundamental concept in statistics and data analysis. Python, with its robust libraries, provides a simple and efficient way to calculate relative frequencies, making it an ideal tool for data analysis tasks.