2016-10-21 7 views
1

Ich erhalte diese Ausnahme, wenn ich den folgenden Code verwenden:Erstes int() Argument muss eine Zeichenkette oder eine Zahl sein, nicht ‚Column'- Apache Spark

int() argument must be a string or a number, not 'Column' 
df= df.withColumn('FY', 
    F.when((df['ID'].substr(5,2).isin({'11','12'})),int(df['ID'].substr(1,4))+1). 
    otherwise(int(df['ID'].substr(1,4)))) 

Grundsätzlich Ich möchte 1 zum Ergebnis hinzufügen, wenn das Ergebnis in 11 oder 12 ist, ansonsten einfach unter der ID. Bitte helfen Sie mir, ich bin ziemlich neu in Python.

Antwort

1

Verwendung:

df.withColumn('FY',F.when(df['ID'].substr(5,2).isin({'11','12'}), 
    df['ID'].substr(1,4).cast("integer") + 1). 
    otherwise(df['ID'].substr(1,4)).cast("integer")) 
+0

Awesome! das funktioniert dank! –

Verwandte Themen