2017-05-02 11 views
0

現在、rhelクラスタでRstudioを使用しています。 私は&がsparkデータフレームでdplyrを使用したフィルタ関数の型不一致エラー

sparklyr_0.5.4 dplyr sparklyr &次のバージョンがインストールされている糸クライアント上でスパーク2.0.2を使用します。 dplyr_0.5.0

私がチェックし

data = copy_to(sc, iris) 
filter(data , Sepal_Length >5) 

Error in filter(data, Sepal_Length > 5) : 
(list) object cannot be coerced to type 'double' 

エラーの次の行の結果についての簡単なテストは

head(data) 
Source: query [6 x 5] 
Database: spark connection master=yarn-client app=sparklyr local=FALSE 

Sepal_Length Sepal_Width Petal_Length Petal_Width Species 
    <dbl>  <dbl>  <dbl>  <dbl> <chr> 
1 5.1   3.5   1.4   0.2 setosa 
2 4.9   3.0   1.4   0.2 setosa 
3 4.7   3.2   1.3   0.2 setosa 
4 4.6   3.1   1.5   0.2 setosa 
5 5.0   3.6   1.4   0.2 setosa 
6 5.4   3.9   1.7   0.4 setosa 

が知られている。この既知のバグ&ですべてが正常に見える&を読みますこれのための修正?

答えて

1

これはバグではありません。 dplyrパッケージのfilter機能を使用するように指定する必要があります。おそらくstatsパッケージのfilter関数を使用しています。そういうわけで、あなたはそのエラーを受けます。 、RStudioコンソールでは、必ずちょうどfilter(またはその他の機能)を入力し、表示された関数名でポップアップを確認するにはdplyr::filter

res <- dplyr::filter(data, Sepal_Length > 5) %>% dplyr::collect() 
head(res) 
# A tibble: 6 x 5 
    Sepal_Length Sepal_Width Petal_Length Petal_Width Species 
     <dbl>  <dbl>  <dbl>  <dbl> <chr> 
1   5.1   3.5   1.4   0.2 setosa 
2   5.4   3.9   1.7   0.4 setosa 
3   5.4   3.7   1.5   0.2 setosa 
4   5.8   4.0   1.2   0.2 setosa 
5   5.7   4.4   1.5   0.4 setosa 
6   5.4   3.9   1.3   0.4 setosa 

:あなたはこれで正しいバージョンを指定することができます。右側に、::と明示的にパッケージ名を付けていない場合に使用されるパッケージが表示されます。

+0

@jaimeCafferelこの作品は、ありがとう – Param

関連する問題