[R] How to extract integer in a data frame
Duncan Murdoch
murdoch at stats.uwo.ca
Wed Apr 22 03:27:10 CEST 2009
On 21/04/2009 8:52 PM, Gundala Viswanath wrote:
> Dear all,
>
> I have a data frame that looks like this:
>
>> dat
>
> V1 V2 V3
> 1 0.000 2 554889
> 2 2.001 0 9978
> 3 0.342 3 5263
> 4 123.000 0 3209
> 5 0.004 0 2434
>
>
> I want to get a subset of that data frame where
> the entry in V1 has (x.000) as its decimal.
>
> yielding
>
>> wanted_dat
> V1 V2 V3
> 1 0.000 2 554889
> 2 123.000 0 3209
>
> What's the way to do it in R?
>
> - Gundala Viswanath
> Jakarta - Indonesia
>
If you know that those values are really integers, you could use
dat[ dat$V1 == round(dat$V1), ]
but if you just want the printed version to have three zeroes after the
decimal point, you'll want something with grep, e.g.
dat[ grep("[.]000$", format(dat$V1)), ]
(These are both untested.)
Duncan Murdoch
More information about the R-help
mailing list