Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Pyspark错误,当我尝试修改基于条件的列时,否则_Apache Spark_Pyspark - Fatal编程技术网

Apache spark Pyspark错误,当我尝试修改基于条件的列时,否则

Apache spark Pyspark错误,当我尝试修改基于条件的列时,否则,apache-spark,pyspark,Apache Spark,Pyspark,我正在使用Pyspark 3.0.1 我想在满足条件时修改一列,否则我想保持原来的值 df.printSchema() 根 |--ID:decimal(4,0)(可空=真) |--提供程序:字符串(nullable=true) |--主体:浮点(可空=假) |--PRINCIPALBALANCE:浮点(nullable=true) |--状态:整数(nullable=true) |--分期付款率:浮动(nullable=true) |--年度百分比:浮动(可空=真) |--处理费百分比:双倍(n

我正在使用Pyspark 3.0.1

我想在满足条件时修改一列,否则我想保持原来的值

df.printSchema()
根
|--ID:decimal(4,0)(可空=真)
|--提供程序:字符串(nullable=true)
|--主体:浮点(可空=假)
|--PRINCIPALBALANCE:浮点(nullable=true)
|--状态:整数(nullable=true)
|--分期付款率:浮动(nullable=true)
|--年度百分比:浮动(可空=真)
|--处理费百分比:双倍(nullable=true)
|--解散日期:字符串(nullable=true)
|--ZOHOID:integer(nullable=true)
|--UPFRONTPROCESSINGFEEBALANCE:float(nullable=true)
|--预扣税余额:浮动(可空=真)
|--UPFRONTPROCESSINGFEEPERCENTAGE:float(nullable=true)
|--UPFRONTPROCESSINGFEEWHTPERCENTAGE:float(nullable=true)
|--PROCESSINGFEEWHTPERCENTAGE:float(nullable=true)
|--PROCESSINGFEEVATPERCENTAGE:float(nullable=true)
|--BUSINESSSHORTCODE:string(nullable=true)
|--EXTRACTIONDATE:时间戳(nullable=true)
|--假费用:双倍(可空=假)
|--伪WHT:string(nullable=true)
|--假费用:字符串(可空=真)
|--代理费CP:string(nullable=true)
|--代理增值税CP:字符串(nullable=true)
|--代理WHT CP:字符串(可空=真)
|--代理费\u增值税\u WHT CP:字符串(可空=真)
测向头(1)
[行(ID=十进制('16')),Provider='fake',Principal=2000.01,PRINCIPALBALANCE=0.2,STATUS=4,分期付款率=0.33333333,年百分比=600.0,处理费百分比=0.20,解散日期=None,ZOHOID=3000,前期处理费余额=None,预扣税余额=None,前期处理费百分比=None,前期处理费Whtpercentage=None,处理费WhtpercentagE=None,PROCESSINGFEEVATPERCENTAGE=16.0,BUSINESSSHORTCODE='20005',ExtractionDate=datetime.datetime(2020,11,25,5,7,58,6000),假费=1770.7,假费=312.48',假费=2083.18',代理费=566.62',代理增值税=566.62',代理费=186代理费=5394.41']
我已经读到,我可以用when和other来完成它,但是当我用下面的代码运行它时,我有一个错误:

从pyspark.sql.functions导入时

df.withColumn('Gross Loan Amount',当(((df['Disb Date']
Gross Loan Amount
不是数据框中的一列时,
否则
语句在第一个示例中无法解析

但在第二个示例中,
txt
是一个现有列,因此可以解析
否则的
语句

是否确实要修改不存在的
贷款总额