Au fur et à mesure de mon apprentissage sur R, je me suis construit un petit document où j’ai listé les fonctions que j’ai utilisé, ce pense bête me sert tous les jour pour écrire mes nouveaux scripts. J’ai donc décidé de la partager avec vous.

La gestion de fichiers

Lire un fichier

[pastacode lang= »java » manual= »data%3Dread.csv(file%20%3D%20%22monfichier.csv%22%2Cheader%3DT%2C%20sep%3D%22%3B%22%2Cencoding%20%3D%20%22UTF-8%22) » message= » » highlight= » » provider= »manual »/]

Voici quelques options pratiques :

  • encoding : permet de spécifier l’encodage du fichier
  • sep : permet de spécifier le séparateur
  • header : permet de spécifier si la première ligne contient le nom des colonnes
  • skip  : permet de ne pas tenir compte des premières ligne

Sauvegarder un fichier

[pastacode lang= »java » manual= »write.table(listeSERPSNettoyee%2C%20file%20%3D%20%22C%3A%2FUsers%2Ffichier.csv%22%2C%20sep%20%3D%20%22%3B%22%2C%20row.names%20%3D%20FALSE%2Cappend%3DFALSE%2Ccol.names%20%3D%20TRUE%2Cna%20%3D%20%22%22%2C%20quote%20%3D%20FALSE)%0A » message= » » highlight= » » provider= »manual »/]

Voici quelques options pratiques :

  • sep : permet de définir le séparateur
  • append : permet de spécifier si vous souhaitez ajouter ce fichier à la suite des données existantes ou remplacer l’existant
  • colnames : permet de spécifier si vous souhaitez nommer les colonnes
  • quote : permet de spécifier si vous souhaitez mettre le texte entre guillement

 

La gestion des dataFrames

Dédupliquer

[pastacode lang= »java » manual= »KeywordAvant%20%3C-%20unique(avant%24Keyword) » message= » » highlight= » » provider= »manual »/]

Vous pouvez dédupliquer sur la base d’un champ ou de l’intégralité du dataFrame

Convertir en dataframe

[pastacode lang= »java » manual= »KeywordAvant%20%3C-%20as.data.frame(KeywordAvant) » message= » » highlight= » » provider= »manual »/]

Renommer les colonnes

[pastacode lang= »java » manual= »colnames(urls)%20%3D%20c(%22url%22%2C%22position%22) » message= » » highlight= » » provider= »manual »/]

Pour le dataFrame urls, je spécifie les noms des 2 colonnes

La manipulation de données

La librairie DPLYR est vraiment pratique.

Croiser 2 dataFrames

[pastacode lang= »markup » manual= »data%20%3C-%20inner_join(x%3Ddata1%3Ddata2%2C%20by%20%3D%20c(%22keywords%22%20%3D%20%22H1%22)) » message= » » highlight= » » provider= »manual »/]

Ici data va contenir la liste des lignes de Data1 et Data2  pour lesquelles le champ « keywords » de data1 est égal au champ « H1 » de data2

Exclusion

[pastacode lang= »markup » manual= »data%3C-%20anti_join(x%3Ddata1%2Cy%3Ddata2%2C%20by%20%3D%20c(%22keywords%22%20%3D%20%22H1%22)) » message= » » highlight= » » provider= »manual »/]

Ici data va contenir la liste des lignes de Data1 pour lesquelles le champ « keywords » de data1 n’est jamais présent dans le champ « H1 » de data2

Filtrer

[pastacode lang= »java » manual= »marques%20%3C-%20filter(marques%2C%20H1%20!%3D%20%22%22) » message= » » highlight= » » provider= »manual »/]

Ici je récupère la liste des lignes du dataframe marque pour qui H1 n’est pas vide

[pastacode lang= »java » manual= »filter(marques%2C%20!grepl(%22adidas%22%2Cmarques%24urlRelative)) » message= » » highlight= » » provider= »manual »/]

Ici je récupère la liste des marques qui ne contiennent pas « adidas » dans leur url

Regroupement

 

 

[pastacode lang= »java » manual= »urlScorees%20%3C-%20listeUrl%20%25%3E%25%20%0A%20%20%20%20group_by(url)%20%25%3E%25%20%0A%20%20%20%20summarise(score%20%3D%20sum(trafic))%20%20%25%3E%25%20%0A%20%20%20%20arrange(desc(score))%0A » message= » » highlight= » » provider= »manual »/]

Je regroupe toutes les urls et calcule un champ « score » qui correspondra à la somme du « trafic » de chaque url, et je trie le tout selon le champ « score »

Concaténer 2 dataFrame

[pastacode lang= »java » manual= »motsCles%3C-bind_rows(motsCles%2Cmarques) » message= » » highlight= » » provider= »manual »/]

Cette fonction permet d’ajouter des champs dans mon dataframe « motsCles ».

Attention cela ne fonctionne que s’il y a le même nombre de lignes

Concaténer

[pastacode lang= »java » manual= »maString%20%3C-%20paste(%22valeur%201%22%2C%22valeur%202%22%2Csep%3D%22%22)%0A%0A » message= » » highlight= » » provider= »manual »/]

On peut concaténer autant le nombre de chaines souhaités.

Le paramètre « sep » permet de spécifier le séparateur.

 

Supprimer des colonnes

[pastacode lang= »java » manual= »marques%20%3C-marques%5B%20%2C%20c(2%2C4)%5D%0A%0AscorePage%20%3C-scorePage%5B%20%2C%20c(%22url%22%2C%22score%22)%5D%0A%0A » message= » » highlight= » » provider= »manual »/]

 

Vous pouvez spécifier l’indice de la colonne ou le nom de la colonne

 

 

Remplacer des valeurs

[pastacode lang= »java » manual= »sub(%22http%3A%2F%2Fwww.laredoute.fr%22%2C%22%22%2Cmarques%24Full.URL) » message= » » highlight= » » provider= »manual »/]

 

Ici je passe une url en relatif

Créer data.frame vide

[pastacode lang= »java » manual= »df%20%3C-%20data.frame(keyword%3Das.character()%2CnbProduct%20%3D%20as.numeric()) » message= » » highlight= » » provider= »manual »/]

Voilà pour une première liste. Bien sur ça n’est pas exhaustif, mais c’est un bon début.

Et vous y-a-t-il d’autres commandes qui vous sont vitales ?

 

Catégories : R pour le SEO

0 commentaire

Laisser un commentaire

Emplacement de l’avatar

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *