วิธีการคำนวณดอทโปรดัคโดยใช้ numpy


เมื่อพิจารณาจากเวกเตอร์ a = [a 1 , a 2 , a 3 ] และเวกเตอร์ b = [b 1 , b 2 , b 3 ] ผลคูณสเกลาร์ ของเวกเตอร์ ซึ่งแสดงด้วย a · b ได้รับจาก:

ab = ก 1 * ข 1 + ก 2 * ข 2 + ก 3 * ข 3

ตัวอย่างเช่น ถ้า a = [2, 5, 6] และ b = [4, 3, 2] แล้วผลคูณดอทของ a และ b จะเท่ากับ:

เอบี = 2*4 + 5*3 + 6*2

เอบี = 8 + 15 + 12

เอบี = 35

กล่าวง่ายๆ ก็คือ dot product คือผลรวมของผลคูณของรายการที่สอดคล้องกันในเวกเตอร์สองตัว

ใน Python คุณสามารถใช้ฟังก์ชัน numpy.dot() เพื่อคำนวณ dot product ระหว่างเวกเตอร์สองตัวได้อย่างรวดเร็ว:

 import numpy as np

n.p. dowry (a, b)

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ

ตัวอย่างที่ 1: คำนวณผลคูณดอทระหว่างเวกเตอร์สองตัว

รหัสต่อไปนี้แสดงวิธีการใช้ numpy.dot() เพื่อคำนวณผลคูณดอทระหว่างเวกเตอร์สองตัว:

 import numpy as np

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

#calculate dot product between vectors
n.p. dowry (a, b)

33

นี่คือวิธีคำนวณค่านี้:

  • เอบี = 7*1 + 2*4 + 2*9
  • ab = 7 + 8 + 18
  • เอบี = 33

ตัวอย่างที่ 2: คำนวณผลคูณดอทระหว่างสองคอลัมน์

รหัสต่อไปนี้แสดงวิธีการใช้ numpy.dot() เพื่อคำนวณผลคูณดอทระหว่างสองคอลัมน์ใน DataFrame ของ pandas:

 import pandas as pd
import numpy as np

#createDataFrame
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
n.p. dot (df. A , df. C )

206

นี่คือวิธีคำนวณค่านี้:

  • เอซี = 4*11 + 6*8 + 7*9 + 7*6 + 9*1
  • เอซี = 44 + 48 + 63 + 42 + 9
  • เอ ค = 206

หมายเหตุ: โปรดทราบว่า Python จะส่งข้อผิดพลาดหากเวกเตอร์สองตัวที่คุณกำลังคำนวณ dot product มีความยาวต่างกัน

แหล่งข้อมูลเพิ่มเติม

วิธีเพิ่มแถวใน Pandas DataFrame
วิธีเพิ่มอาร์เรย์ Numpy ให้กับ Pandas DataFrame
วิธีการคำนวณความสัมพันธ์แบบเลื่อนในแพนด้า

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *