-5
votes

Supprimer la valeur spécifique (colonne (numéro)) de la colonne (nom) dans Scala Spark Dataframe

Dataframe d'entrée ::

Numéro | Nom

1 | 1 ABC Vous êtes génial

2 | ABC 2 Vous êtes génial

58 | xyz tu es génial 58

Dataframe de sortie attendue ::

Numéro | Nom

1 | abc tu es génial

2 | abc tu es génial

58 | xyz tu es génial

Voulez-vous essentiellement supprimer la valeur du numéro de colonne du nom de la colonne. Cela peut être n'importe où et n'importe quel temps.


4 commentaires

Avez-vous essayé quelque chose?


Oui mais je pense que ce n'est pas la peine de partager.


Vous dites que vous "Voulez-vous supprimer la valeur du numéro de colonne du nom de la colonne", mais dans votre exemple, il semble que vous mappiez les valeurs?


Maintenant, est-ce clair?


3 Réponses :


0
votes

Vous pouvez utiliser la sous-chaîne.

par exemple. pour votre colonne ABC 1 pourrait être: xxx


3 commentaires

Nope ce n'est pas quelque chose que je m'attends. Voir la question modifiée


Changer uniquement les noms de colonne? Combien de colonnes avez-vous? Vous pouvez toujours utiliser avec Column et tomber. par exemple. A.WIhColumn ("ABC Vous êtes génial", $ "1 ABC Vous êtes génial"). Drop ("ABC Vous êtes génial")


J'ai seulement 2 colonnes, nom et numéro. Je veux supprimer la valeur du numéro de colonne du nom de la colonne



0
votes

Votre exemple semble que vous essayez de cartographier les valeurs de votre Dataframe, mais si vous voulez vraiment supprimer la valeur du numéro de colonne du nom de la colonne "Comme vous le dites, vous pouvez également parcourir toutes les colonnes et renommer chacun comme Donc (en Java):

String[] columns = df.columns();
df = df.map(row -> {
    String[] newValues = new String[columns.length];
    for (int i = 0; i < columns.length; i++) {
        newValues[i] = row.getString(i).replaceAll("[^A-Za-z]","");
    }
    return RowFactory.create(newValues);
}, RowEncoder.apply(df.schema()));


4 commentaires

Nope ce n'est pas que je cherche.


Eh bien, vous devriez alors reformuler votre question, car c'est ce que vous demandez.


Nope monsieur ce n'est pas quelque chose que je demande, je vous demande 1. Le nom de la colonne a une valeur intergersion) qui peut être n'importe quoi 2. Cette valeur intergersion pertentrique que je veux retirer de la deuxième colonne (nom)


J'ai seulement 2 colonnes, nom et numéro. Je veux supprimer la valeur du numéro de colonne du nom de la colonne



2
votes

Vous pouvez essayer ceci, xxx


3 commentaires

Ici, je ne suis pas intéressé à simplement supprimer tout numéro, je veux seulement supprimer un nombre spécifique présent dans la colonne (numéro)


Réponse mise à jour pour l'utilisation de la valeur de colonne pour remplacer


Merci beaucoup krishna :)