R'de tarihi sayısala dönüştürme (örneklerle)


R’de tarih değerlerini sayısal değerlere dönüştürmek için kullanabileceğiniz iki yöntem vardır:

Yöntem 1: as.numeric() işlevini kullanın

 as. numeric (my_date)

Bu, tarih nesneniz ile 1/1/1970 arasında geçen saniye sayısını döndürecektir.

Yöntem 2: Yağlama paketi işlevlerini kullanma

 library (lubridate)

#get seconds value in date object
second(my_date)

#get minutes value in date object
minute(my_date)

...
#get year value in date object
year(my_date)

Bu saniye, dakika, yıl vb. değerlerini döndürecektir. tarih nesnenizin.

Aşağıdaki örnekler her yöntemin pratikte nasıl kullanılacağını göstermektedir.

Yöntem 1: as.numeric() işlevini kullanın

Aşağıdaki kod, as.numeric() işlevini kullanarak bir tarih nesnesinin sayısal nesneye nasıl dönüştürüleceğini gösterir:

 #create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")

#view date object
my_date

[1] "2021-10-14 05:35:00 UTC"

#convert date object to number of seconds since 1/1/1970
as. numeric (my_date)

[1] 1634189700

#convert date object to number of days since 1/1/1970
as. numeric (my_date) / 86400

[1] 18914.23

#convert date object to number of years since 1/1/1970
as. numeric (my_date) / 86400 / 365

[1] 51.81982

Sonuca göre şunları görebiliriz:

  • Tarih nesnemiz ile 1/1/1970 arasında 1.634.189.700 saniye fark var.
  • Tarih nesnemiz ile 1/1/1970 tarihi arasında 18.914,23 gün fark vardır.
  • Tarih nesnemiz ile 1/1/1970 tarihi arasında 51.81982 yıl fark bulunmaktadır.

Yöntem 2: Yağlama paketi işlevlerini kullanma

Aşağıdaki kod, R’deki lubridate paketindeki işlevler kullanılarak bir tarih nesnesinin sayısal nesneye nasıl dönüştürüleceğini gösterir:

 library (lubridate)

#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")

#view date object
my_date

[1] "2021-10-14 05:35:00 UTC"

#extract various numerical values from date object
second(my_date)

[1] 0

minute(my_date)

[1] 35

hour(my_date)

[1] 5

day(my_date)

[1] 14

month(my_date)

[1] 10

year(my_date)

[1] 2021

Bu fonksiyonları kullanarak tarih nesnemizden saniye, dakika, saat, gün, ay ve yıl değerlerini çıkarabiliriz.

Lubridate paketinde en sık kullanılan işlevleri tam olarak anlamak için bu çevrimiçi kısa notlara bakın.

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer yaygın dönüşümlerin nasıl gerçekleştirileceği açıklanmaktadır:

Bir dize R’de Datetime’a nasıl dönüştürülür?
R’de sayılar tarihlere nasıl dönüştürülür?
R’de bir veri çerçevesi tarihe göre nasıl sıralanır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir