2016-07-07 3 views
-2

У меня есть кадр данных с одним столбцом как время. Когда яНужна помощь R для заказа объектов времени

data1$Time = as.factor(data1$Time) 
Ti = levels(data1$Time) 

В настоящем время, R по умолчанию порядка как:

"1:00:00 AM" "1:00:00 PM" "1:01:00 AM" "1:01:00 PM"... 

мне нужно изменить, что для того, как

"12:00:00 AM", "12:01:00 AM", ... 

т.е. порядка по умолчанию.

Может ли кто-нибудь помочь мне в этом?

+2

Почему вы хотите, чтобы время было фактором? – gung

+0

Вам нужен класс времени, например. 'Кроновая :: times'. – alistaire

+0

Фактически, у меня есть, скажем, данные 10 дней, и мне нужно собрать данные одного дня подряд, а столбцы должны быть временем. Таким образом, для каждого дня мне нужно проверить, доступны ли данные для этого времени того дня, если да, поместите данные, иначе NA. У меня все остальное разобралось. Но мои столбцы теперь заказываются в «1:00:00 AM», «1:00:00 PM», «1:01:00 AM», «1:01:00 PM». Я хочу упорядочить по умолчанию. Я знаю, что одна грубая сила будет заключаться в том, чтобы найти порядок этой перестановки в отношении этой оригинальной, но это будет утомительно, я не хочу идти по этому пути. –

ответ

0

Вы должны проверить пакет lubridate.

Вы также можете использовать as.POSIXlt(x, format="%H:%M:%S"), чтобы преобразовать вашу дату в объект POSIXlt, а затем вы можете использовать order(), чтобы отсортировать их.

Смежные вопросы