Как преобразовать формат даты excel в правильную дату в r
Вы можете использовать следующие методы для преобразования дат Excel в числовом формате в соответствующие даты в R:
Метод 1: преобразовать число Excel в правильную дату в R
df$date <- as. Date (df$date, origin = " 1899-12-30 ")
Способ 2: преобразовать число Excel в правильную дату/время в R
library (openxlsx)
df$datetime <- convertToDateTime(df$datetime)
В следующих примерах показано, как использовать каждый метод на практике с файлом Excel с именем sales_data.xlsx , который содержит следующие данные:
Пример 1. Преобразование числа Excel в подходящую дату в R
Следующий код показывает, как использовать функцию as.Date() в базе R для преобразования числовых значений в столбце даты файла Excel в соответствующие даты в R:
library (readxl) #import Excel file into R as data frame df <- read_excel(" C:\\Users\\bob\\Documents\\sales_data.xlsx ") #view data frame df # A tibble: 10 x 3 date datetime sales 1 44563 44563. 14 2 44566 44567. 19 3 44635 44636. 22 4 44670 44670. 29 5 44706 44706. 24 6 44716 44716. 25 7 44761 44761. 25 8 44782 44782. 30 9 44864 44864. 35 10 44919 44920. 28 #convert Excel number format to proper R date df$date <- as. Date (df$date, origin = " 1899-12-30 ") #view updated data frame df # A tibble: 10 x 3 date datetime sales 1 2022-01-02 44563. 14 2 2022-01-05 44567. 19 3 2022-03-15 44636. 22 4 2022-04-19 44670. 29 5 2022-05-25 44706. 24 6 2022-06-04 44716. 25 7 2022-07-19 44761. 25 8 2022-08-09 44782. 30 9 2022-10-30 44864. 35 10 2022-12-24 44920. 28
Обратите внимание, что значения столбца даты теперь отформатированы как правильные даты.
Пример 2. Преобразование числа Excel в соответствующую дату/время в R
Следующий код показывает, как использовать функцию ConvertToDateTime() пакета openxlsx в R для преобразования числовых значений в столбце datetime файла Excel в соответствующие значения datetime в R:
library (readxl) library (openxlsx) #import Excel file into R as data frame df <- read_excel(" C:\\Users\\bob\\Documents\\sales_data.xlsx ") #view data frame df # A tibble: 10 x 3 date datetime sales 1 44563 44563. 14 2 44566 44567. 19 3 44635 44636. 22 4 44670 44670. 29 5 44706 44706. 24 6 44716 44716. 25 7 44761 44761. 25 8 44782 44782. 30 9 44864 44864. 35 10 44919 44920. 28 #convert Excel datetime to proper datetime in R df$datetime <- convertToDateTime(df$datetime) #view updated data frame df # A tibble: 10 x 3 date datetime sales 1 44563 2022-01-02 04:14:00 14 2 44566 2022-01-05 12:15:00 19 3 44635 2022-03-15 15:34:00 22 4 44670 2022-04-19 09:45:00 29 5 44706 2022-05-25 10:30:00 24 6 44716 2022-06-04 10:15:00 25 7 44761 2022-07-19 01:13:00 25 8 44782 2022-08-09 02:15:00 30 9 44864 2022-10-30 04:34:00 35 10 44919 2022-12-24 21:23:00 28
Обратите внимание, что значения столбца datetime теперь отформатированы как правильные даты.
Примечание . Вы также можете использовать функцию ConvertToDate() из пакета openxlsx для преобразования числовой даты в соответствующую дату в R.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:
Как импортировать файлы Excel в R
Как экспортировать фрейм данных в файл Excel в R
Как экспортировать фреймы данных в несколько листов Excel в R