Я добавил функцию UDF:
class FilterCodePaysAMER extends UDF {
def evaluate(s1: String, a1: Array[String]): Boolean = {
s1
.replaceAll("\\[", "")
.replaceAll("\\]", "")
.split(",")
.map(x => a1.contains(x))
.reduce((b1, b2) => b1 && b2)
}
, поэтому при вызове функции:
val a1 = Array("ARG", "BHS", "BRA", "CAN", "CUB", "MEX", "USA", "VEN")
filter.evaluate("[CAN,USA,ARG,USA,USA,BRA,CAN,BHS,USA,USA,VEN,CUB,MEX,USA,USA,USA,CAN,USA,TUN]", a1)
возвращается false , поскольку TUN не принадлежит входной список, представляющий регион AMER