Pyspark casting String to Integer always null

Viewed 28

I'm reading the following dataframe with pyspark

+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+
|              regiao|                  uf|                sexo|              faixa|           categoria|           qtCond|
+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"A-Condu...|      "100"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AB-Cond...|"10.137"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AC-Cond...|          "6"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AD-Cond...|        "25"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AE-Cond...|          "1"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"B-Condu...|"15.419"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"C-Condu...|          "7"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"D-Condu...|          "6"|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"E-Condu...|          "1"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"A-Condu...|      "457"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AB-Cond...|"24.148"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AC-Cond...|        "24"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AD-Cond...|  "1.126"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AE-Cond...|        "70"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"B-Condu...|"33.386"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"C-Condu...|        "18"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"D-Condu...|      "407"|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"E-Condu...|        "24"|
|"Centro-...|"Distrit...|"Masculi...|"26 a 30"|"A-Condu...|      "996"|
|"Centro-...|"Distrit...|"Masculi...|"26 a 30"|"AB-Cond...|"40.192"|
+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+

I need to convert the last column to Integer to make some transformations, I am applying this code: newDF = df.withColumn("qtConds", trim(regexp_replace(col("qtCond"), "\"|\\.", "")).cast("int"))

But It always returning null on conversion, I tried to apply the trim to avoid spaces but it not worked.

+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+-------+
|              regiao|                  uf|                sexo|              faixa|           categoria|           qtCond|qtConds|
+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+-------+
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"A-Condu...|      "100"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AB-Cond...|"10.137"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AC-Cond...|          "6"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AD-Cond...|        "25"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"AE-Cond...|          "1"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"B-Condu...|"15.419"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"C-Condu...|          "7"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"D-Condu...|          "6"|   null|
|"Centro-...|"Distrit...|"Masculi...|"18 a 21"|"E-Condu...|          "1"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"A-Condu...|      "457"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AB-Cond...|"24.148"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AC-Cond...|        "24"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AD-Cond...|  "1.126"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"AE-Cond...|        "70"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"B-Condu...|"33.386"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"C-Condu...|        "18"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"D-Condu...|      "407"|   null|
|"Centro-...|"Distrit...|"Masculi...|"22 a 25"|"E-Condu...|        "24"|   null|
|"Centro-...|"Distrit...|"Masculi...|"26 a 30"|"A-Condu...|      "996"|   null|
|"Centro-...|"Distrit...|"Masculi...|"26 a 30"|"AB-Cond...|"40.192"|   null|
+--------------------+--------------------+--------------------+-------------------+--------------------+-----------------+-------+
0 Answers
Related