ここで何が間違っているのかわかりません。
ee <- eigen(crossprod(X))$values
for(i in 1:length(ee)){
if(ee[i]==0:1e^-9) stop("singular Matrix")}
固有値アプローチを使用して、行列が特異かどうかを判断しようとしています。行列の固有値の 1 つが 0 から 10^-9 の間にあるかどうかを調べようとしています。上記のように if ステートメントを正しく使用して目標を達成するにはどうすればよいですか? これにアプローチする他の方法はありますか?
ベクトルのゼロ固有値を連結したい場合はどうすればよいですか
zer <-NULL
ee <- eigen(crossprod(X))$values
for(i in 1:length(ee)){
if(abs(ee[i])<=1e-9)zer <- c(zer,ee[i])}
それをしてもいいですか?