Как использовать функции strptime и strftime в r
Вы можете использовать функции strptime и strftime в R для преобразования между символьными объектами и объектами времени.
Функция strptime преобразует символы в объекты времени и использует следующий базовый синтаксис:
strptime(character_object, format=" %Y-%m-%d ")
Функция strftime преобразует объекты времени в символы и использует следующий базовый синтаксис:
strftime(time_object)
Следующие примеры показывают, как использовать каждую функцию на практике.
Пример 1. Использование функции strptime в R
Предположим, у нас есть следующий вектор символов в R:
#create character vector
char_data <- c("2022-01-01", "2022-01-25", "2022-02-14", "2022-03-19")
#view class of vector
class(char_data)
[1] “character”
Мы можем использовать функцию strptime для преобразования символов в объекты времени:
#convert characters to time objects
time_data <- strptime(char_data, format=" %Y-%m-%d ")
#view new vector
time_data
[1] "2022-01-01 UTC" "2022-01-25 UTC" "2022-02-14 UTC" "2022-03-19 UTC"
#view class of new vector
class(time_data)
[1] “POSIXlt” “POSIXt”
Видно, что персонажи были преобразованы во временные объекты.
Обратите внимание, что мы также можем использовать аргумент tz для преобразования символов в объекты времени с определенным часовым поясом.
Например, мы могли бы указать «EST» для преобразования символов в объекты времени в восточном часовом поясе:
#convert characters to time objects in EST time zone
time_data <- strptime(char_data, format=" %Y-%m-%d ", tz=" IS ")
#view new vector
time_data
[1] "2022-01-01 EST" "2022-01-25 EST" "2022-02-14 EST" "2022-03-19 EST"
Обратите внимание, что каждый из объектов времени теперь заканчивается на EST , что указывает на восточный часовой пояс.
Пример 2. Использование функции strftime в R
Предположим, у нас есть следующий вектор временных объектов в R:
#create vector of time objects
time_data <- as. POSIXct (c("2022-01-01", "2022-01-25", "2022-02-14"))
#view class of vector
class(time_data)
[1] “POSIXct” “POSIXt”
Мы можем использовать функцию strftime для преобразования объектов времени в символы:
#convert time objects to characters
char_data <- strftime(time_data)
#view new vector
char_data
[1] "2022-01-01" "2022-01-25" "2022-02-14"
#view class of new vector
class(char_data)
[1] “character”
Мы видим, что временные объекты были преобразованы в символы.
Дополнительные ресурсы
В следующих руководствах объясняется, как использовать другие распространенные функции в R:
Как использовать функцию tabulate() в R
Как использовать функцию Split() в R
Как использовать функцию match() в R
Как использовать функцию репликации() в R