0

私が構築している光沢のあるアプリでは、説明された分散と (r パッケージ psych の) 主関数の出力のモデル適合測定値のみを表示したいと考えています。出力の構造を調査しましたが、残念ながら (そしておそらく少し奇妙なことに) これらの値の正確な場所を見つけることができませんでした。出力からこれらの値を取得する方法を知っている人はいますか?

4

1 に答える 1

5

まず、助けが必要な場合は、データのサンプルを含む再現可能な例を提供する必要があります。これが、あなたの質問が反対票を投じられた理由です(ただし、私によるものではありません)。

i 番目の主成分による分散は、相関行列の i 番目の固有値によって与えられます。PC は定義上直交 (無相関) であるため、総分散は個々の分散の合計 = 固有値の合計で与えられます。固有値は に返されprincipal(...)$valuesます。したがって、各PCによって説明される合計分散の割合は、次のように与えられます。

 prop.table(principal(...)$values)

データを提供しなかったのでmtcars、実際の例として組み込みのデータセットを使用します。

library(psych)
df <- mtcars[c("hp","mpg","disp","wt","qsec")]
pca <- principal(df)
prop.table(pca$values)
# [1] 0.73936484 0.19220335 0.03090626 0.02623083 0.01129473

したがって、最初の PC は全変動の 74% を説明し、2 番目の PC は 19% を説明するなどです。これは、デフォルトではスケーリングするが、そうではないprcomp(...)ことを念頭に置いて、 を使用した結果と完全に一致します。principal(...)prcomp(...)

pc  <- prcomp(df,scale.=T)
summary(pc)
# Importance of components:
#                           PC1    PC2     PC3     PC4     PC5
# Standard deviation     1.9227 0.9803 0.39310 0.36215 0.23764
# Proportion of Variance 0.7394 0.1922 0.03091 0.02623 0.01129
# Cumulative Proportion  0.7394 0.9316 0.96247 0.98871 1.00000

principal(...)$fit.offドキュメントで説明されているように、パラメータ「オフ対角値に基づいてフィット」は に示されています。

于 2014-04-29T21:01:14.920 に答える