Apache spark 计算条件内的最大值时出错
这段代码给了我一个错误:\uuz()接受1个位置参数,但给出了2个位置参数Apache spark 计算条件内的最大值时出错,apache-spark,pyspark,apache-spark-sql,Apache Spark,Pyspark,Apache Spark Sql,这段代码给了我一个错误:\uuz()接受1个位置参数,但给出了2个位置参数 df2 = df1.withColumn('DISTANCESTATE', F.when(F.col('DISTANCE') <= F.col('RADIUSINMETERS') + F.col('RADIUSINMETERS2'), "OVERLAP") .when
df2 = df1.withColumn('DISTANCESTATE',
F.when(F.col('DISTANCE') <= F.col('RADIUSINMETERS') + F.col('RADIUSINMETERS2'), "OVERLAP")
.when(F.col('DISTANCE') >= max(F.col('RADIUSINMETERS'), F.col('RADIUSINMETERS2')), "INSIDE")
.otherwise(' '))
df2.show(1000, False)
df2=df1.withColumn('DISTANCESTATE',
F.当(F.col('DISTANCE')=最大值(F.col('RADIUSINMETERS')、F.col('RADIUSINMETERS'))、F.col('RADIUSINMETERS')、“内部”)
.否则(“”))
df2.显示(1000,假)
谢谢 为此使用
F.max
。不能在spark列上使用Pythonmax
df2 = df1.withColumn('DISTANCESTATE',
F.when(
F.col('DISTANCE') <= F.col('RADIUSINMETERS') + F.col('RADIUSINMETERS2'),
"OVERLAP"
).when(
F.col('DISTANCE') >= F.greatest(F.col('RADIUSINMETERS'), F.col('RADIUSINMETERS2')),
"INSIDE"
).otherwise(' ')
)
df2=df1.withColumn('DISTANCESTATE',
F.什么时候(
F.col('DISTANCE')=F.maxist(F.col('RADIUSINMETERS')、F.col('RADIUSINMETERS'))、F.col('RADIUSINMETERS'),
“内部”
).否则(“”)
)