2016-03-29 13 views
3

sparkデータフレームの列のすべての値を特定の値に置き換えることを検討しています。私はpysparkを使用しています。私は10に列column_nameのすべての値を置き換えたいデータフレームの列のすべての値をpysparkに置き換えます。

ここ

new_df = df.withColumn('column_name',10)

- 私のようなものを試してみました。パンダでは、これは df['column_name']=10で行うことができます。私はスパークで同じことをする方法を理解することができません。

答えて

2

次のように​​3210を使用する方が簡単かもしれません:

from pyspark.sql.functions import lit 
new_df = df.withColumn('column_name', lit(10)) 
2

UDFを使用して値を置き換えることができます。ただし、さまざまな値をサポートするためにカリングを使用できます。

from pyspark.sql.functions import udf, col 

def replacerUDF(value): 
    return udf(lambda x: value) 

new_df = df.withColumnRenamed("newCol", replacerUDF(10)(col("column_name"))) 
関連する問題