Thanks everyone for you help with my last question, and now I have one last one... Here is a sample of my data in .csv format site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 2, 29.68 My goal was to extract all of the rows from a certain depth. Using the column "sensor_depth_m" to order my data by, I wanted all of the data from 10m. So this is what I wanted when I finished site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68 To pull out all of the data from a 10m sensor depth I came up with the code: Ten<-dataTable1[(dataTable1$sensor_depth_m=="10"),] But when I run it I just get an extra column tacked onto the end like this site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c, sensor_depth_m 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63,10 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56,10 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51,10 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53,10 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57,10 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60,10 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66,10 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68,10 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68,10 It seems pretty straight forward, I'm not sure what I am missing. Thanks V [[alternative HTML version deleted]]
On Friday 28 October 2011 18:04:59 Vinny Moriarty wrote:> Thanks everyone for you help with my last question, and now I have one > last one...Here is what I would do, based on my understanding of your question: # your data snippet as data frame> xsite time_local time_utc reef_type_code sensor_type 1 6 2006-04-09 10:20:00 2006-04-09 20:20:00 BAK sb39 2 6 2006-04-09 10:40:00 2006-04-09 20:40:00 BAK sb39 3 6 2006-04-09 11:00:00 2006-04-09 21:00:00 BAK sb39 4 6 2006-04-09 11:20:00 2006-04-09 21:20:00 BAK sb39 5 6 2006-04-09 11:40:00 2006-04-09 21:40:00 BAK sb39 6 6 2006-04-09 12:00:00 2006-04-09 22:00:00 BAK sb39 7 6 2006-04-09 12:20:00 2006-04-09 22:20:00 BAK sb39 8 6 2006-04-09 12:40:00 2006-04-09 22:40:00 BAK sb39 9 6 2006-04-09 13:00:00 2006-04-09 23:00:00 BAK sb39 sensor_depth_m temperature_c 1 2 29.63 2 2 29.56 3 2 29.51 4 2 29.53 5 10 29.57 6 2 29.60 7 2 29.66 8 10 29.68 9 2 29.68 # extracting all 10m depth sensors using subscripting> Ten <- x[x["sensor_depth_m"]==10,] > Tensite time_local time_utc reef_type_code sensor_type 5 6 2006-04-09 11:40:00 2006-04-09 21:40:00 BAK sb39 8 6 2006-04-09 12:40:00 2006-04-09 22:40:00 BAK sb39 sensor_depth_m temperature_c 5 10 29.57 8 10 29.68 Does that help? Rgds, Rainer On Friday 28 October 2011 18:04:59 Vinny Moriarty wrote:> Thanks everyone for you help with my last question, and now I have one > last one... > > > Here is a sample of my data in .csv format > > site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temper > ature_c 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63 > 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56 > 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51 > 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53 > 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57 > 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60 > 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66 > 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68 > 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 2, 29.68 > > > My goal was to extract all of the rows from a certain depth. Using the > column "sensor_depth_m" to order my data by, I wanted all of the data > from 10m. So this is what I wanted when I finished > > site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temper > ature_c 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57 > 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68 > 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68 > > > > > To pull out all of the data from a 10m sensor depth I came up with the > code: > > Ten<-dataTable1[(dataTable1$sensor_depth_m=="10"),] > > > But when I run it I just get an extra column tacked onto the end like > this > > > site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temper > ature_c, sensor_depth_m > 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63,10 > 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56,10 > 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51,10 > 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53,10 > 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57,10 > 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60,10 > 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66,10 > 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68,10 > 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68,10 > > > It seems pretty straight forward, I'm not sure what I am missing. > > > Thanks > > V > > [[alternative HTML version deleted]] > > ______________________________________________ > 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.
You didn't show the details of what you did before
Ten<-dataTable1[(dataTable1$sensor_depth_m=="10"),]
but that line makes me suspicious that you did some
experimentation with syntax before coming up with that
line. In particular, why did you use parentheses around
(dataTable1$sensor_depth_m=="10")
and why did you use quotes around the 10?
Here is an example of why you might have started using
the unnecessary (and misleading) parentheses. I'll
use a narrow dataset so its R printout does not get
line-wrapped by a rogue mailer.
> d <- data.frame(one=c(3,1,1,2), ten=c(3,1,1,2)*10)
> # first, use = instead of == for comparison
> d[ d$one = 1, ]
Error: unexpected '=' in "d[ d$one ="
> # react to error message by adding parentheses
> d[ (d$one = 1), ]
one ten
1 3 30
> # That is definitely the wrong answer.
> # The parentheses hid that problem that you were using > # instead
of == and did d$one<-1, then d[1,] returned row 1.
> # Note that now d has been changed!
> d
one ten
1 1 30
2 1 10
3 1 10
4 1 20
That may explain how you got a column of 10's (after a ...=10),
but I don't know what you may have done to get a second column
called sensor_depth_m. Nor do I have a guess as to why you
put quotes around the number 10.
This is why R-help asks to see exactly what you did in R,
not just a synopsis. (When I copied what you showed into
R, adding a read.csv(header=TRUE, textConnection("...data...")),
I got the correct 2 lines of output, not the incorrect 3 lines you
indicated that you wanted.)
Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at
r-project.org] On Behalf Of Vinny Moriarty
> Sent: Friday, October 28, 2011 6:05 PM
> To: r-help at r-project.org
> Subject: [R] Extracting data by row
>
> Thanks everyone for you help with my last question, and now I have one last
> one...
>
>
> Here is a sample of my data in .csv format
>
>
site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c
> 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63
> 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56
> 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51
> 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53
> 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57
> 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60
> 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66
> 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68
> 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 2, 29.68
>
>
> My goal was to extract all of the rows from a certain depth. Using the
> column "sensor_depth_m" to order my data by, I wanted all of the
data from
> 10m. So this is what I wanted when I finished
>
>
site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c
> 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57
> 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68
> 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68
>
>
>
>
> To pull out all of the data from a 10m sensor depth I came up with the
code:
>
> Ten<-dataTable1[(dataTable1$sensor_depth_m=="10"),]
>
>
> But when I run it I just get an extra column tacked onto the end like this
>
>
>
site,time_local,time_utc,reef_type_code,sensor_type,sensor_depth_m,temperature_c,
> sensor_depth_m
> 06,2006-04-09 10:20:00,2006-04-09 20:20:00,BAK,sb39, 2, 29.63,10
> 06,2006-04-09 10:40:00,2006-04-09 20:40:00,BAK,sb39, 2, 29.56,10
> 06,2006-04-09 11:00:00,2006-04-09 21:00:00,BAK,sb39, 2, 29.51,10
> 06,2006-04-09 11:20:00,2006-04-09 21:20:00,BAK,sb39, 2, 29.53,10
> 06,2006-04-09 11:40:00,2006-04-09 21:40:00,BAK,sb39, 10, 29.57,10
> 06,2006-04-09 12:00:00,2006-04-09 22:00:00,BAK,sb39, 2, 29.60,10
> 06,2006-04-09 12:20:00,2006-04-09 22:20:00,BAK,sb39, 2, 29.66,10
> 06,2006-04-09 12:40:00,2006-04-09 22:40:00,BAK,sb39, 10, 29.68,10
> 06,2006-04-09 13:00:00,2006-04-09 23:00:00,BAK,sb39, 10, 29.68,10
>
>
> It seems pretty straight forward, I'm not sure what I am missing.
>
>
> Thanks
>
> V
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.