Часть данных выглядит следующим образом:Как извлечь ТОЛЬКО время из strptime()?
head(my_data[,c(1,2)], 3)
Date Time
1 16/12/2006 17:24:00
2 16/12/2006 17:25:00
3 16/12/2006 17:26:00
Кстати, str() $Date, $Time
все CHR в настоящее время.
Я хочу, чтобы держать их в двух перевалах с правильным форматом, поэтому я использую
x <- as.Date(my_data$Date, "%d/%m/%Y")
, чтобы получить 1-й седловину в формате дата:
x[1:5]
[1] "2006-12-16" "2006-12-16" "2006-12-16" "2006-12-16" "2006-12-16"
Но во 2-е седловины, когда я 'm пытается использовать
y <- strptime(my_data$Time, "%H:%M:%S")
Выход автоматически добавляет дату и часовой пояс по умолчанию на моем компьютере.
y[1:4]
[1] "2017-01-10 17:24:00 CST" "2017-01-10 17:25:00 CST"
[2] "2017-01-10 17:26:00 CST" "2017-01-10 17:27:00 CST"
Что делать, если я просто хочу сохранить время, без даты и времени?
Есть sub()
с некоторым регулярным выражением единственный способ достичь этого?
Если вы хотите иметь чистый объект времени, вам нужен пакет, который определяет такой класс. Вы можете использовать пакет 'chron'. Однако я бы предложил совместить дату и время с объектом 'POSIXct'. Есть неприятности, такие как високосные годы и прыжки секунд, которые необходимо учитывать. – Roland