Comment “négatif sélectionnez” colonnes de l'étincelle du dataframe

Je ne peux pas la comprendre, mais suppose que c'est simple. J'ai une étincelle dataframe df. Cette df a les colonnes "A","B" et "C". Maintenant, disons que j'ai un Tableau contenant le nom des colonnes de cette df:

column_names = Array("A","B","C")

Je voudrais faire un df.select() de telle manière, que je peux spécifier les colonnes pas pour sélectionner.
Exemple: disons que je ne veux pas de sélectionner les colonnes "B". J'ai essayé

df.select(column_names.filter(_!="B"))

mais cela ne fonctionne pas, comme

org.apache.spark.sql.DataFrame
ne peut pas être appliqué à (Array[String])

Donc, ici il dit qu'il doit travailler avec un Seq place. Cependant, en essayant

df.select(column_names.filter(_!="B").toSeq)

résultats dans

org.apache.spark.sql.DataFrame
ne peut pas être appliqué à (Seq[String]).

Ce que je fais mal?

OriginalL'auteur Blaubaer | 2015-07-15