浏览代码

i2i样本制作,第4步。 连续值分桶

zhangbo 4 月之前
父节点
当前提交
eeab2ec9be

+ 15 - 3
src/main/scala/com/aliyun/odps/spark/examples/makedata_dssm/makedata_i2i_04_bucketFile_20241128.scala

@@ -45,7 +45,11 @@ object makedata_i2i_04_bucketFile_20241128 {
             if (json.nonEmpty) { // 确保 JSON 对象非空
               json.foreach {
                 case (k, v) =>
-                  val value = v.toString.toDouble
+                  val value = try {
+                    v.toString.toDouble
+                  } catch {
+                    case _: Exception => 0D
+                  }
                   k match {
                     case "str_day1" => result += (("action:str_day1", value))
                     case "rov_day1" => result += (("action:rov_day1", value))
@@ -76,7 +80,11 @@ object makedata_i2i_04_bucketFile_20241128 {
             if (json.nonEmpty) { // 确保 JSON 对象非空
               json.foreach {
                 case (k, v) =>
-                  val value = v.toString.toDouble
+                  val value = try {
+                    v.toString.toDouble
+                  } catch {
+                    case _: Exception => 0D
+                  }
                   k match {
                     case "str_day1" => result += (("cate1:str_day1", value))
                     case "rov_day1" => result += (("cate1:rov_day1", value))
@@ -108,7 +116,11 @@ object makedata_i2i_04_bucketFile_20241128 {
             if (json.nonEmpty) { // 确保 JSON 对象非空
               json.foreach {
                 case (k, v) =>
-                  val value = v.toString.toDouble
+                  val value = try {
+                    v.toString.toDouble
+                  } catch {
+                    case _: Exception => 0D
+                  }
                   k match {
                     case "str_day1" => result += (("cate2:str_day1", value))
                     case "rov_day1" => result += (("cate2:rov_day1", value))