Comment utiliser la fonction merge () avec des ensembles de données dans r

En R vous utilisez le merge ()

Sommaire

fonctionner de combiner des trames de données. Cette fonction puissante tente d'identifier des colonnes ou des lignes qui sont communs entre les deux trames de données différents.

Comment utiliser la fusion pour trouver l'intersection des données

La forme la plus simple de merge () trouve l'intersection entre deux ensembles différents de données. En d'autres termes, pour créer une trame de données qui se compose de ces Etats qui sont froids ainsi que de grandes, utiliser la version par défaut de merge ():

> Fusionner (cold.states, large.states) Nom de Frost Area1 Alaska 152 5664322 166 1037663 Colorado Montana 155 1455874 Nevada 188 109889

Si vous êtes familier avec un langage tel que SQL de base de données, vous avez peut-être deviné que merge () est très similaire à une base de données jointure. Ceci est, en effet, le cas et les différents arguments à merge () vous permettent d'effectuer des jointures naturelles, ainsi que gauche, droite, et plein des jointures externes.

La merge () fonction prend un assez grand nombre d'arguments. Ces arguments peuvent sembler assez intimidant jusqu'à ce que vous réalisez qu'ils forment un plus petit nombre d'arguments connexes:

  • X: Une trame de données.




  • y: Une trame de données.

  • par, by.x, by.y: Les noms des colonnes qui sont communs aux deux X et y. La valeur par défaut est d'utiliser les colonnes avec des noms communs entre les deux trames de données.

  • tous, all.x, all.y: Les valeurs logiques qui spécifient le type de fusion. La valeur par défaut est tous = FALSE (ce qui signifie que seules les lignes correspondantes sont retournées).

Ce dernier groupe d'arguments - tous, all.x et all.y - mérite quelques explications. Ces arguments déterminent le type de fusion qui va se passer.

Comment comprendre les différents types de fusion

La merge () fonction permet quatre façons de combiner des données:

  • Rejoindre naturel: Pour conserver uniquement les lignes qui correspondent à des trames de données, spécifier l'argument tous = FALSE.

  • Jointure externe complète: Pour garder toutes les lignes des deux trames de données, spécifier tous = TRUE.

  • LEFT JOIN externe: Pour inclure toutes les lignes de votre bloc de données X et seulement ceux de y ce match, spécifiez all.x = TRUE.

  • Jointure externe droite: Pour inclure toutes les lignes de votre bloc de données y et seulement ceux de X ce match, spécifiez all.y = TRUE.

    image0.jpg

Comment trouver l'union (pleine jointure externe)

Revenant sur les exemples des Etats américains, d'exécuter une fusion complète des états froids et grandes, l'utilisation fusionner et spécifiez tous = TRUE:

> Fusionner (cold.states, large.states, tous = TRUE) Nom de Frost Area1 Alaska 5664322Arizona 152 NA NA 156361 1134173 Californie .... 13 Texas NA 26213414Vermont 168 NA15Wyoming 173 NA

Les deux trames de données sont une variable Nom, R correspond donc les cas sur la base des noms des États. La variable Gel provient de la trame de données cold.states, et la variable Région provient de la trame de données large.states.

Notez que cette effectue la fusion complète et remplit les colonnes avec N / A des valeurs où il n'y a pas de données correspondants.


» » » » Comment utiliser la fonction merge () avec des ensembles de données dans r