La fusion de tables de différentes longueur d'un commun colonnes de R
J'ai deux tables de différentes longueur et j'ai besoin de les fusionner en commun deux colonnes (la saison et le client), et de remplir les cellules avec NAs quand il n'y a pas d'éléments communs. Ci-dessous je vous montre une petite fraction de l'original deux des tables et la table finale, que j'ai besoin. J'ai essayé beaucoup de choses sans succès.
season client.ID qtty
1998 13 30
1999 13 30
2000 13 29
1998 28 18
1999 28 18
2000 28 18
1998 35 21
1999 35 21
2000 35 21
season client.ID vessel.ID overLength
1998 28 29 17.1
1998 28 1809 4.26
1998 28 2215 9.45
1998 28 4173 5.8
1998 28 8151 4.5
1999 28 29 17.1
1999 28 1809 4.26
1999 28 2215 9.45
1999 28 4173 5.8
1999 28 8151 4.5
2000 28 29 17.1
2000 28 1809 4.26
2000 28 2215 9.45
2000 28 4173 5.8
2000 28 8151 4.5
1998 35 36 9.91
1999 35 36 9.91
2000 35 36 9.91
1998 35 40 9.91
1999 35 40 9.91
2000 35 40 9.91
season client.ID vessel.ID overLength qtty
1998 13 NA NA 30
1999 13 NA NA 30
2000 13 NA NA 29
1998 28 29 17.1 18
1998 28 1809 4.26 18
1998 28 2215 9.45 18
1998 28 4173 5.8 18
1998 28 8151 4.5 18
1999 28 29 17.1 18
1999 28 1809 4.26 18
1999 28 2215 9.45 18
1999 28 4173 5.8 18
1999 28 8151 4.5 18
2000 28 29 17.1 18
2000 28 1809 4.26 18
2000 28 2215 9.45 18
2000 28 4173 5.8 18
2000 28 8151 4.5 18
1998 35 36 9.91 21
1999 35 36 9.91 21
2000 35 36 9.91 21
1998 35 40 9.91 21
1999 35 40 9.91 21
2000 35 40 9.91 21
Vous devez vous connecter pour publier un commentaire.
Ce un cas simple pour
merge
avecall = TRUE
en supposant que vos données sont en
data1
etdata2
puis
devrait fonctionner.
Si vous souhaitez spécifier ce qui est fusionné par (dans le cas où il existe des colonnes que vous ne souhaitez pas utiliser)
data.table
évite beaucoup de copie interne. Il y a de grandes vignettes, et le code ci-dessus va travailler sidata1
etdata2
sontdata.tables
.