python行列演算、転置、逆演算、共役行列の例


余計なことを言わないで、コードを見てください。

#       
X=np.array([[1,2104,5,1,45],[1,1416,3,2,40],[1,1534,3,2,30],[1,852,2,1,36]])
 
y=np.array([45,40,30,36])
#      
c=np.dot(X.T,X)
c
array([[  4, 5906,  13,  6,  151],
  [ 5906, 9510932, 21074, 8856, 228012],
  [  13, 21074,  47,  19,  507],
  [  6, 8856,  19,  10,  221],
  [ 151, 228012,  507,  221, 5821]])
c.I
d=np.dot(c.I,X.T)
Traceback (most recent call last):
 
 File "<ipython-input-59-5f34dde97959>", line 1, in <module>
 d=np.dot(c.I,X.T)
 
AttributeError: 'numpy.ndarray' object has no attribute 'I'

#  array          array  ,  ndarray  ,     .I,.T,.M   。
#    :     matrix   
a=np.matrix([[  4, 5906,  13,  6,  151],
  [ 5906, 9510932, 21074, 8856, 228012],
  [  13, 21074,  47,  19,  507],
  [  6, 8856,  19,  10,  221],
  [ 151, 228012,  507,  221, 5821]])

a.I
matrix([[ -4.12181049e+13, 1.93633440e+11, -8.76643127e+13,
   -3.06844458e+13, 2.28487459e+12],
  [ 1.93633440e+11, -9.09646601e+08, 4.11827338e+11,
   1.44148665e+11, -1.07338299e+10],
  [ -8.76643127e+13, 4.11827338e+11, -1.86447963e+14,
   -6.52609055e+13, 4.85956259e+12],
  [ -3.06844458e+13, 1.44148665e+11, -6.52609055e+13,
   -2.28427584e+13, 1.70095424e+12],
  [ 2.28487459e+12, -1.07338299e+10, 4.85956259e+12,
   1.70095424e+12, -1.26659193e+11]])

補足知識:行列とベクトル共役
マトリクスには実数行列と複素行列があります。
行列の回転は、その行列を位置を交換します。
行列の共役転置は、行列の転置に基づいて各要素を共役する。
a+biのような複数の形をしており、共役はa−biである。実数の共役はそれ自体に等しい。
したがって、実数行列の共役転置行列は転置行列であり、複素行列の共役転置行列は、行列の交換位置の後、要素ごとに共役をとるものである。
Fortranでは、その呼び出し関数は以下の通りです。
CONJG(x)
xの共役複素数を求めます。x:C,結果:C
以上のpython行列演算、転置、逆演算、共役行列の例は小編集で皆さんに共有した内容の全部です。参考にしていただければ幸いです。よろしくお願いします。