16.2 C
London
Thursday, July 24, 2025
HomePandas in PythonGeneral Functions in PythonHow to Calculate Dot Product Using NumPy

How to Calculate Dot Product Using NumPy

Related stories

Learn About Opening an Automobile Repair Shop in India

Starting a car repair shop is quite a good...

Unlocking the Power: Embracing the Benefits of Tax-Free Investing

  Unlocking the Power: Embracing the Benefits of Tax-Free Investing For...

Income Splitting in Canada for 2023

  Income Splitting in Canada for 2023 The federal government’s expanded...

Can I Deduct Home Office Expenses on my Tax Return 2023?

Can I Deduct Home Office Expenses on my Tax...

Canadian Tax – Personal Tax Deadline 2022

  Canadian Tax – Personal Tax Deadline 2022 Resources and Tools...

Given vector a = [a1, a2, a3] and vector b = [b1, b2, b3], the dot product of the vectors, denoted as a · b, is given by:

a · b = a1 * b1 + a2 * b2 + a3 * b3

For example, if a = [2, 5, 6] and b = [4, 3, 2], then the dot product of a and b would be equal to:

a · b = 2*4 + 5*3 + 6*2

a · b = 8 + 15 + 12

a · b = 35

Simply put, the dot product is the sum of the products of the corresponding entries in two vectors.

In Python, you can use the numpy.dot() function to quickly calculate the dot product between two vectors:

import numpy as np

np.dot(a, b)

The following examples show how to use this function in practice.

Example 1: Calculate Dot Product Between Two Vectors

The following code shows how to use numpy.dot() to calculate the dot product between two vectors:

import numpy as np

#define vectors
a = [7, 2, 2]
b = [1, 4, 9]

#calculate dot product between vectors
np.dot(a, b)

33

Here is how this value was calculated:

  • a · b = 7*1 + 2*4 + 2*9
  • a · b = 7 + 8 + 18
  • a · b = 33

Example 2: Calculate Dot Product Between Two Columns

The following code shows how to use numpy.dot() to calculate the dot product between two columns in a pandas DataFrame:

import pandas as pd
import numpy as np

#create DataFrame
df = pd.DataFrame({'A': [4, 6, 7, 7, 9],
                   'B': [5, 7, 7, 2, 2],
                   'C': [11, 8, 9, 6, 1]})

#view DataFrame
df

	A	B	C
0	4	5	11
1	6	7	8
2	7	7	9
3	7	2	6
4	9	2	1

#calculate dot product between column A and column C
np.dot(df.A, df.C)

206

Here is how this value was calculated:

  • A · C = 4*11 + 6*8 + 7*9 + 7*6 + 9*1
  • A · C = 44 + 48 + 63 + 42 + 9
  • A · C = 206

Note: Keep in mind that Python will throw an error if the two vectors you’re calculating the dot product for have different lengths.

Additional Resources

How to Add Rows to a Pandas DataFrame
How to Add a Numpy Array to a Pandas DataFrame
How to Calculate Rolling Correlation in Pandas

Subscribe

- Never miss a story with notifications

- Gain full access to our premium content

- Browse free from up to 5 devices at once

Latest stories