[R] Obtaining the unmerged cases from one of the two data set
David Winsemius
dwinsemius at comcast.net
Wed Jul 21 13:38:35 CEST 2010
On Jul 21, 2010, at 5:33 AM, Mangalani Peter Makananisa wrote:
> Dear "R Gurus",
I saw no reason to copy Rob Hyndman. I did not see that this involves
any of the packages he maintains.
>
> I am having two dummy csv data sets A and B containing 19 and 15
> cases/observations respectively. From the two data set 13 cases are
> intersection. From one of the two (any) data set, How do I then
> retrieve
> the unmerged data ? let's take A for example, six cases must appear in
> our results. See the R codes below.
>
?setdiff
Perhaps:
setdiff( (NAME(A), NAME(B) )
You can also do a merge that is an outer join that includes all the
NAME information and then extract the records with SALARY
and .B.SALARY data. Untested in absence of working example:
?merge
mer <- merge(A,B, all=TRUE)
mer[ mer$NAME %in% setdiff(NAME(A), NAME(B) ), ]
--
David.
>
>
>
>> A = read.csv("C:/Documents and Settings/S1033067/Desktop/A.csv",
> header = TRUE, dec =",", sep = ",")
>
>> names(A)
>
> [1] "NAME" "SALARY"
>
>> dim(A)[1]
>
> [1] 19
>
>> B = read.csv("C:/Documents and Settings/S1033067/Desktop/B.csv",
> header = TRUE, dec =",", sep = ",")
>
>> names(B)
>
> [1] "NAME" "B.SALARY"
>
>> dim(B)[1]
>
> [1] 15
>
>> common = merge(A,B)
>
>> names(common)
>
> [1] "NAME" "SALARY" "B.SALARY"
>
>> dim(common)[1]
>
> [1] 13
>
>>
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list