0
votes

Créer une nouvelle colonne sur la condition

J'ai 23 colonnes numériques mais je suis intéressé par un numéro seulement et d'autres numéros seraient codés comme n ° si la colonne contient le numéro 3, il serait codé Oui et d'autres numéros ne seraient pas. Comment puis-je réaliser ça? Le df pour la démonstration. merci xxx

r

4 commentaires

Qu'est-ce que le "par" signifie dans c () ?


Utilisez qui () et n'importe quel () pour toutes les colonnes individuellement


Mais cela prendrait beaucoup de codage et de texto. J'aimerais avoir quelque chose qui pourrait être utilisé sur l'ensemble du cadre de données et pourrait également être utilisé sur d'autres données de données plus tard. peut-être quelque chose comme une fonction


Quelle serait votre rendement attendu exact étant donné les données d'entrée?


3 Réponses :


1
votes

Votre exemple de code nécessitait quelques modifications, mais je pense que c'est ce que vous aviez à l'esprit: xxx

Ceci obtient les enregistrements avec la lettre "3" xxx < / pré>


0 commentaires

1
votes

En supposant que vous ne souhaitez pas modifier les valeurs dans ID code> Colonne I.E La 1ère colonne que vous pouvez faire:

#Replace numbers that have 3 with "yes"
df[-1][sapply(df[-1], grepl, pattern = 3)] <- 'yes'
#Replace rest of the numbers with "no".
df[-1][df[-1] != 'yes'] <- 'no'


0 commentaires

1
votes

Nous pouvons également utiliser str_detect avec cas_quive xxx


0 commentaires