PySpark DataFramesには、Pandasのような「パイプ」機能がありますか?

0111001101110000

たとえばパンダでは

data_df = (
     pd.DataFrame(dict(col1=['a', 'b', 'c'], col2=['1', '2', '3']))
     .pipe(lambda df: df[df.col1 != 'a'])
 )   

これはRのパイプに似ています %>%

PySparkに似たようなものはありますか?

なので

では、のpyspark助けを借りてこのパイプ機能を簡単に実現できると思いますpipeline

  1. 各パイプ関数をトランスフォーマーに変換します。Sparkが提供する事前定義されたトランスフォーマーがいくつかありますが、それも利用できます
  2. トランスフォーマーを使用してパイプラインを作成する
  3. パイプラインを実行して、提供されたデータフレームを変換します

Example: Let's take the example you provided

変換する入力データフレーム

 val df = Seq(("a", 1), ("b", 2), ("c", 3)).toDF("col1", "col2")
    df.show(false)
    df.printSchema()
    /**
      * +----+----+
      * |col1|col2|
      * +----+----+
      * |a   |1   |
      * |b   |2   |
      * |c   |3   |
      * +----+----+
      *
      * root
      * |-- col1: string (nullable = true)
      * |-- col2: integer (nullable = false)
      */

1.各パイプ機能を変圧器に変換します

の場合.pipe(lambda df: df[df.col1 != 'a'])、sparkを簡単に使用できますSQLTransformerしたがって、カスタムトランスフォーマーを作成する必要はありません

2.トランスフォーマーを使用してパイプラインを作成します

 val transform1 = new SQLTransformer()
      .setStatement("select * from __THIS__ where col1 != 'a'")
    val transform2 = new SQLTransformer()
      .setStatement("select col1, col2, SQRT(col2) as col3 from __THIS__")

    val pipeline = new Pipeline()
      .setStages(Array(transform1, transform2))

3.パイプラインを実行して、提供されたデータフレームを変換します

pipeline.fit(df).transform(df)
      .show(false)

    /**
      * +----+----+------------------+
      * |col1|col2|col3              |
      * +----+----+------------------+
      * |b   |2   |1.4142135623730951|
      * |c   |3   |1.7320508075688772|
      * +----+----+------------------+
      */

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

pyspark mapPartitions関数はどのように機能しますか?

分類Dev

Pysparkのように、大きなパンダデータを複数の(寄木細工/ csv)ファイルに保存する方法はありますか?

分類Dev

PySparkに「1日の分」を与える機能はありますか?

分類Dev

Pyspark:spark-submitがCLIのように機能しない

分類Dev

pysparkでleft_anti結合が期待どおりに機能しないのはなぜですか?

分類Dev

pyspark: Compare 2 large pyspark dataframes

分類Dev

Pyspark:hdfsにそのようなファイルまたはディレクトリはありません

分類Dev

pandas str.contains in pyspark dataframe in Pyspark

分類Dev

pysparkモジュールの機能を使用すると尖度が過剰になりませんか?

分類Dev

pysparkのあいまいな列をどのように削除しますか?

分類Dev

udf(ユーザー定義関数)はpysparkでどのように機能しますか?

分類Dev

Merge two dataframes in PySpark

分類Dev

DATE_ADD(date、month(int type))のような来月追加するpyspark関数はありますか

分類Dev

Pyspark directStreamsforeachRddには常に空のRDDがあります

分類Dev

PySparkのcountApproxDistinctByKey

分類Dev

PySpark の datefromparts()

分類Dev

PysparkでUDF関数を使用する場合、密なベクトルはどのタイプである必要がありますか?

分類Dev

pysparkでexp関数が機能しないのはなぜですか?

分類Dev

pysparkはJavaとどのように統合されますか?

分類Dev

Gradleには「npmlink」のような機能がありますか?

分類Dev

CypherにはGroupByのような機能がありますか?

分類Dev

AngularJSにはevalのような機能がありますか?

分類Dev

angularにはvue.jsのような「計算されたプロパティ」機能がありますか?

分類Dev

pysparkで機能名を使用してランダムフォレストの決定パスを印刷するにはどうすればよいですか?

分類Dev

Pysparkでこれまでのすべてのイベントが他にある場合、最初のイベントまでをキャプチャするにはどうすればよいですか?

分類Dev

PySparkが起動しません-'python ':そのようなファイルまたはディレクトリはありません

分類Dev

PySparkデータフレームに列(文字列の配列)があります。配列を分割して、配列内の文字列アイテムごとに個別の行を作成するにはどうすればよいですか?

分類Dev

udfをpysparkに登録する利点はありますか?

分類Dev

pysparkの爆発機能

Related 関連記事

  1. 1

    pyspark mapPartitions関数はどのように機能しますか?

  2. 2

    Pysparkのように、大きなパンダデータを複数の(寄木細工/ csv)ファイルに保存する方法はありますか?

  3. 3

    PySparkに「1日の分」を与える機能はありますか?

  4. 4

    Pyspark:spark-submitがCLIのように機能しない

  5. 5

    pysparkでleft_anti結合が期待どおりに機能しないのはなぜですか?

  6. 6

    pyspark: Compare 2 large pyspark dataframes

  7. 7

    Pyspark:hdfsにそのようなファイルまたはディレクトリはありません

  8. 8

    pandas str.contains in pyspark dataframe in Pyspark

  9. 9

    pysparkモジュールの機能を使用すると尖度が過剰になりませんか?

  10. 10

    pysparkのあいまいな列をどのように削除しますか?

  11. 11

    udf(ユーザー定義関数)はpysparkでどのように機能しますか?

  12. 12

    Merge two dataframes in PySpark

  13. 13

    DATE_ADD(date、month(int type))のような来月追加するpyspark関数はありますか

  14. 14

    Pyspark directStreamsforeachRddには常に空のRDDがあります

  15. 15

    PySparkのcountApproxDistinctByKey

  16. 16

    PySpark の datefromparts()

  17. 17

    PysparkでUDF関数を使用する場合、密なベクトルはどのタイプである必要がありますか?

  18. 18

    pysparkでexp関数が機能しないのはなぜですか?

  19. 19

    pysparkはJavaとどのように統合されますか?

  20. 20

    Gradleには「npmlink」のような機能がありますか?

  21. 21

    CypherにはGroupByのような機能がありますか?

  22. 22

    AngularJSにはevalのような機能がありますか?

  23. 23

    angularにはvue.jsのような「計算されたプロパティ」機能がありますか?

  24. 24

    pysparkで機能名を使用してランダムフォレストの決定パスを印刷するにはどうすればよいですか?

  25. 25

    Pysparkでこれまでのすべてのイベントが他にある場合、最初のイベントまでをキャプチャするにはどうすればよいですか?

  26. 26

    PySparkが起動しません-'python ':そのようなファイルまたはディレクトリはありません

  27. 27

    PySparkデータフレームに列(文字列の配列)があります。配列を分割して、配列内の文字列アイテムごとに個別の行を作成するにはどうすればよいですか?

  28. 28

    udfをpysparkに登録する利点はありますか?

  29. 29

    pysparkの爆発機能

ホットタグ

アーカイブ