I have a matrix where one column has a date and another column has a time. I need to delete all times before 6am. I had combined the Date and Time column into DateTime. Mat1: Weight Date Time 7.6 04/28/11 09:03 8.4 04/29/11 03:11 8.6 04/29/11 05:32 8.6 04/29/11 09:53 1.4 05/01/11 19:52 I tried just picking up the time: as.POSIXct(Mat1$Time, format = "%H:%M") but this assigns the time value today's date. The final matrix should look like: Weight Date Time 7.6 04/28/11 09:03 8.6 04/29/11 09:53 1.4 05/01/11 19:52 ----- In theory, practice and theory are the same. In practice, they are not - Albert Einstein -- View this message in context: http://r.789695.n4.nabble.com/need-to-delete-by-time-not-date-tp3512162p3512162.html Sent from the R help mailing list archive at Nabble.com.
You may be happy using:
strptime(paste(Date,Time,sep=" "),"%m/%d/%y %H:%M")$hour
--
Clint Bowman INTERNET: clint at ecy.wa.gov
Air Quality Modeler INTERNET: clint at math.utah.edu
Department of Ecology VOICE: (360) 407-6815
PO Box 47600 FAX: (360) 407-7534
Olympia, WA 98504-7600
USPS: PO Box 47600, Olympia, WA 98504-7600
Parcels: 300 Desmond Drive, Lacey, WA 98503-1274
On Tue, 10 May 2011, Schatzi wrote:
> I have a matrix where one column has a date and another column has a time.
I
> need to delete all times before 6am. I had combined the Date and Time
column
> into DateTime.
>
> Mat1:
> Weight Date Time
> 7.6 04/28/11 09:03
> 8.4 04/29/11 03:11
> 8.6 04/29/11 05:32
> 8.6 04/29/11 09:53
> 1.4 05/01/11 19:52
>
> I tried just picking up the time:
>
> as.POSIXct(Mat1$Time, format = "%H:%M")
>
> but this assigns the time value today's date.
>
> The final matrix should look like:
> Weight Date Time
> 7.6 04/28/11 09:03
> 8.6 04/29/11 09:53
> 1.4 05/01/11 19:52
>
>
> -----
> In theory, practice and theory are the same. In practice, they are not -
Albert Einstein
> --
> View this message in context:
http://r.789695.n4.nabble.com/need-to-delete-by-time-not-date-tp3512162p3512162.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> 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.
>
On May 10, 2011, at 11:06 AM, Schatzi wrote:> I have a matrix where one column has a date and another column has a > time. I > need to delete all times before 6am. I had combined the Date and > Time column > into DateTime. > > Mat1: > Weight Date Time > 7.6 04/28/11 09:03 > 8.4 04/29/11 03:11 > 8.6 04/29/11 05:32 > 8.6 04/29/11 09:53 > 1.4 05/01/11 19:52 > > I tried just picking up the time: > > as.POSIXct(Mat1$Time, format = "%H:%M") > > but this assigns the time value today's date.Since these are either character strings (or factors) at the moment ... and if they are matrices they are character... Mat1[Mat1$Time >= "06:00" , ] If actually a dataframe then Mat1[as.character(Mat1$Time) >= "06:00" , ] In the future please include the output of dput(Mat1).> > The final matrix should look like: > Weight Date Time > 7.6 04/28/11 09:03 > 8.6 04/29/11 09:53 > 1.4 05/01/11 19:52 > >David Winsemius, MD West Hartford, CT