Excel_데이터/기술적 통계

엑셀에서 벡터의 내적(Dot Product)구하기

palefaceman 2021. 3. 13. 10:25

엑셀에서 벡터의 내적(dot product)을 구해본다.

 

내적(dot product)란 무엇인가

두 벡터가 있다.

a = [a1, a2, a3]

b = [b1, b2, b3]

이 두 벡터를 내적(dot product)하면 각 벡터의 각 성분(x, y, z)의 값끼리 곱한 값들을 더한다. 그러면 스칼라(scaler) 값이 나온다.

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

 

a = [2, 5, 6]

b = [4, 3, 2]

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

a · b = 8 + 15 + 12

a · b = 35

어떻게 벡터의 내적을 찾는가?

엑셀에서 제공하는 SUMPRODUCT() 함수를 사용한다.

SUMPRODUCT(array1, [array2], ...)

a = [2, 5, 6]

b = [4, 3, 2]

벡터에 내적을 하면 35가 나온다.

심지어 더 큰 크기에서도 SUMPRODUCT()를 사용하여 내적(dot product)을 구할 수 있다.

SUMPRODUCT()할 때 잠재적 에러

SUMPRODUCT()는 벡터들에 크기가 맞지 않을 때, #VALUES! 에러가 나타난다. 

예를 들어 =SUMPRODUCT(A1:A21, B1:B20) 하면 에러가 뜬다.

 

벡터의 내적(dot product)을 구하기 위해서는 같은 벡터 크기이어야 한다.