var df = List(1,2,3,4,5,6,7,8,9,10,11).toDF("num")
df.show()
var df2 = df.limit(3)
df2.show()
var df3 = df.except(df2)
df3.show()
驚くべきことに、私はそれ以外の方法がそれを行うべきではないことを発見しました。ここに私の出力です: df2:正しく作成され、1,2,3が含まれています。しかし、私のdf3はまだそれに1,2、および/または3を持っています。それは一種のものです。私が複数回それを実行すると、私は別の結果を得る。誰でも助けてくれますか?前もって感謝します。Spark DataFrameの `except()`は、毎回異なるアイテムを削除します
は奇数、私は一貫性のある(予想される)の結果を取得しています。使用しているSparkのバージョンは何ですか?また、「クラスタマネージャ」(マスター/ローカル/ YARN /スタンドアロンなど)は何ですか? –
varは使用しません。可能な限りvalを使用してみてください。 –
これはスパークの仕組みを理解する良い例ではありません。 limit(3)が1,2,3を返すと仮定することはできません。これは3つの要素を返しますが、異なるマシンから収集することができます。この機能をテストする場合は、異なるデータフレームを作成してください。 – marios