2016-10-11 3 views
0

ore.groupApply()内でquantile()関数を誤って使用している可能性がありますが、何が問題になるかは分かりません。代わりにmedian()を使用すると、期待通りにすべてが機能します。しかし、quantile()では、私は各エントリの5つの個体番号にアクセスできないデータ構造を取り戻しています。ここに私のRコードは次のとおりです。ore.groupApplyを奇数Rデータ型を生成するquantile関数と併用する

quant_results <- ore.groupApply(endOfTestBuckets, 
           INDEX=endOfTestBuckets$compositeIndex, 
           function(dat) { 
            quantile(dat$TOTALCOUNT); 
           } 
           ); 
return (ore.pull(quant_results)); 

私はcompositeIndexフィールドに基づいてグループ化し、トータルカウントフィールドの分位数を計算しています。次に、OREからの結果をRに引き出します。例は次のとおりです。

quant_results Large list (159173 elements...) 
100_1013382: Named num [1:5] 0 10 20 30 40 
.. - attr(*, "names")= chr [1:5] "0%" "25%" "50%" "75" ... 
etc. 

複合インデックスで取得できます。たとえば、名前(quant_results [1])は "100_1013382"です。しかし、私が何をしても0、10、20、30、40という数値は得られません。実際には、typeof(quant_results [1])はリストで、length(quant_results [1])は1です。私は[1] [1]などのサブインデックスは、それが問題を助けることはありません。

私が言ったように、代わりにmedian()を使用すると、各エントリの中央値に到達できます。だから私は問題はquantile()が数値のリストを返すことだと思う。

アイデア?ありがとう。

答えて

0

最後に見つかりました。奇妙な二重括弧の表記を使用する必要があります。 [[1]] [[3]]は、たとえば、最初のエントリの中央値(3番目の数字)を取得します。

関連する問題