0
votes

Compte tenu d'une liste de chaînes, comment puis-je vérifier si ces chaînes sont dans une liste de Scala?

J'ai une liste de mots-clés xxx

j'ai dataframe xxx

je veux généreraframe

< Strong> Drapeau de titre
Titre1 0
Titre2 0
verre 1
Horloge 1

mon code actuel xxx

qui ne fonctionne actuellement pas correctement pour certaines correspondances à chaîne, veuillez indiquer s'il y a un meilleur moyen


2 commentaires

Pouvez-vous fournir quelle est l'erreur ou le scénario que vous ne travaillez pas ??


Il est vrai pour le match de "Wailed" avec "LED"


3 Réponses :


1
votes

convert mykeywords code> dans un fichier de données et droit code> rejoindre code> les deux cadres de données sur des valeurs au cas d'une manière insensible. Remplacez null code> correspondant avec 0 code> et non-null correspond avec 1 code>.

df
.join(right = mykeywordsDf, joinType = "right", joinExprs = lower(df("Title")).equalTo(lower(mykeywordsDf("Title")))
.withColumn(
   "Flag", 
   when(mykeywordsDf("Title").isNull, 0)
    .when(mykeywordsDf("Title").isNotNull, 1)
)


0 commentaires

0
votes

Votre approche est presque correcte juste que vous devez mettre de la chaîne littérale dans ripe comme ceci xxx

Ce code ci-dessus fonctionnera.


1 commentaires

Si cela résout votre problème donné, acceptez la réponse afin que d'autres peeps puissent obtenir de l'aide



0
votes

Vous pouvez également utiliser ININ fonction Pour vérifier si l'expression de colonne est contenue dans votre MyKeywords Liste: xxx

sortie: xxx


0 commentaires