数据类型
干得好!在开始建模之前,您需要了解 Spark 只能处理数值数据。这意味着 DataFrame 中的所有列都必须是整数或小数(在 Spark 中称为 "double")。
导入数据时,我们让 Spark 猜测每列所包含的信息类型。遗憾的是,Spark 并不总是猜对。您会发现 DataFrame 中有些列看起来是数字,但实际上是字符串,而非真正的数值。
为了解决这个问题,您可以将 .cast() 方法与 .withColumn() 方法结合使用。
需要注意的是,.cast() 作用于列,而 .withColumn() 作用于 DataFrame。
传给 .cast() 的唯一参数是您想要转换成的目标类型,用字符串表示。比如,要创建整数,请传入参数 "integer";要创建小数,则使用 "double"。
您可以像上一章那样,在调用 .withColumn() 时内嵌对 .cast() 的调用,从而覆盖已有的列!
Spark 在建模时需要哪种类型的数据?
本练习是课程的一部分
