web-dev-qa-db-ja.com

sparkデータフレームに定数値列を追加する

私はSparkバージョン2.1のDatabricksを使用しています。wampという名前のデータフレームにregionという名前の列を追加します。値NE。ただし、NameError: name 'lit' is not defined次のコマンドを実行すると、

wamp = wamp.withColumn('region', lit('NE'))

何が悪いのですか?

6
Gaurav Bansal

インポートする必要があります lit

どちらか

from pyspark.sql.functions import *

litが利用可能になります

または何かのような

import pyspark.sql.functions as sf
wamp = wamp.withColumn('region', sf.lit('NE'))
16
muon

muon @は上記の正解を提供しました。わかりやすくするために、簡単に再現可能なバージョンを追加するだけです。

>>> from pyspark.sql.functions import lit
>>> df = spark.createDataFrame([(1, 4, 3)], ['a', 'b', 'c'])
>>> df.show()
+---+---+---+
|  a|  b|  c|
+---+---+---+
|  1|  4|  3|
+---+---+---+

>>> df = df.withColumn("d", lit(5))
>>> df.show()
+---+---+---+---+
|  a|  b|  c|  d|
+---+---+---+---+
|  1|  4|  3|  5|
+---+---+---+---+
2
Joarder Kamal