The main advantages of matrices are in solving linear equations. In fact judging whether there even exists solutions to a system of equations becomes very easy when you represent equations in form of matrices. Matrices form the core of Linear Algebra.
Systems of linear equations pop up everywhere in the real world. Linear Algebra is integral to Machine Learning, Image processing, Computer Graphics, Operations Research.....( the list is inexhaustible).
Using matrices as representation of graphs is in fact one of the less useful facets of Linear Algebra (due to the more space efficient Adjacency List data structures). If we talk about using matrices as datastructures you can look into Bottom Up approach of solving dynamic programming problems.
Importance of Symmetric Matrices
If we have a symmetric matrix, then we immediately know a few things about the concerned system of linear equations:
- If each vector is linearly independent, then we have as many pivots as we have rows or columns.
- This is a special case where we say that the matrix has a full rank. Hence the matrix is invertible, and there exists a particular unique solution to this system of linear equations.
- Eigen Values are defined for square matrices.
- This allows us to investigate whether a given matrix is diagonalizable. If the matrix is diagonalizable, then it allows us to perform efficient computations of the powers of A, leading into matrix exponentials.
- Diagonalization is a very common mathematical operation in quantum mechanics. The time-independent Schrödinger equation is broadly speaking, an eigenvalue equation.
Since matrices are nothing but representations of linear equations, we cannot force ourselves to represent data symmetrically (actually we can, and often do). If a particular dataset that we are investigating has the same number of vectors as its attributes (which is definitely coincidental) then we can perform an extended analysis on the dataset owing to the properties of the square matrix.