行列Xをscipy.sparse.linalg.svdsで計算した特異ベクトルが、scipy.linalg.svdで計算した特異ベクトルに含まれていないのですが、これは何故でしょうか?
python
1# -*- coding: utf-8 -*- 2import numpy as np 3from scipy.sparse.linalg import svds 4from scipy.linalg import svd 5 6X=np.array([[-3.25,-0.5],[-1.25 ,1.5 ],[2.75,-1.5],[1.75,0.5]],dtype=np.float64) 7 8random_state_ = np.random.RandomState(0) 9v0 = random_state_.randn(min(X.shape)) 10 11U1,Sigma1,VT1=svd(X) 12U2,Sigma2,VT2=svds(X, k=1, tol=0.0, v0=v0) 13 14print(VT1) 15""" 16[[ 0.98241359 -0.18671779] 17 [-0.18671779 -0.98241359]] 18""" 19 20print(VT2) 21""" 22[[-0.98241359 0.18671779]] 23""" 24
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。