#### Overview of this book

With computing power increasing exponentially and costs decreasing at the same time, this is the best time to learn machine learning using Python. Machine learning tasks that once required enormous processing power are now possible on desktop machines. Python Machine Learning begins by covering some fundamental libraries used in Python that make machine learning possible. You'll learn how to manipulate arrays of numbers with NumPy and use pandas to deal with tabular data. Once you have a firm foundation in the basics, you'll explore machine learning using Python and the scikit-learn libraries. You'll learn how to visualize data by plotting different types of charts and graphs using the matplotlib library. You'll gain a solid understanding of how the various machine learning algorithms work behind the scenes. The later chapters explore the common machine learning algorithms, such as regression, clustering, and classification, and discuss how to deploy the models that you have built, so that they can be used by client applications running on mobile and desktop devices. By the end of the book, you'll have all the knowledge you need to begin machine learning using Python.
Free Chapter
Cover
Introduction
CHAPTER 1: Introduction to Machine Learning
CHAPTER 2: Extending Python Using NumPy
CHAPTER 3: Manipulating Tabular Data Using Pandas
CHAPTER 4: Data Visualization Using matplotlib
CHAPTER 5: Getting Started with Scikit‐learn for Machine Learning
CHAPTER 6: Supervised Learning—Linear Regression
CHAPTER 7: Supervised Learning—Classification Using Logistic Regression
CHAPTER 8: Supervised Learning—Classification Using Support Vector Machines
CHAPTER 9: Supervised Learning—Classification Using K‐Nearest Neighbors (KNN)
CHAPTER 10: Unsupervised Learning—Clustering Using K‐Means
CHAPTER 11: Using Azure Machine Learning Studio
CHAPTER 12: Deploying Machine Learning Models
Index

# Array Math

You can perform array math very easily on NumPy arrays. Consider the following two rank 2 arrays:

````x1 = np.array([[1,2,3],[4,5,6]])`
`y1 = np.array([[7,8,9],[2,3,4]])` ```

To add these two arrays together, you use the `+` operator as follows:

``print(x1 + y1)` `

The result is the addition of each individual element in the two arrays:

````[[ 8 10 12]`
` [ 6  8 10]]` ```

Array math is important, as it can be used to perform vector calculations. A good example is as follows:

````x = np.array([2,3])`
`y = np.array([4,2])`
`z = x + y`
`'''`
`[6 5]`
`'''` ```

Figure 2.5 shows the use of arrays to represent vectors and uses array addition to perform vector addition.

Besides using the `+` operator, you can also use the `np.add()` function to add two arrays:

``np.add(x1,y1)` `

Apart from addition, you can also perform subtraction, multiplication, as well as division with NumPy arrays:

````print(x1 - y1)     # same as np.subtract(x1,y1)`
`''&apos...````