You'll have to do this in two stages.  The merge is just a case of
specifying all=TRUE:

data1 <- data.frame(Code=c(2,6,7,17), Cap04=c(120,75,220,4))
data2 <- data.frame(Code=c(2,7,9,17), Cap08=c(120,112,190,4))

data.merge <- merge(data1,data2, all=TRUE)
data.merge
  Code Cap04 Cap08
1    2   120   120
2    6    75    NA
3    7   220   112
4    9    NA   190
5   17     4     4

Now you'll need to convert the NAs to zeros.

data.merge[is.na(data.merge)] <- 0
data.merge

  Code Cap04 Cap08
1    2   120   120
2    6    75     0
3    7   220   112
4    9     0   190
5   17     4     4

Hope this helps.

Dave


David Barron
51 Stratfield Road
Oxford OX2 7BG
01865 512938
07595 090381


On 24 March 2014 18:47, Megan Weigel <mw5wags@gmail.com> wrote:

> Hello,
>
> I need to combine two data sets into one. For example:
>
> Dataset1:
> Code   Cap04
> 2        120
> 6          75
> 7        220
> 17         4
>
> Dataset2:
> Code   Cap08
> 2        120
> 7        112
> 9        190
> 17         4
>
>
> I need the dataset to look like the following where it keeps every unique
> 'code' from both datasets and fills the blanks in both rows with 0:
>
> FinalDataSet:
> Code   Cap04   Cap08
> 2         120       120
> 6          75          0
> 7         220       112
> 9            0       190
> 17          4          4
>
> Can anyone help me with this please?
>
> Thank you very much!
> Johnson
>
>         [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]


