R'de zaman serisi nasıl oluşturulur (örneklerle)


R’de bir zaman serisi nesnesi oluşturmanın en kolay yolu ts() işlevini kullanmaktır.

Bu işlev aşağıdaki temel sözdizimini kullanır:

ts(veri, başlangıç, bitiş, sıklık)

Altın:

  • veri : zaman serisi değerlerinin bir vektörü veya matrisi
  • başlangıç : İlk gözlemin zamanı
  • bitiş : Son gözlemin zamanı
  • frekans : Birim zamandaki gözlem sayısı.

Aşağıdaki örnekler, pratikte farklı zaman serisi nesneleri oluşturmak için bu fonksiyonun nasıl kullanılacağını göstermektedir.

Örnek 1: Aylık verilerle zaman serisi oluşturma

Bir perakende mağazasının 1 Ekim 2023’ten itibaren art arda 20 ay boyunca yaptığı satışların sayısını içeren, veri adı verilen aşağıdaki vektöre sahip olduğumuzu varsayalım:

 #create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)

Bu vektörden bir zaman serisi nesnesi oluşturmak için ts() işlevini kullanabilir ve Frekans=12’yi belirtebiliriz:

 #create time series object from vector
ts_data <- ts(data, start=c(2023, 10), frequency=12)

#view time series object
ts_data

     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2023 6 7 7
2024 7 8 5 8 9 4 9 12 14 14 15 18
2025 24 20 15 24 26                            

Değerler vektörünün, değerlerin artık Ekim 2023’ten Mayıs 2025’e kadar olan bir ay ile ilişkilendirildiği bir zaman serisi nesnesine dönüştürüldüğünü unutmayın.

ts_data’nın gerçekten bir zaman serisi nesnesi olduğunu doğrulamak için class() işlevini de kullanabiliriz:

 #display class of ts_data object
class(ts_data)

 [1] “ts”

Örnek 2: Yıllık verilerle zaman serisi oluşturma

Bir perakende mağazasının 2000 yılından başlayarak art arda 20 yıl boyunca yaptığı satışların sayısını içeren, veri adı verilen aşağıdaki vektöre sahip olduğumuzu varsayalım:

 #create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)

Bu vektörden bir zaman serisi nesnesi oluşturmak için ts() işlevini kullanabilir ve Frekans=1 belirtebiliriz:

 #create time series object from vector
ts_data <- ts(data, start=2023, frequency=1)

#view time series object
Time Series:
Start = 2000 
End = 2019 
Frequency = 1 
 [1] 6 7 7 7 8 5 8 9 4 9 12 14 14 15 18 24 20 15 24 26 

Değerler vektörünün, değerlerin artık 2000’den 2019’a kadar olan bir yılla ilişkilendirildiği bir zaman serisi nesnesine dönüştürüldüğünü unutmayın.

ts_data’nın gerçekten bir zaman serisi nesnesi olduğunu doğrulamak için class() işlevini de kullanabiliriz:

 #display class of ts_data object
class(ts_data)

 [1] “ts”

Dilersek yıllara göre satışları görselleştirmek içinplot() fonksiyonunu da kullanabiliriz:

 #create line plot of time series data
plot(ts_data) 

X ekseninin yılı, Y ekseninin ise satış değerlerini görüntülediğini unutmayın.

Okumayı kolaylaştırmak için grafiği de özelleştirebiliriz:

 #create line plot with custom x-axis, y-axis, title, line color and line width
plot(ts_data, xlab=' Year ', ylab=' Sales ', main=' Sales by Year ', col=' blue ', lwd= 3 )

Tam olarak istediğiniz zaman serisi grafiğini oluşturmak için , arsa() fonksiyonunun argümanlarını değiştirmekten çekinmeyin.

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

R’de bir zaman serisi nasıl çizilir
R’de bir veri çerçevesini zaman serisine dönüştürme
Bir dize R’de Datetime’a nasıl dönüştürülür?

Yorum ekle

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