Python Tutorial: Using random and numpy Libraries In this tutorial, we’ll learn how to use the random and numpy libraries in Python. These libraries are powerful tools for generating random numbers and performing numerical operations. We’ll cover everything step-by-step so it’s easy to understand.
Importing Libraries import random import numpy as np import random: This imports the random module, which allows us to generate random numbers and make random choices. import numpy as np: This imports the numpy library, a powerful tool for numerical operations, and we use the alias np for convenience. Using the random Module Generating Random Numbers print("Random Integer between 1 and 10:", random.randint(1, 10)) random.randint(1, 10): Generates a random integer between 1 and 10 (inclusive). print("Random float between 0 and 1: {:.3f}".format(random.random())) random.random(): Generates a random float between 0.0 and 1.0. "{:.3f}".format(value): Formats the float to three decimal places. Choosing a Random Element from a List print("Random choice from list:", random.choice([ 'Nepal', 'India', 'China', 'Bhutan', 'Bangladesh', 'Pakistan', 'Afghanistan', 'Iran', 'Iraq', 'Turkey', 'Greece', 'Italy', 'France', 'Spain', 'Portugal', 'United Kingdom', 'Ireland', 'Iceland', 'Canada', 'United States' ])) random.choice(list): Selects a random element from the provided list. Shuffling a List print(f"Random shuffled list: {random.sample(range(8), 7)}") random.sample(range(8), 7): Returns a list of 7 unique elements randomly chosen from the range 0 to 7 (essentially a shuffled list). Setting a Seed for Reproducibility random.seed(42) print("Random Integer with seed 42:", random.randint(1, 10)) random.seed(42): Sets the seed for the random number generator to 42, ensuring that the sequence of random numbers can be reproduced. random.randint(1, 10): Generates a random integer between 1 and 10, which will be the same every time the seed is set to 42. Using numpy for Numerical Operations Generating Random Numbers with numpy random_int_array = np.random.randint(1, 10, size=(3, 3)) print("\nRandom Integer Array:\n", random_int_array) np.random.randint(1, 10, size=(3, 3)): Creates a 3x3 array with random integers between 1 and 9. random_float_array = np.random.rand(3, 3) print("\nRandom Float Array:\n", random_float_array) np.random.rand(3, 3): Creates a 3x3 array with random floats between 0.0 and 1.0. Generating Numbers from a Normal Distribution normal_dist_array = np.random.normal(0, 1, size=(3, 3)) print("\nNormal Distribution Array:\n", normal_dist_array) np.random.normal(0, 1, size=(3, 3)): Creates a 3x3 array with random numbers from a normal (Gaussian) distribution with mean 0 and standard deviation 1. Setting a Seed for Reproducibility in numpy np.random.seed(42) print("\nRandom Float with seed 42:\n", np.random.rand(3, 3)) np.random.seed(42): Sets the seed for NumPy’s random number generator to 42. np.random.rand(3, 3): Creates a 3x3 array with random floats between 0.0 and 1.0, which will be the same every time the seed is set to 42. Array Operations with numpy Basic Array Operations array1 = np.array([1, 2, 3]) array2 = np.array([4, 5, 6]) print("\nArray1:", array1) print("Array2:", array2) np.array([1, 2, 3]): Creates a NumPy array from the list [1, 2, 3]. np.array([4, 5, 6]): Creates a NumPy array from the list [4, 5, 6]. print("Sum of Arrays:", np.add(array1, array2)) np.add(array1, array2): Adds array1 and array2 element-wise. print("Element-wise Multiplication:", np.multiply(array1, array2)) np.multiply(array1, array2): Multiplies array1 and array2 element-wise. print("Dot Product:", np.dot(array1, array2)) np.dot(array1, array2): Computes the dot product of array1 and array2. Statistical Operations data = np.random.rand(1000) print(f"\nData Mean: {np.mean(data):.3f}") print(f"\nData Standard Deviation: {np.std(data):.3f}") print(f"\nData Variance: {np.var(data):.3f}") np.random.rand(1000): Creates an array of 1000 random floats between 0.0 and 1.0. np.mean(data): Calculates the mean (average) of the data. np.std(data): Calculates the standard deviation of the data. np.var(data): Calculates the variance of the data. Reshaping Arrays reshaped_array = np.arange(12).reshape((3, 4)) print("\nReshaped Array:\n", reshaped_array) np.arange(12): Creates an array with values from 0 to 11. reshape((3, 4)): Reshapes the array into a 3x4 array. Slicing Arrays print("\nSliced Array:\n", reshaped_array[:, 1:3]) reshaped_array[:, 1:3]: Slices the array to extract all rows and columns 1 and 2 (excluding column 3). This tutorial covers the basics of using the random and numpy libraries in Python. By following these examples, you’ll gain a solid understanding of how to generate random numbers, perform numerical operations, and manipulate arrays. Happy coding!
...