Trend ve Mevsimsellik Analizi: Satış Verisini Bileşenlerine Ayırma
Beceri rehberi

Trend ve Mevsimsellik Analizi: Satış Verisini Bileşenlerine Ayırma

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 6 dk okuma

Satış serisini trend, mevsimsel ve artık bileşenlere ayırma adımları: toplamsal ve çarpımsal model, hareketli ortalama, Python örneği, bayram etkisi.

Neden ayrıştırmak gerekir?

Bir satış serisine bakıp "büyüyoruz" ya da "düşüyoruz" demek çoğu zaman yanıltıcıdır; çünkü görünen hareket birbirine karışmış birkaç etkenin toplamıdır. Uzun dönemli yön (trend), yıl içinde tekrar eden dalgalanma (mevsimsellik) ve açıklanamayan kalan hareket (artık) aynı çizgide birleşir. Aralık ayındaki yükseliş bir büyüme işareti olmayabilir; her yıl aralıkta yaşanan sezonun doğal sonucu olabilir. Ocak ayındaki düşüş de kötüye gidişi değil, sezon sonunu gösterebilir.

Ayrıştırma bu karışımı açar. Trend bileşeni, iş gerçekten büyüyor mu sorusunu mevsim etkisinden arındırarak cevaplar. Mevsimsel bileşen, stok, personel ve kampanya planlamasının takvimini verir. Artık bileşen ise ne trendin ne mevsimin açıkladığı olağandışı olayları, örneğin bir kampanyayı, tedarik krizini ya da veri hatasını gösterir.

Bu yüzden ayrıştırma, tahminin ön adımıdır ama tek başına da değerlidir: yönetim raporlarında "geçen ayla" karşılaştırma yerine mevsimden arındırılmış karşılaştırma yapmak, yanlış kararları önler.

Model seçimi: toplamsal mı, çarpımsal mı?

Ayrıştırmada temel olarak toplamsal ve çarpımsal modeller kullanılır. Toplamsal modelde seri, trend, mevsim ve artığın toplamı olarak yazılır: mevsimsel dalgalanmanın büyüklüğü seri büyüse de sabit kalır. Çarpımsal modelde seri bu bileşenlerin çarpımıdır: seri büyüdükçe mevsimsel dalgalanma da orantılı büyür.

Seçim için grafiğe bakmak çoğu zaman yeterlidir. Satış hacmi arttıkça mevsimsel tepe ve çukurların yüksekliği de artıyorsa, çarpımsal model uygundur. Dalgalanmanın genliği seri düzeyinden bağımsızsa toplamsal model yeterlidir. Büyüyen işletmelerin satış serilerinde çarpımsal yapı çok sık görülür; çünkü sezon etkisi genellikle yüzde olarak işler.

Modellerin her birini deneyip artık bileşenine bakmak güvenli bir sınamadır. Artık bileşeni hâlâ belirgin bir mevsim ya da trend deseni taşıyorsa model yapıyı yakalayamamıştır. Ayrıca ayrıştırmanın temel varsayımının, mevsim deseninin yıllar içinde sabit kalması olduğunu unutmayın; desen değişiyorsa daha esnek yöntemler gerekir.

Adım adım yöntem: elle hesaplamanın mantığı

Klasik ayrıştırma elle de uygulanabilir; her adım bir tablo programında yapılabilir.

  • Dönem uzunluğunu belirleyin: aylık veride mevsim döngüsü yıldır, günlük veride genellikle haftadır. Bu seçim tüm hesabı belirler.
  • Trendi çıkarın: Dönem uzunluğu kadar gözlemin merkezli hareketli ortalamasını alın. Hareketli ortalama mevsim dalgalanmasını yumuşatır ve geriye trendi bırakır. Seri başında ve sonunda boşluklar oluşur; bu normaldir.
  • Mevsimi ayrıştırın: Toplamsal modelde gerçek değerden trendi çıkarın, çarpımsal modelde gerçek değeri trende bölün. Elde ettiğiniz seri hâlâ mevsim ve artığı taşır.
  • Mevsim endeksini hesaplayın: Aynı mevsime ait değerlerin (tüm Ocak'ların, tüm Şubat'ların) ortalamasını alın. Çarpımsal modelde bu ortalamaları toplamı döngü uzunluğuna eşit olacak biçimde ölçeklendirin; böylece endeksin ortalaması bire eşit olur.
  • Artığı bulun: Gerçek değerden (ya da gerçek değerin bölümünden) trend ve mevsim etkisini çıkarın.
  • Mevsimden arındırılmış seriyi üretin: Gerçek değeri mevsim endeksine bölün (çarpımsal) ya da endeksi çıkarın (toplamsal). Yönetim raporlarında bu seri kullanılır.

Python ile ayrıştırma

Aynı işlemi statsmodels kütüphanesindeki seasonal_decompose işlevi yapar. Resmî belgeye göre işlev model parametresiyle toplamsal ya da çarpımsal biçimi, period parametresiyle döngü uzunluğunu alır; sonuç nesnesi trend, seasonal ve resid bileşenlerini verir. Varsayılan ayarda trend, merkezli hareketli ortalamayla hesaplanır.

from statsmodels.tsa.seasonal import seasonal_decompose sonuc = seasonal_decompose(satis, model="multiplicative", period=donem_uzunlugu) trend = sonuc.trend mevsim = sonuc.seasonal artik = sonuc.resid

Burada satis, zaman indeksli bir pandas serisi ve donem_uzunlugu döngünün gözlem sayısıdır. Belgenin kendisi bu yöntemi "naif" bir ayrıştırma olarak tanımlar ve daha gelişmiş yöntemlerin tercih edilmesini önerir. Daha gelişmiş yöntemler mevsimsel desenin zamanla değişmesine izin verir; deseni yıllar içinde kayan serilerde bunlar daha uygundur.

Sonuçları mutlaka grafikle inceleyin: gerçek seri, trend, mevsim ve artığı alt alta çizin. Trend mantıklı mı, mevsim deseni iş bilginizle örtüşüyor mu, artıkta beklenmedik tekrar eden desen var mı? Grafik, istatistiksel çıktıdan daha çabuk uyarı verir.

Satış verisine özgü tuzaklar

Satış verisinde ayrıştırmayı bozan tipik etkenler vardır. Hareketli tatiller bunların başında gelir: dini bayramlar takvimde her yıl kayar, bu yüzden aynı bayram etkisi farklı aylara düşer ve sabit mevsim deseni bunu temizleyemez. Bu etkiyi ayrı bir değişken olarak modellemek ya da bayram dönemlerini işaretleyip yorumlamak gerekir.

Kampanyalar ve fiyat değişiklikleri de bir tuzaktır. Büyük bir kampanya artıkta zirve olarak görünür, ama kampanya her yıl aynı dönemde yapılıyorsa mevsimsel bileşene sızar. Kampanya takvimini bilmek ve gerekirse veriyi kampanya etkisinden arındırmak gerekir. Aynı şekilde ay içindeki gün sayısı ve iş günü sayısı farkları, aylık toplam satışları etkiler; günlük ortalamaya çevirmek bu farkı gidermenin basit yoludur.

Veri uzunluğu da önemlidir. Mevsim desenini güvenle tahmin etmek için birden çok tam döngü gerekir; çok kısa seride desen ile rastlantı ayrılamaz. Ayrıca pandemi dönemi ya da stok yokluğu gibi olağandışı aralıklar, mevsim endeksini bozabilir; bu aralıkları ya veriden çıkarın ya da işaretleyin. Son olarak, ürün veya kanal düzeyine inmeden önce toplam seri üzerinde başlayın; küçük kalemlerde gürültü mevsimi gizler.

Sonuçları iş kararına çevirmek

Ayrıştırmanın değeri çıktının kullanımında ortaya çıkar. Trend, bölüm ya da ürün bazında gerçekten büyüyen ve gerileyen alanları gösterir: mevsimden arındırılmış serinin eğimi pozitifse büyüme gerçektir. Mevsim endeksi; stok, üretim, personel vardiyası, reklam bütçesi ve kampanya takvimi gibi planlamaların temelini oluşturur. Örneğin endeks belirli ayda belirgin yüksekse, stok ve kapasite bir süre önceden hazırlanmalıdır.

Artık bileşen yönetim için bir alarm sistemi gibi çalışır. Artık beklenen aralığın dışına çıktığında araştırma başlatılır: veri hatası mı, kampanya mı, rakip hareketi mi, tedarik sorunu mu? Bu şekilde ayrıştırma rapor aracından teşhis aracına dönüşür.

Tahmin tarafında da doğrudan kullanılır: trend ileriye taşınır, mevsim endeksi uygulanır, olağandışı olaylar ayrıca eklenir. Zaman serisi tahmin yöntemleri bu ayrıştırma mantığını ya açıkça ya da örtük olarak kullanır. Sonuçlar iş birimleriyle paylaşılırken bileşenleri sade bir dille anlatmak, kararın benimsenmesini kolaylaştırır.

Mindset programlarında bu beceri nerede çalışılır?

Bu beceri satış analistleri, talep planlama ve finansal planlama ekipleri ile raporlamada mevsim etkisini doğru yorumlamak isteyen yöneticiler için uygundur. Mindset kataloğunda Excel ile Satış Analitiği programı Satış Performans Analizi, Satış Bütçesi ve Hedef Dağılımı ile Boru Hattı ve Tahmin Modeli modülleriyle tablo programı üzerinden çalışmayı hedefler. Zaman Serileri Analizi ve Tahminleme programı ise Zaman Serisi Kavramları ve Keşifsel Analiz, Klasik İstatistiksel Tahmin Yöntemleri ve Kurumsal Tahmin Uygulamaları modülleriyle daha ileri, programlama destekli bir ayrıştırma ve tahmin yolu sunar.

İlgili Mindset programı

Zaman Serileri Analizi ve Tahminleme

Sık sorulanlar

Sık sorulan sorular

Trend ile mevsimsellik arasındaki fark nedir?

Trend, serinin uzun vadeli yönüdür: büyüme, gerileme ya da yatay seyir. Mevsimsellik ise belirli aralıklarla tekrar eden, takvime bağlı dalgalanmadır. Trend yıllar içinde yavaş değişirken mevsimsellik her yıl benzer biçimde tekrarlanır. Ayrıştırma bu bileşenleri ayırır; bu sayede yıl sonu yükselişi ile gerçek büyüme birbirine karışmaz.

Ayrıştırma sonrası kalan artık bileşen neyi gösterir?

Artık bileşen, trend ve mevsimsellik çıkarıldıktan sonra kalan düzensiz kısımdır. Kampanya, stok kesintisi ya da hava olayı gibi tek seferlik etkiler burada belirgin sıçrama olarak görünür; bu dönemleri bulup tahmin modelinden ayrı ele alabilirsiniz. Artıkta hâlâ düzenli bir desen varsa dönem uzunluğu veya model türü yeniden gözden geçirilmelidir.

Mevsimsellik olmayan seride ayrıştırma yapılır mı?

Yapılabilir, ama mevsim bileşeni küçük ya da anlamsız çıkar. Önce serinin gerçekten mevsimsel desen taşıyıp taşımadığını grafikle ve mevsim bazlı ortalamalarla kontrol edin. Desen yoksa yalnız trend ve artık üzerinde çalışmak daha sade ve güvenilirdir.

Bayram etkisi mevsimsel bileşende nasıl ele alınır?

Bayramlar takvimde kaydığı için sabit mevsim deseni onları temizleyemez. Bayram dönemlerini bayrak değişkeniyle işaretlemek, günlük veriye inmek ya da bayram ayını ayrı yorumlamak gerekir. Gelişmiş modeller takvim etkisi için ayrı bir değişken kullanmaya izin verir.

Ayrıştırma sonrası tahmin nasıl yapılır?

Trend bileşeni ileriye uzatılır, mevsim endeksi ilgili döneme uygulanır ve bilinen olağandışı etkiler ayrıca eklenir. Çarpımsal modelde trend ile endeks çarpılır; toplamsal modelde toplanır. Tahminin güvenilirliği geçmiş döneme uygulanarak sınanmalı ve belirsizlik aralığıyla birlikte sunulmalıdır.

Satışta Trend ve Mevsimsellik Nasıl Ayrıştırılır