Sparkのデータフレーム列の値から空白を削除します

Iz M

business_dfスキーマのデータフレーム()があります:

|-- business_id: string (nullable = true)
|-- categories: array (nullable = true)
|    |-- element: string (containsNull = true)
|-- city: string (nullable = true)
|-- full_address: string (nullable = true)
|-- hours: struct (nullable = true)
|-- name: string (nullable = true)

new_dfの値に'name'空白が含まれないように、新しいデータフレーム(を作成したいと思います。

私のコードは:

from pyspark import SparkContext
from pyspark.sql import SQLContext
from pyspark.sql import HiveContext
from pyspark.sql.functions import UserDefinedFunction
from pyspark.sql.types import StringType

udf = UserDefinedFunction(lambda x: x.replace(' ', ''), StringType())
new_df = business_df.select(*[udf(column).alias(name) if column == name else column for column in business_df.columns])
new_df.registerTempTable("vegas")
new_df.printSchema()
vegas_business = sqlContext.sql("SELECT stars, name from vegas limit 10").collect()

私はこのエラーを受け取り続けます:

NameError: global name 'replace' is not defined

このコードの何が問題になっていますか?

zero323

あなたが説明した問題は提供されたコードでは再現できませんが、PythonUDFs使用してこのような単純なタスクを処理することはかなり非効率的です。テキストからスペースを削除したい場合は、次を使用してregexp_replaceください。

from pyspark.sql.functions import regexp_replace, col

df = sc.parallelize([
    (1, "foo bar"), (2, "foobar "), (3, "   ")
]).toDF(["k", "v"])

df.select(regexp_replace(col("v"), " ", ""))

空の行を正規化する場合は、次を使用しますtrim

from pyspark.sql.functions import trim

df.select(trim(col("v")))

先頭/末尾のスペースを維持したい場合は、次のように調整できますregexp_replace

df.select(regexp_replace(col("v"), "^\s+$", ""))

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

Spark Scala:別のデータフレームからデータフレーム列の値を更新します

分類Dev

データフレーム列の値の末尾から文字を削除します

分類Dev

データフレームの列の条件値> 0のすべての列から重複を削除します

分類Dev

Sparkの単一のデータフレームから列のリストを削除します

分類Dev

Sparkは前の行からの値で新しい列をデータフレームに追加します

分類Dev

concat_wsは、sparkデータフレームの出力からnull文字列を削除します

分類Dev

Sparkデータフレームの小数点文字列から小数点を削除します

分類Dev

pandasデータフレームのすべての列と行から値を削除します

分類Dev

Spark-データフレーム内の特定の列値を操作します(文字を削除します)

分類Dev

scala / spark-データフレームをグループ化し、他の列から値をデータフレームとして選択します

分類Dev

Pythonのデータフレームから観測値を削除します

分類Dev

Python Pandas:別のデータフレームの文字列コメントからデータフレームのカテゴリの最大値を削除します

分類Dev

pysparkデータフレームの空白を削除します

分類Dev

SparkデータフレームのStringType列から辞書を分割します

分類Dev

すべての値がNAであるデータフレームから列を削除します

分類Dev

データフレームの列から特殊文字を削除します

分類Dev

データフレームの各行から日時文字列を削除します

分類Dev

Rのデータフレームから0列を削除します

分類Dev

R-データフレームの異なる列から値を削除します

分類Dev

データフレームの列から辞書の値を抽出します

分類Dev

データフレームから行を削除すると、列の値が別のデータフレームに存在しません

分類Dev

データフレームの列の値から関数を作成し、別の列の空白の要素に挿入します

分類Dev

pandasデータフレームの列から文字列値を削除する方法

分類Dev

データフレーム列の文字列値から文字を削除する

分類Dev

Sparkデータフレームから列の値を取得できません

分類Dev

データフレームから数値列のみを抽出します

分類Dev

Python:最初の行に格納する最後の値を除くすべてのデータをデータフレームの列から削除します

分類Dev

Pysparkデータフレームの列からnull値を削除する

分類Dev

データフレーム列pythonから日付以外の値を削除する

Related 関連記事

  1. 1

    Spark Scala:別のデータフレームからデータフレーム列の値を更新します

  2. 2

    データフレーム列の値の末尾から文字を削除します

  3. 3

    データフレームの列の条件値> 0のすべての列から重複を削除します

  4. 4

    Sparkの単一のデータフレームから列のリストを削除します

  5. 5

    Sparkは前の行からの値で新しい列をデータフレームに追加します

  6. 6

    concat_wsは、sparkデータフレームの出力からnull文字列を削除します

  7. 7

    Sparkデータフレームの小数点文字列から小数点を削除します

  8. 8

    pandasデータフレームのすべての列と行から値を削除します

  9. 9

    Spark-データフレーム内の特定の列値を操作します(文字を削除します)

  10. 10

    scala / spark-データフレームをグループ化し、他の列から値をデータフレームとして選択します

  11. 11

    Pythonのデータフレームから観測値を削除します

  12. 12

    Python Pandas:別のデータフレームの文字列コメントからデータフレームのカテゴリの最大値を削除します

  13. 13

    pysparkデータフレームの空白を削除します

  14. 14

    SparkデータフレームのStringType列から辞書を分割します

  15. 15

    すべての値がNAであるデータフレームから列を削除します

  16. 16

    データフレームの列から特殊文字を削除します

  17. 17

    データフレームの各行から日時文字列を削除します

  18. 18

    Rのデータフレームから0列を削除します

  19. 19

    R-データフレームの異なる列から値を削除します

  20. 20

    データフレームの列から辞書の値を抽出します

  21. 21

    データフレームから行を削除すると、列の値が別のデータフレームに存在しません

  22. 22

    データフレームの列の値から関数を作成し、別の列の空白の要素に挿入します

  23. 23

    pandasデータフレームの列から文字列値を削除する方法

  24. 24

    データフレーム列の文字列値から文字を削除する

  25. 25

    Sparkデータフレームから列の値を取得できません

  26. 26

    データフレームから数値列のみを抽出します

  27. 27

    Python:最初の行に格納する最後の値を除くすべてのデータをデータフレームの列から削除します

  28. 28

    Pysparkデータフレームの列からnull値を削除する

  29. 29

    データフレーム列pythonから日付以外の値を削除する

ホットタグ

アーカイブ