J'ai une trame de données avec 3 variables et 250K enregistrements. À titre d'exemple, considéronsComment échanger des valeurs entre 2 colonnes
> df <- data.frame(V1=c(1,2,4), V2=c("a","a","b"), V3=c(2,3,1))
V1 V2 V3
1 a 2
2 a 3
4 b 1
et que vous souhaitez échanger des valeurs entre V1 et V3 en fonction de la valeur de V2 comme suit: si V2 == 'b'
puis V1 <- V3
et V3 <- V1
entraînant
V1 V2 V3
1 a 2
2 a 3
1 b 4
J'ai essayé do boucle mais cela prend une éternité. Si j'utilise Perl, cela prend quelques secondes. Je crois que cette tâche peut également être accomplie efficacement dans R. Toutes les suggestions sont appréciées.
Je suis curieux de savoir comment cette situation est survenue, si cela ne vous dérange pas. J'ai une certaine expérience de l'utilisation de logiciels au moins conçus pour travailler avec des données d'enquête, mais comme nous suivons la tendance de l'intégration avec les bases de données informatiques, les questions de structure de données ont commencé à se poser et j'ai dû commencer à réfléchir nous stockons des choses dans des tableaux. C'est pourquoi je suis curieux de savoir comment votre situation est apparue :) – Jonathan