e832b90d2cf6063ecd0b470de7444e90fe76e7d51eb0134594f1c5_640_learning

Apprendre R : Les commandes à connaître

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

data=read.csv(file = "monfichier.csv",header=T, sep=";",encoding = "UTF-8")

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

write.table(listeSERPSNettoyee, file = "C:/Users/fichier.csv", sep = ";", row.names = FALSE,append=FALSE,col.names = TRUE,na = "", quote = FALSE)

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

KeywordAvant <- unique(avant$Keyword)

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

Convertir en dataframe

KeywordAvant <- as.data.frame(KeywordAvant)

Renommer les colonnes

colnames(urls) = c("url","position")

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

data <- inner_join(x=data1=data2, by = c("keywords" = "H1"))

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

data<- anti_join(x=data1,y=data2, by = c("keywords" = "H1"))

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

marques <- filter(marques, H1 != "")

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

filter(marques, !grepl("adidas",marques$urlRelative))

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

Regroupement

 

 

urlScorees <- listeUrl %>% 
    group_by(url) %>% 
    summarise(score = sum(trafic))  %>% 
    arrange(desc(score))

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

motsCles<-bind_rows(motsCles,marques)

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

maString <- paste("valeur 1","valeur 2",sep="")

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

marques <-marques[ , c(2,4)]

scorePage <-scorePage[ , c("url","score")]

 

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

 

 

Remplacer des valeurs

sub("http://www.laredoute.fr","",marques$Full.URL)

 

Ici je passe une url en relatif

Créer data.frame vide

df <- data.frame(keyword=as.character(),nbProduct = as.numeric())

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 ?

 

Laisser un commentaire

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