Python 用pyspark替换数据帧中列的所有值
我希望用一个特定的值替换spark数据帧中一列的所有值。我正在使用pyspark。我试过类似的东西-Python 用pyspark替换数据帧中列的所有值,python,apache-spark,pyspark,spark-dataframe,Python,Apache Spark,Pyspark,Spark Dataframe,我希望用一个特定的值替换spark数据帧中一列的所有值。我正在使用pyspark。我试过类似的东西- new_df=df.withColumn('column_name',10) 在这里,我想将column\u name列中的所有值替换为10。在熊猫中,这可以通过 df['column\u name']=10。我不知道如何在Spark中执行相同的操作。您可以使用替换值。但是,您可以使用咖喱来支持不同的值 from pyspark.sql.functions import udf, col d
new_df=df.withColumn('column_name',10)
在这里,我想将column\u name
列中的所有值替换为10
。在熊猫中,这可以通过
df['column\u name']=10
。我不知道如何在Spark中执行相同的操作。您可以使用替换值。但是,您可以使用咖喱来支持不同的值
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")))
使用
lit
可能更容易,如下所示:
from pyspark.sql.functions import lit
new_df = df.withColumn('column_name', lit(10))