0
import numpy
import rpy2
from rpy2 import robjects
import rpy2.robjects.numpy2ri
from rpy2.robjects.packages import importr
stats = importr('stats')
r = robjects.r
rpy2.robjects.numpy2ri.activate()
a = numpy.array([ [1, 5, numpy.nan, 4, 5], [2, 6, 8, 7, 8] ])
b = numpy.array([ [1, 5, 8, 4, 5], [2, 6, 8, 7, 8] ])
std = r.sd(a[0], **{'na.rm': 'TRUE'}) # works fine
pca = stats.prcomp(b) # works fine
pca = stats.prcomp(a) # error
pca = stats.prcomp(a, **{'na.rm': 'TRUE'}) # error
pca = stats.prcomp(a, **{'na.action': 'na.omit'}) # error
最後の3 prcomp()の呼び出しは私にこのエラーを与える:rpy2のprcomp()のNA値を省略しますか?
Error in svd(x, nu = 0) : infinite or missing values in 'x'
私は束をGoogleで検索している、適切NAを処理するためにna.action(または他の手段)を使用する方法を見つけ出すことはできませんrcomp2を介してprcomp()の値。私はそれが単なる構文上の問題だと思っています。
ありがとうございました。
ご返信ありがとうございます。その構文は私に前と同じエラーを与え、私は運がないいくつかの変種を試しました。その他のアイデアは? – vulture
NA!= NaN。私は答えを編集しました。 – lgautier