r-如何在SparkR中更改数据帧的列类型



我正在尝试使用sparkR将数据帧中的列类型从integer更改为double。使用cast((函数进行类型转换时出错。

printSchema(df)
root
|-- col1: string (nullable = true)
|-- col2: integer (nullable = true)

代码

> df$col2 <- cast(df$col2, "double")

错误

Error in data[subset, , drop = FALSE] : 
object of type 'S4' is not subsettable

我对pysparkSparkR更熟悉,但我认为你应该这样做:

df <- withColumn(df,"col2",cast(df$col2,"double"))

现在我可以通过在cast((方法之前添加SparkR::来修复上述错误。

> df$col2 <- SparkR::cast(df$col2, "double")

最新更新