У меня есть фрейм данных со столбцом (A, B), где столбец B - это бесплатный тест, который я преобразовываю в тип (NOT_FOUND, TOO_LOW_PURCHASE_COUNT и т. Д.) Для лучшей агрегации.Я создал коммутационный ящик всех возможных паттеров и их соответствующего типа, но он не работает.
def getType(x: String): String = x match {
case "Item % not found %" =>"NOT_FOUND"
case "%purchase count % is too low %" =>"TOO_LOW_PURCHASE_COUNT"
case _ => "Unknown"
}
getType("Item 75gb not found")
val newdf = df.withColumn("updatedType",getType(col("raw_type")))
Это дает мне «Неизвестный».Может кто-нибудь сказать мне, как сделать переключение дела для оператора как?