A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.tutorialspoint.com/python/python_random_paretovariate_method.htm below:

Python random.paretovariate() Method

Python random.paretovariate() Method

The Python random.paretovariate() method in Python generates random numbers that follows the Pareto Distribution. It is a power-law probability distribution, also known as the "80-20 rule".

This distribution is often used in social science, quality control, finance, and natural phenomena. It depends on the shape parameter called alpha, which determines the distribution's behavior.

This function is not accessible directly, so we need to import the random module and then we need to call this function using random static object.
Syntax

Following is the syntax of paretovariate() method −

random.paretovariate(alpha)
Parameters

This method accepts the single parameter −

Return Value

This method returns random number that follows the Pareto distribution with the specified alpha.

Example 1

Let's see a basic example of using the Python random.paretovariate() method for generating a single random number.

import random

# alpha for the Pareto distribution
alpha_ = 2

# Generate a random number from the Pareto distribution
random_value = random.paretovariate(alpha_)

print("Random value from Pareto distribution:", random_value)

Following is the output −

Random value from Pareto distribution: 1.101299278142964

Note: The Output generated will vary each time you run the program due to its random nature.

Example 2

Here is an example that uses the random.paretovariate() method to generate and display a histogram showing the frequency distribution of samples from a Pareto distribution with a shape parameter of 3.

import random
import numpy as np
import matplotlib.pyplot as plt

# Generate 10000 samples from an Pareto distribution with rate parameter of 100
alpha = 3
num_samples = 10000 

# Generate Pareto data 
d = [random.paretovariate(alpha) for _ in range(num_samples)]

# Create a histogram of the data with bins from 0 to 500
h, b = np.histogram(d, bins=500)

# Plot the histogram
plt.figure(figsize=(7, 4))
plt.bar(b[:-1], h, width=1, edgecolor='none')
plt.title('Histogram of the Pareto Distributed Data')
plt.show()

The output of the above code is as follows −

Example 3

This example generates and plots Pareto-distributed data for different alpha values to show how the distribution changes with the shape parameter using the random.paretovariate() method.

import random
import numpy as np
import matplotlib.pyplot as plt

def plot_pareto(alpha, order):

    # Generate Pareto data
    data = [random.paretovariate(alpha) for _ in range(500)]

    # Plot histogram of the generated data
    h, b = np.histogram(data, bins=np.arange(0, max(data)+1))
    plt.bar(b[:-1], h, width=1, edgecolor='none', alpha=0.7, label=r'($\alpha={}$)'.format(alpha), zorder=order)

# Create a figure for the plots
fig = plt.figure(figsize=(7, 4))

# Plotting for each set of parameters
plot_pareto(3, 3)
plot_pareto(2, 2)
plot_pareto(1, 1)

# Adding labels and title
plt.title('Pareto Distributions for Different Alpha Values')
plt.legend()
plt.ylim(1, 150)
plt.xlim(1, 30)

# Show plot
plt.show()

While executing the above code you will get the similar output like below −

python_modules.htm


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4