#### Overview of this book

Have you always wanted to learn Python, but never quite known how to start? More applications than we realize are being developed using Python because it is easy to learn, read, and write. You can now start learning the language quickly and effectively with the help of this interactive tutorial. The Python Workshop starts by showing you how to correctly apply Python syntax to write simple programs, and how to use appropriate Python structures to store and retrieve data. You'll see how to handle files, deal with errors, and use classes and methods to write concise, reusable, and efficient code. As you advance, you'll understand how to use the standard library, debug code to troubleshoot problems, and write unit tests to validate application behavior. You'll gain insights into using the pandas and NumPy libraries for analyzing data, and the graphical libraries of Matplotlib and Seaborn to create impactful data visualizations. By focusing on entry-level data science, you'll build your practical Python skills in a way that mirrors real-world development. Finally, you'll discover the key steps in building and using simple machine learning algorithms. By the end of this Python book, you'll have the knowledge, skills and confidence to creatively tackle your own ambitious projects with Python.
Preface
Free Chapter
1. Vital Python – Math, Strings, Conditionals, and Loops
2. Python Structures
3. Executing Python – Programs, Algorithms, and Functions
4. Extending Python, Files, Errors, and Graphs
5. Constructing Python – Classes and Methods
6. The Standard Library
7. Becoming Pythonic
8. Software Development
9. Practical Python – Advanced Topics
10. Data Analytics with pandas and NumPy
11. Machine Learning

# Matrices

A DataFrame is generally composed of rows, and each row has the same number of columns. From one point of view, it's a two-dimensional grid containing lots of numbers. It can also be interpreted as a list of lists, or an array of arrays.

In mathematics, a matrix is a rectangular array of numbers defined by the number of rows and columns. It is standard always to list rows first, and columns second. For instance, a 2 x 3 matrix consists of 2 rows and 3 columns, whereas a 3 x 2 matrix consists of 3 rows and 2 columns.

Here is a 4 x 4 matrix:

Figure 10.1: Matrix representation of a 4 x 4 matrix

## Exercise 132: Matrices

NumPy has methods for creating matrices or n-dimensional arrays. One option is to place random numbers between 0 and 1 into each entry, as follows.

In this exercise, you will implement the various `numpy` matrix methods and observe the outputs (recall that `random.seed` will allow us to reproduce the same numbers, and it&apos...