0
votes

Comment modifier les noms de la liste des protéines à leur ID avec une table de protéines

J'ai une liste de protéines comme la donnée dans df1 xxx

Je dois modifier ces noms à leur identifiant à l'aide d'une table de protéines, la manière dont elles sont liées est résumée dans DF2 xxx

donc je reçois enfin une liste de l'ID de protéine au lieu des noms de protéines, comme dans df3 xxx

j'ai essayé Utilisation de la commande cbind mais pour que cela fonctionne pour que les deux cadres de données doivent avoir le même nombre de lignes qui ne sont pas le cas.


0 commentaires

4 Réponses :


1
votes
inner_join(df1,df2,by=c("name"="gene")) %>% select(name = name.y)

0 commentaires

2
votes

Vous voulez probablement quelque chose comme gauche_join () à partir de Tidyverse package: xxx

Ce morceau de code obtient des noms de protéines dans DF1 et fournit leurs identifiants de df2 dans cet ordre. Comme pour df3 , il est: xxx

(la dernière ligne avec SELECT renomme la colonne de cadre de données sur ID pour obtenir la sortie souhaitée comme vous le souhaitez.)


Exemple: (avec ordre modifié de df1 DF1 Travail) xxx

résultat: xxx


6 commentaires

Salut Petr, merci pour votre réponse rapide, je ne vais pas mentir, car certaines colonnes noms où identiques, im désormais désormais pour essayer de comprendre votre réponse, pourriez-vous lui donner un deuxième regard maintenant que j'ai mis à jour les noms de colonnes? Désolé pour ces erreurs de débutant


@Josegraciarodriguez hi Jose, j'ai essayé de mettre à jour ce morceau de code afin que cela correspond à vos nouveaux noms de colonne. Laissez-moi savoir si cela convient!


Salut encore @Peter, puisque je dois attendre 90 minutes pour poster une autre question peut-être peut-être m'aider à nouveau j'ai une liste de gènes comme ce df1 <- data.frame (noms = C ("GEN1", "Multissexs: GEN2", "GEN3", "Multispecies: GEN4")) Je voudrais me débarrasser des "multispéciies:" donc je finis avec une liste comme DF2 <- Data.frame (noms = C ("GEN1", "GEN2", "Gen3", "gen4")) désolé pour tout le problème


@Josegraciarodriguez hi Jose, vous pouvez probablement remplacer la colonne nom dans df1 en exécutant: noms df1 $ <- GSUB ("Multissexs:" ", DF1 $ noms) . Laisse moi savoir si ça fonctionne!


Cela fait!! Merci encore pour votre aide!


@Josegraciarodriguez génial! Merci pour votre retour, je suis content que cela fonctionne :-)



1
votes

in base r , nous pouvons faire xxx


ou avec correspondant xxx < / pré>


2 commentaires

J'aime beaucoup base r solutions! Votre code doit choisir et renommer la deuxième colonne pour obtenir le résultat souhaité. Mais, cependant, selon microbenchmark il est à peu près plus rapide que Tidyverse solution ...!


@Petrkajzar Je pense que les solutions obligées ne sont pas destinées à un seul but d'efficacité. C'est juste un moyen plus pratique d'exprimer et car il y a beaucoup de fonctions pour faciliter l'expression, il y aurait des bagages avec chargement de différentes fonctions.



1
votes

dans base-r xxx


0 commentaires