У меня есть простой пример использования объединения двух данных: я использую версию spark 1.6.3.Проблема заключается в том, что при попытке привести строковый тип к целочисленному типу с использованием метода приведения все полученные столбцы имеют нулевые значения.
Я уже перепробовал все решения, упомянутые здесь Как привести столбец в фрейм данных? но на все вопросы есть ответы для scala api, и я не смог найти никого, кто работает с java api.
DataFrame dataFromDB = getDataFromDB("(select * from schema.table where
col1 is not null)"); //This method uses spark sql
//to connect to a db2 data base and get the data
//I perform the cast operation as
dataFromDB.withColumn("INCOME_DATA", dataFromDB.col("INCOME_DATA")
.cast(DataTypes.IntegerType));
//but the above results in null values
//other things I tried based on the link above is below
dataFromDB.selectExpr(cast("INCOME_DATA" as integer")) //this too produces null values
//I tried to remove the whitespaces from income data column with no success
dataFromDB.select(dataFromDB.col("INCOME_DATA").toString().replaceAll("\\s+", ""); //this does not remove any whitespace
Я не могу найти решение для этого, также столбец, который я пытаюсь преобразоватьимеет тип String и может содержать конечные пробелы, это может быть проблемой?если да, то как я могу удалить их, я попытался удалить их, как показано ниже, но, похоже, не работает.Это моя первая работа с искровым фреймом данных, поэтому любая помощь в этом очень ценится.Спасибо!