


Python program to determine whether a given matrix is a sparse matrix
A matrix is a rectangular array in which a set of numbers are arranged in rows and columns. It is called an m X n matrix, where m and n are dimensions.
If a matrix contains fewer non-zero elements than zero elements, it is called a sparse matrix.
[0, 0, 3, 0, 0] [0, 1, 0, 0, 6] [1, 0, 0, 9, 0] [0, 0, 2, 0, 0]
The above matrix is a 4X5 matrix, and most of the numbers here are zero. Only a few elements are non-zero, so we can treat it as a sparse matrix.
To check if a given matrix is a sparse matrix, we need to compare the total number of elements and zeros. If the number of zero elements exceeds half of the elements in the matrix. Then we can call the given matrix as sparse matrix.
(m * n)/2
Let's discuss the different ways to determine whether a given matrix is sparse.
Use For Loop
Using for loop, we can easily iterate array elements in python.
Example
First, we will iterate over the matrix rows and count the number of zeros present in each row. The count value will then be stored in the counter variable.
After that, we compare the value in the counter variable with half the elements in the matrix to determine if the given matrix is a sparse matrix.
def isSparse(array, m, n): counter = 0 # Count number of zeros for i in range(0, m): for j in range(0, n): if (array[i][j] == 0): counter = counter + 1 return (counter > ((m * n) // 2)) arr = [[0, 0, 3], [0, 0, 0], [1, 8, 0]] print("The original matrix: ") for row in arr: print(row) print() # check if the given matrix is sparse matrix or not if (isSparse(arr, len(arr), len(arr[0]))): print("The given matrix is a sparse matrix") else: print("The given matrix is not a sparse matrix")
Output
The original matrix: [0, 0, 3] [0, 0, 0] [1, 8, 0] The given matrix is a sparse matrix
The above matrix is a sparse matrix.
Example
In this example, we will use the list.count() method to count the zero elements of each row in the loop and store the count in a counter variable.
def isSparse(array, m, n): counter = 0 # Count number of zeros for i in array: counter += i.count(0) return (counter > ((m * n) // 2)) arr = [[0, 0, 3], [0, 0, 0], [1, 8, 0]] print("The original matrix: ") for row in arr: print(row) print() # check if the given matrix is sparse matrix or not if (isSparse(arr, len(arr), len(arr[0]))): print("The given matrix is a sparse matrix") else: print("The given matrix is not a sparse matrix")
Output
The original matrix: [0, 0, 3] [0, 0, 0] [1, 8, 0] The given matrix is a sparse matrix
Using the SciPy library
By using the SciPy library in Python, we can create sparse matrices. In the following example, we use the csr_matrix() function to create a sparse matrix in compressed sparse row format.
issparse() function is used to check whether the given object is a sparse matrix.
Example
Initially, we will create an array using nested lists and then convert it to a sparse matrix using the csr_matrix() method.
from scipy.sparse import issparse, csr_matrix arr = [[0, 0, 3], [0, 0, 0], [1, 8, 0]] matrix = csr_matrix(arr) print("The original matrix: ") print(matrix) print() # check if the given matrix is sparse matrix or not if (issparse(matrix)): print("The given matrix is a sparse matrix") else: print("The given matrix is not a sparse matrix")
Output
The original matrix: (0, 2) 3 (2, 0) 1 (2, 1) 8 The given matrix is a sparse matrix
csr_matrix() method only stores data points (non-zero elements) in memory.
Note - The issparse() method has nothing to do with how many elements the input matrix has. Instead, it checks whether the given object is an instance of spmatrix.
The above is the detailed content of Python program to determine whether a given matrix is a sparse matrix. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Python is a powerful programming language with many natural language processing (NLP)-related libraries and tools in its ecosystem. NamedEntityRecognition (NER) is a very important task in NLP. It can identify named entities in text, such as person names, place names, organization names, etc. In this article, we will introduce an example of how to use the NER library in Python for named entity recognition. Install the NER library we will use Pyt

How to use the calendar module to generate and process calendars in Python 2.x. In Python, a very convenient module is provided to generate and process calendars, which is the calendar module. Whether you are learning programming, dealing with time-related issues, or needing to generate a calendar for specific dates in practical applications, the calendar module is very useful. This article will introduce how to use the calendar module for calendar generation and processing in Python2.x, and attach code examples.

Go language is a programming language with high development efficiency and excellent performance. It provides a rich standard library and can easily handle time and date. In actual development, we often encounter the need to determine whether a time is yesterday. This article will introduce how to use the time processing library in the Go language to determine whether a given time is yesterday, and give specific code examples. In the Go language, functions and methods related to time processing are located under the time package. The time type in Go language is time.Time, which is a structure containing years.

A matrix is a rectangular array in which a set of numbers are arranged in rows and columns. It is called mXn matrix where m and n are dimensions. If a matrix contains fewer non-zero elements than zero elements, it is called a sparse matrix. [0,0,3,0,0][0,1,0,0,6][1,0,0,9,0][0,0,2,0,0]The above matrix is a 4X5 matrix , most of the numbers here are zero. Only a few elements are non-zero, so we can treat it as a sparse matrix. To check if a given matrix is sparse, we need to compare the total number of elements and zeros. If the number of zero elements exceeds half of the elements in the matrix. Then we can call the given matrix as sparse matrix. (m*n)/2 Let us discuss determining whether a given matrix is

jQuery is a widely used JavaScript library that provides many convenient methods to manipulate HTML elements. In the process of developing web pages, we often encounter situations where we need to determine whether there are sub-elements within an element. In this article, we will introduce how to use jQuery to achieve this function and provide specific code examples. To determine whether there are child elements within an element, we can use jQuery's children() method. The children() method is used to obtain matches

Introduction to how to use the zipfile module to create and decompress ZIP files in Python 2.x: ZIP files are a commonly used archive file format and are often used to compress and package files and folders. Python provides the zipfile module to create and decompress ZIP files. This article will introduce how to use the zipfile module to create and decompress ZIP files in Python2.x. Installation: Python2.x is already installed by default

InPython,listsareversatiledatastructuresthatallowustostoreandmanipulatecollectionsofitems.Theremaybesituationswhereweneedtointerchangeorswapthepositionsofelementswithinalist.Inthisblogpost,wewillexplorehowtowriteaPythonprogramtoswapthei'thandj'thelem

C or Python: Which is harder to learn? In recent years, learning programming languages has gradually become a trend. Among many programming languages, C language and Python can be said to be one of the two most popular languages. C language is a low-level language that directly operates memory and has high execution efficiency; Python is a high-level language with concise and easy-to-read code. So, which one is more difficult to learn, C language or Python? C language is a structured language with strict grammatical rules and requires programmers to manage their own memory. When writing programs
