λ€μ λ§ν¬μ λ΄μ©μ μ°Έμ‘°νμ¬ Cramer's ruleμ μ¬μ©ν΄ x1 , x2 , x3 μ κ°μ ꡬνμΈμ.
x1 + 2x3 = 6
β3x1 + 4x2 + 6x3 = 30
βx1 β2x2 + 3x3 = 8
κ°μΈμ μΌλ‘ μμ μμμ λλ΅ μ΄ν΄νκ³ μ½λλ‘ κ΅¬νν΄λ΄€λλ°, κ³μ° νμλ₯Ό λ릴 λλ§λ€ κ³μ κ°μ΄ λ¬λΌμ Έμ
ꡬκΈλ§ν΄μ λμ¨ κ³΅μμ μ μ©νμμ΅λλ€.
import numpy as np
A = np.array([[1, 0, 2],
[-3, 4, 6],
[-1, -2, 3]])
b = np.array([[6],
[30],
[8]])
det(A)μ κ°μ κ°κ° 1νμ bλ₯Ό λ£κ³ λμ¨ det κ°, 2νμ λ£κ³ λμ¨ κ°, 3νμ λ£κ³ λμ¨ κ°μ λλλ©΄ κ·Έκ² κ³§ ν΄κ° λ©λλ€.
x = []
for i in range(3):
Aj = A.copy()
Aj[:,[i]] = b
x.append(np.linalg.det(Aj) / np.linalg.det(A))
x
[-0.9090909090909088, 1.6363636363636358, 3.4545454545454533] # shapeμ΄ (3, )μΈ λ°°μ΄μ΄λ―λ‘ (1, 3)μΌλ‘ νκ³ transpose μ μ
x = np.array([x]).T
x
array([[-0.90909091],
[ 1.63636364],
[ 3.45454545]]) # xλ₯Ό νλ ¬κΌ΄λ‘ [] μ μ©νκ³ transpose ν΄μΌνλ κ² λ€μ νλ² κΈ°μ΅!
np.dot(A, x)
array([[ 6.],
[30.],
[ 8.]])
μ΄λ λ― μ°λ³μ κ°μ΄ μ λμ€λ κ²μ νμΈν μ μμ΅λλ€.
'πΏ Data > μ΄λͺ¨μ λͺ¨' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λ°μ΄ν° λ€λ£¨κΈ° μμ2 (0) | 2021.12.07 |
---|---|
λ°μ΄ν° λ€λ£¨κΈ° μμ1 (0) | 2021.12.07 |
λ²‘ν° λ΄μ λ° projection (0) | 2021.12.07 |
Scree Plot νμ©λ² (0) | 2021.12.07 |
Dendrogramμ ν΅ν Clustering μκ°ν λ° Elbow Method (0) | 2021.12.06 |