2017-03-20 3 views
1

ggbiplotggfortifyパッケージから使用しようとしています。正常に動作しているようですが、次のような警告メッセージが表示されます。ggfortify :: ggbiplotからの警告メッセージ

mdl <- pls::plsr(mpg ~ ., data = mtcars, scale = T) 
scrs <- data.frame(pls::scores(mdl)[]) 
loads <- data.frame(pls::loadings(mdl)[]) 

ggfortify::ggbiplot(scrs, loads, 
    label.label = rownames(scrs), asp = 1, label = T, label.size = 3, 
    loadings = T, loadings.label = T, loadings.label.label = rownames(loads)) 

Warning messages: 
1: In if (value %in% columns) { : 
    the condition has length > 1 and only the first element will be used 
2: In if (value %in% columns) { : 
    the condition has length > 1 and only the first element will be used 

私は間違った手順を踏んだり、バグですか?

答えて

1

ggbiplotドキュメントによれば、label.label=パラメータには、名前を取得する列名が必要です。名前のベクトルを期待していません。 loadings.label.label=も同じです。 (ggplotと最もtidyverse機能は非常に多くのrownamesが好きではない - よりよいそれらを適切な列にする)

scrs$ID <- rownames(scrs) 
loads$ID <- rownames(loads) 
ggfortify::ggbiplot(scrs, loads, 
    label.label = "ID", asp = 1, label = T, label.size = 3, 
    loadings = T, loadings.label = T, loadings.label.label = "ID") 
+0

は、私が最初の行として、行名を追加rowname_to_column' 'と同じことを試してみました、ありがとうdata.frameのそれが問題なのです。 – TheRimalaya

関連する問題