Numpy linspace() Function



The Numpy linspace() function is used to return a array of evenly spaced values over a specified interval. This functions takes in parameters such as start, stop, and num, and returns an array with a number of equally spaced values between start and stop. It is similar to numpy.arange() function but instead of a step, it uses a sample number.

In NumPy, numpy.linspace() and arange() are both functions used to generate arrays of evenly spaced values over a specified interval. The key difference is that numpy.linspace() generates a specified number of evenly spaced samples between a start and stop value (inclusive by default), while numpy.arange() generates evenly spaced values within a specified range, determined by a fixed step size.

Syntax

Following is the syntax of the Numpy linspace() function −

numpy.linspace(start, stop, num, endpoint = True, retstep = False, dtype = None, axis = 0)

Parameters

Following are the parameters of the Numpy linspace() function −

  • start: It is the start value of the sequence, by default start=0
  • stop: It is the end value of the sequence
  • num(optional): This represents number of samples to generate
  • endpoint(optional): This specifies whether to include end value. If True, stop is the last sample. Otherwise, it is not included. By Default, endpoint=True.
  • retstep(optional): If True, return (samples, step), where step is the spacing between samples.
  • dtype(optional): This represents the type of output array
  • axis(optional): This is the axis in the result to store the samples. This is relavent only if start or stop are array-like(i.e it is not scalars but array).

Return Values

This function returns a NumPy array containing a num evenly spaced values within a specified interval.

Example

Following is a basic example to generate a evenly spaced numpy array using Numpy linspace() function −

import numpy as np
my_Array = np.linspace(11,20,5)
print("Numpy Array -",my_Array)

Output

Following is the output of the above code −

Numpy Array - [11.   13.25 15.5  17.75 20.  ]

Example : Generating 2D Numpy Array

Using the numpy.linspace() function, we can generate a 2-dimensional array by specifying the number of equally spaced values over a given range and then reshaping the resulting 1-dimensional array into the desired 2-dimensional shape using reshape() function.

Here, we have generated a 2-D array of 3 rows and 4 columns using numpy.linspace(), where the values are linearly spaced from 1 to 10 −

import numpy as np
# Generating 12 equally spaced values between 1 and 10
array_1d = np.linspace(1, 10, 12)
# Reshaping into a 2D array (e.g., 3 rows and 4 columns)
array_2d = array_1d.reshape(3, 4)
print("Numpy 2D Array -\n",array_2d)

Output

Following is the output of the above code −

Numpy 2D Array -
 [[ 1.          1.81818182  2.63636364  3.45454545]
 [ 4.27272727  5.09090909  5.90909091  6.72727273]
 [ 7.54545455  8.36363636  9.18181818 10.        ]]

Example : Using Negative Values in 'linspace()'

Negative values can be used as arguments in the numpy.linspace() function to create arrays that include negative numbers within the specified range.

In the following example, we have created an array with 16 equally spaced values between -5 and 5, then reshape it into a 4x4 matrix −

import numpy as np

# Generating 16 equally spaced values between -5 and 5
array_1d = np.linspace(-5, 5, 16)

# Reshaping into a 2D array (4 rows and 4 columns)
array_2d = array_1d.reshape(4, 4)
print("Numpy 2D Array -\n", array_2d)

Output

Following is the output of the above code −

Numpy 2D Array -
 [[-5.         -4.33333333 -3.66666667 -3.        ]
 [-2.33333333 -1.66666667 -1.         -0.33333333]
 [ 0.33333333  1.          1.66666667  2.33333333]
 [ 3.          3.66666667  4.33333333  5.        ]]
numpy_array_creation_routines.htm
Advertisements