У меня есть как DataFrame со строковым столбцом
val df= Seq(("0003C32C-FC1D-482F-B543-3CBD7F0A0E36 0,8,1,799,300:3 0,6,1,330,300:1 2,6,1,15861:1 0,7,1,734,300:1 0,6,0,95,300:1 2,7,1,15861:1 0,8,0,134,300:3")).toDF("col_str")
+--------------------+
| col_str|
+--------------------+
|0003C32C-FC1D-482...|
+--------------------+
Строковый столбец состоит из последовательностей символов, разделенных пробелами. Если последовательность символов начинается с 0, я хочу вернуть второе число и последний номер последовательности. Второе число может быть любым числом от 0 до 8.
Array("8,3", "6,1", "7,1", "6,1", "7,1", "8,3")
Затем я хочу преобразовать массив пар в 9 столбцов, причем первое число пары является столбцом, а второе число - значением. Если число отсутствует, оно получит значение 0.
Например
val df= Seq(("0003C32C-FC1D-482F-B543-3CBD7F0A0E36 0,8,1,799,300:3 0,6,1,330,300:1 2,6,1,15861:1 0,7,1,734,300:1 0,6,0,95,300:1 2,7,1,15861:1 0,8,0,134,300:1")).).toDF("col_str", "col0", "col1", "col2", "col3", "col4", "col5", "col6", "col7", "col8")
+--------------------+----+----+----+----+----+----+----+----+----+
| col_str|col0|col1|col2|col3|col4|col5|col6|col7|col8|
+--------------------+----+----+----+----+----+----+----+----+----+
|0003C32C-FC1D-482...| 0| 0| 0| 0| 0| 0| 1| 1| 3|
+--------------------+----+----+----+----+----+----+----+----+----+
Мне все равно, будет ли решение в Scala или Python.