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?