
- NumPy - Home
- NumPy - Introduction
- NumPy - Environment
- NumPy Arrays
- NumPy - Ndarray Object
- NumPy - Data Types
- NumPy Creating and Manipulating Arrays
- NumPy - Array Creation Routines
- NumPy - Array Manipulation
- NumPy - Array from Existing Data
- NumPy - Array From Numerical Ranges
- NumPy - Iterating Over Array
- NumPy - Reshaping Arrays
- NumPy - Concatenating Arrays
- NumPy - Stacking Arrays
- NumPy - Splitting Arrays
- NumPy - Flattening Arrays
- NumPy - Transposing Arrays
- NumPy Indexing & Slicing
- NumPy - Indexing & Slicing
- NumPy - Indexing
- NumPy - Slicing
- NumPy - Advanced Indexing
- NumPy - Fancy Indexing
- NumPy - Field Access
- NumPy - Slicing with Boolean Arrays
- NumPy Array Attributes & Operations
- NumPy - Array Attributes
- NumPy - Array Shape
- NumPy - Array Size
- NumPy - Array Strides
- NumPy - Array Itemsize
- NumPy - Broadcasting
- NumPy - Arithmetic Operations
- NumPy - Array Addition
- NumPy - Array Subtraction
- NumPy - Array Multiplication
- NumPy - Array Division
- NumPy Advanced Array Operations
- NumPy - Swapping Axes of Arrays
- NumPy - Byte Swapping
- NumPy - Copies & Views
- NumPy - Element-wise Array Comparisons
- NumPy - Filtering Arrays
- NumPy - Joining Arrays
- NumPy - Sort, Search & Counting Functions
- NumPy - Searching Arrays
- NumPy - Union of Arrays
- NumPy - Finding Unique Rows
- NumPy - Creating Datetime Arrays
- NumPy - Binary Operators
- NumPy - String Functions
- NumPy - Matrix Library
- NumPy - Linear Algebra
- NumPy - Matplotlib
- NumPy - Histogram Using Matplotlib
- NumPy Sorting and Advanced Manipulation
- NumPy - Sorting Arrays
- NumPy - Sorting along an axis
- NumPy - Sorting with Fancy Indexing
- NumPy - Structured Arrays
- NumPy - Creating Structured Arrays
- NumPy - Manipulating Structured Arrays
- NumPy - Record Arrays
- Numpy - Loading Arrays
- Numpy - Saving Arrays
- NumPy - Append Values to an Array
- NumPy - Swap Columns of Array
- NumPy - Insert Axes to an Array
- NumPy Handling Missing Data
- NumPy - Handling Missing Data
- NumPy - Identifying Missing Values
- NumPy - Removing Missing Data
- NumPy - Imputing Missing Data
- NumPy Performance Optimization
- NumPy - Performance Optimization with Arrays
- NumPy - Vectorization with Arrays
- NumPy - Memory Layout of Arrays
- Numpy Linear Algebra
- NumPy - Linear Algebra
- NumPy - Matrix Library
- NumPy - Matrix Addition
- NumPy - Matrix Subtraction
- NumPy - Matrix Multiplication
- NumPy - Element-wise Matrix Operations
- NumPy - Dot Product
- NumPy - Matrix Inversion
- NumPy - Determinant Calculation
- NumPy - Eigenvalues
- NumPy - Eigenvectors
- NumPy - Singular Value Decomposition
- NumPy - Solving Linear Equations
- NumPy - Matrix Norms
- NumPy Element-wise Matrix Operations
- NumPy - Sum
- NumPy - Mean
- NumPy - Median
- NumPy - Min
- NumPy - Max
- NumPy Set Operations
- NumPy - Unique Elements
- NumPy - Intersection
- NumPy - Union
- NumPy - Difference
- NumPy Random Number Generation
- NumPy - Random Generator
- NumPy - Permutations & Shuffling
- NumPy - Uniform distribution
- NumPy - Normal distribution
- NumPy - Binomial distribution
- NumPy - Poisson distribution
- NumPy - Exponential distribution
- NumPy - Rayleigh Distribution
- NumPy - Logistic Distribution
- NumPy - Pareto Distribution
- NumPy - Visualize Distributions With Sea born
- NumPy - Matplotlib
- NumPy - Multinomial Distribution
- NumPy - Chi Square Distribution
- NumPy - Zipf Distribution
- NumPy File Input & Output
- NumPy - I/O with NumPy
- NumPy - Reading Data from Files
- NumPy - Writing Data to Files
- NumPy - File Formats Supported
- NumPy Mathematical Functions
- NumPy - Mathematical Functions
- NumPy - Trigonometric functions
- NumPy - Exponential Functions
- NumPy - Logarithmic Functions
- NumPy - Hyperbolic functions
- NumPy - Rounding functions
- NumPy Fourier Transforms
- NumPy - Discrete Fourier Transform (DFT)
- NumPy - Fast Fourier Transform (FFT)
- NumPy - Inverse Fourier Transform
- NumPy - Fourier Series and Transforms
- NumPy - Signal Processing Applications
- NumPy - Convolution
- NumPy Polynomials
- NumPy - Polynomial Representation
- NumPy - Polynomial Operations
- NumPy - Finding Roots of Polynomials
- NumPy - Evaluating Polynomials
- NumPy Statistics
- NumPy - Statistical Functions
- NumPy - Descriptive Statistics
- NumPy Datetime
- NumPy - Basics of Date and Time
- NumPy - Representing Date & Time
- NumPy - Date & Time Arithmetic
- NumPy - Indexing with Datetime
- NumPy - Time Zone Handling
- NumPy - Time Series Analysis
- NumPy - Working with Time Deltas
- NumPy - Handling Leap Seconds
- NumPy - Vectorized Operations with Datetimes
- NumPy ufunc
- NumPy - ufunc Introduction
- NumPy - Creating Universal Functions (ufunc)
- NumPy - Arithmetic Universal Function (ufunc)
- NumPy - Rounding Decimal ufunc
- NumPy - Logarithmic Universal Function (ufunc)
- NumPy - Summation Universal Function (ufunc)
- NumPy - Product Universal Function (ufunc)
- NumPy - Difference Universal Function (ufunc)
- NumPy - Finding LCM with ufunc
- NumPy - ufunc Finding GCD
- NumPy - ufunc Trigonometric
- NumPy - Hyperbolic ufunc
- NumPy - Set Operations ufunc
- NumPy Useful Resources
- NumPy - Quick Guide
- NumPy - Cheatsheet
- NumPy - Useful Resources
- NumPy - Discussion
- NumPy Compiler
Numpy identity() Function
The Numpy identity() function is used generate a square identity matrix. An identity matrix is a special type of square matrix that has ones on the main diagonal and zeros in all other positions. This function is commonly used in linear algebra and numerical computations.
Both the numpy.eye() and numpy.identity() functions are used to generate identity matrices. The key difference is that the numpy.identity() function always generates square matrices, meaning the number of rows and columns will be the same, while numpy.eye() allows for the creation of both square and non-square matrices by specifying different values for the number of rows and columns.
Syntax
Following is the syntax of the Numpy identity() function −
numpy.identity(n, dtype=None, like=None)
Parameters
Following are the parameters of the Numpy identity() function −
- n: The number of rows (and columns) in the output array. The result is always a square matrix.
- dtype: The desired data type for the matrix. The default is float.
- like (optional): It allows the creation of an array which is like the input object but uses an existing array-like object (like another NumPy array).
Return Value
The function returns a 2D square NumPy array with ones on the main diagonal and zeros elsewhere.
Example
Following is a basic example to generate a identity matrix using Numpy identity() function −
import numpy as np identity_matrix = np.identity(5) print("Identity Matrix:\n", identity_matrix)
Output
Following is the output of the above code −
Identity Matrix: [[1. 0. 0. 0. 0.] [0. 1. 0. 0. 0.] [0. 0. 1. 0. 0.] [0. 0. 0. 1. 0.] [0. 0. 0. 0. 1.]]
Example : Specifying Data Type in 'identity()'
Similar to numpy.eye(), we can specify the data type of the matrix using the dtype parameter. By default, the matrix elements are of type float, but we can change it to int, complex, or other data types as needed.
In the following example, we have generated a 5x5 integer identity matrix by setting the dtype parameter to int −
import numpy as np int_identity_matrix = np.identity(5, dtype=int) print("Integer Identity Matrix:\n", int_identity_matrix)
Output
Following is the output of the above code −
Integer Identity Matrix: [[1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] [0 0 0 0 1]]
Example : Complex Identity Matrix
We can also create a complex identity matrix using the dtype parameter. This is useful in applications involving complex numbers.
In the following example, we have generated a 3x3 complex identity matrix −
import numpy as np complex_identity_matrix = np.identity(3, dtype=complex) print("Complex Identity Matrix:\n", complex_identity_matrix)
Output
Following is the output of the above code −
Complex Identity Matrix: [[1.+0.j 0.+0.j 0.+0.j] [0.+0.j 1.+0.j 0.+0.j] [0.+0.j 0.+0.j 1.+0.j]]
Example : Using 'n' as a Float Value
The number of rows in an array must be an integer. If we assign a float value to n, it will raise a TypeError.
In the following example, we have assigned n to a float value and resulted a Error −
import numpy as np Identity_matrix = np.identity(2.2, dtype=complex) print("Identity Matrix:\n", Identity_matrix)
Output
Following is the output of the above code −
Traceback (most recent call last): File "/home/cg/root/45463/main.py", line 2, in <module> Identity_matrix = np.identity(2.2, dtype=complex) File "/usr/local/lib/python3.10/dist-packages/numpy/core/numeric.py", line 2187, in identity return eye(n, dtype=dtype, like=like) File "/usr/local/lib/python3.10/dist-packages/numpy/lib/twodim_base.py", line 215, in eye m = zeros((N, M), dtype=dtype, order=order) TypeError: 'float' object cannot be interpreted as an integer