[R] identical() mystery

Duncan Murdoch murdoch at stats.uwo.ca
Mon Mar 1 15:06:10 CET 2010


Duncan Murdoch wrote:
> Dario Strbenac wrote:
>   
>> Hello,
>>
>> I have 2 vectors of the same mode and the same contents but I still get FALSE. Any ideas ?
>>
>>   
>>     
>>> reference <- c(11, 14, 16, 5, 4, 2,  0, 15, 9, 0)
>>> reference
>>>     
>>>       
>>  [1] 11 14 16  5  4  2  0 15  9  0
>>   
>>     
>>> cpgDensity
>>>     
>>>       
>>  [1] 11 14 16  5  4  2  0 15  9  0
>>   
>>     
>>> identical(cpgDensity, reference)
>>>     
>>>       
>> [1] FALSE
>>   
>>     
>>> mode(cpgDensity)
>>>     
>>>       
>> [1] "numeric"
>>   
>>     
>>> mode(reference)
>>>     
>>>       
>> [1] "numeric"
>>   
>>     
>
> The typeof() function is more informative than mode().  str() might also 
> give some information, e.g. if one of those objects has a class:
>
>  > x <- 1:10
>  > y <- noquote(x)
>  > y
>  [1]  1  2  3  4  5  6  7  8  9 10
>  > x
>  [1]  1  2  3  4  5  6  7  8  9 10
>  > typeof(x)
> [1] "integer"
>  > typeof(x)
> [1] "integer"
>   

Oops, I pasted the wrong lines above.  The point is that typeof(y) also 
gives "integer".
>  > identical(x,y)
> [1] FALSE
>  > str(x)
>  int [1:10] 1 2 3 4 5 6 7 8 9 10
>  > str(y)
> Class 'noquote'  int [1:10] 1 2 3 4 5 6 7 8 9 10
>
> Duncan Murdoch
>
> ______________________________________________
> R-help at 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.
>



More information about the R-help mailing list