Pandalarda Zaman Serisi Verileri

Bu öğreticide, Pandaları kullanarak zaman serisi verilerini nasıl yeniden örnekleyeceğinizi öğreneceksiniz . Bu eğitimin tam videosunu bu blogun alt kısmında izleyebilirsiniz .

Bu yeniden örnekleme fikri nedir? Bu, zaman serisi verileriyle ilgilidir ve yapacağımız şey, bu verilerin raporlanma sıklığını değiştirmek olacaktır. Örneğin, yıllık değeri aylık veya haftalık olarak değiştirmek veya saatlik verileri günlük olarak değiştirmek. Kısaca hiyerarşideki seviyeyi değiştiriyoruz.

Bu, daha güvenilir trendler elde etmek , örneklem büyüklükleri ve mevsimsellik gibi çeşitli nedenlerle kullanılabilir . Bazı raporlarda, hiyerarşinin bir seviyesini diğerine karşı kullanmak daha mantıklı olacaktır.

Ayrıca, farklı veri kaynaklarınız varsa ve zaman serisi verilerini birleştirmeniz gerekiyorsa, yeniden örnekleme yardımcı olabilir. Bu, hiyerarşideki bir uyumsuzlukla uğraşırken de yardımcı olacaktır .

Pandalarda Zaman Serisi Verileri

Bunu daha da detaylandırmak için, alt örnekleme ve üst örneklememiz var.

Aşağı örnekleme, raporlama sıklığını azaltmaktır . Daha az değere sahip olmak için bir saniyeden bir saate dönüştürme veya aydan çeyreğe alt örnekleme gibi şeyler olabilir.

Öte yandan, üst örnekleme, raporlama sıklığını ay düzeyinden güne kadar artırmaktır . İleride bunun örneklerini daha çok göreceğiz.

Pandalarda Zaman Serisi Verileri

İçindekiler

Pandaları Kullanarak Zaman Serisi Verilerini Yeniden Örnekleme

Bunu Pandas'ta nasıl yapacağız?

Öncelikle dizini zaman serisi veri sütunumuza değiştireceğiz . Ardından, değerleri dolduracak enterpolasyonu kullanarak üst örnekleme yapabiliriz ve değerleri toplayarak toparlamak için alt örnekleme yapabiliriz.

Pandalarda Zaman Serisi Verileri

Jupyter Notebook Python'a gidelim ve bunu Pandas ile kontrol edelim.

Başlangıç ​​olarak, import pandas as pd yazarak Pandas'ı kullanacağız , ardından görselleştirmek için import seaborn as sns yazacağız ve Seaborn görselleştirmesini özelleştirmek için matplotlib.pyplot as plt olarak import edeceğiz .

Sonraki yapılacak şey, vega_datasets import data'dan veri almaktır . Örnek kaynaklar almak için güzel bir yer. Ayrıca sp = data.sp500() ve sp.head() kitaplığını elde edeceğiz .

Pandalarda Zaman Serisi Verileri

İşte şimdiye kadarki verilerimiz. Her gün için günlük getiri ve fiyatımız var.

Pandalarda Zaman Serisi Verileri

Dizini tarih sütununa ayarlamak için sp.set_index(['tarih'], inplace=True) yazın ve sp.head'i tekrar çağırın .

Pandalarda Zaman Serisi Verileri

Değerleri Almak İçin Örneklemeyi Kullanma

Ardından, daha fazla değere sahip olmak için üst örneklemeyi kullanalım. Her gün için veriye sahip olduğumuz için, en basit fonksiyon olan sp [['price']] kullanarak saate inebiliriz . yeniden örnekleyin ('H').ffill() , ardından çalıştırın. H saati, M ayı, D günü vb. Pandalar belgelerinde bununla ilgili daha fazla bilgi edinebilirsiniz .

Gördüğümüz gibi 1 Ocak gece yarısı fiyat 1394,46, takip eden 01:00 AM - 4:00 AM saatleri ile aynı. Başka bir örnek, kapanış fiyatının 1366,42 olduğu 2 Ocak'tır.

Pandalarda Zaman Serisi Verileri

Değer saat düzeyinde mevcut olmasa bile bunu yapmanın başka yolları da vardır. Ayrıca, yalnızca ileri dolgu yapmaktan daha karmaşık yollar da vardır . Örneğimiz için yaptığımız şey, yukarı örnekleme enterpolasyonu yapmanın temel yoludur.

Ardından, avg_month = sp [['price]].resample ('M').mean ( ) , ardından avg_month.head ( ) yazarak alt örneklemeye gidelim ve kontrol etmek için çalıştıralım.

Resimde görüldüğü gibi her ayın son gününü ve ortalama fiyatı görebiliriz. Örnekleri daha az değere sahip olacak şekilde azaltabiliriz veya buna küçültme diyoruz.

Pandalarda Zaman Serisi Verileri

Bunu görselleştirmek için çizilen boyutları yeniden çizelim. Ardından sns.lineplot gelir . Çizgi grafiği, daha uzun bir X ekseni ile daha iyi çalışır, Y değeri ise ortalama aylık fiyattır.

Çizilen ayın ortalama fiyatını görmek için bunu çalıştıralım.

Pandalarda Zaman Serisi Verileri

Yine, bunu yapmanın birçok farklı yolu var. Örneğin, çeyrek başına en düşük fiyatı bilmek istiyorsak, tek yapmamız gereken onu çalıştırmak için Quarter_low ve ardından Quarter_low.head yazmaktır.

Böylece, artık her çeyrekte bulunan üç aylık en düşük değeri görebiliriz. Yeniden örneklemeyi bu şekilde yaparsınız.

Pandalarda Zaman Serisi Verileri


Python'da Eksik Verileri Enterpolasyon Yöntemi Kullanarak İşleme
MultiIndex Pandalarda Çok Düzeyli Veya Hiyerarşik Veri
Veri Kümeleri İçin ProfileReport ile Pandalarda | LuckyTemplates'da Python

Çözüm

Pandas , bunu kapatmak için gerçekten yeniden örnekleme ve zaman serisi verileri için oluşturulmuştur . Zaman serisi verileri üzerinde çalışıyorsanız ve farklı ayrıntılara sahipseniz, yeniden örnekleme çok yardımcı olabilir.

Ayrıca, bunu yapmanın birçok farklı yolunu öğrenmek için yeniden örnekleme yöntemiyle ilgili Pandalar belgelerini okuduğunuzdan emin olun. Temel olanlara baktık, ancak iki haftada bir, ayın son iş günü ve yeniden örnekleme için daha fazla seçenek gibi şeyler yapabilirsiniz.

Herşey gönlünce olsun,

George Dağı

Leave a Comment

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutunu Küçültmek için 6 Etkili Yöntem. Hızlı ve kolay yöntemler ile verilerinizi kaybetmeden yer açın.

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Python'da Self Nedir: Gerçek Dünyadan Örnekler

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

R'de bir .rds dosyasındaki nesneleri nasıl kaydedeceğinizi ve yükleyeceğinizi öğreneceksiniz. Bu blog aynı zamanda R'den LuckyTemplates'a nesnelerin nasıl içe aktarılacağını da ele alacaktır.

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

Bu DAX kodlama dili eğitiminde, GENERATE işlevinin nasıl kullanılacağını ve bir ölçü başlığının dinamik olarak nasıl değiştirileceğini öğrenin.

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

Bu eğitici, raporlarınızdaki dinamik veri görselleştirmelerinden içgörüler oluşturmak için Çok Kanallı Dinamik Görseller tekniğinin nasıl kullanılacağını kapsayacaktır.

LuckyTemplatesda İçeriği Filtrelemeye Giriş

LuckyTemplatesda İçeriği Filtrelemeye Giriş

Bu yazıda, filtre bağlamından geçeceğim. Filtre bağlamı, herhangi bir LuckyTemplates kullanıcısının başlangıçta öğrenmesi gereken en önemli konulardan biridir.

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Apps çevrimiçi hizmetinin çeşitli kaynaklardan oluşturulan farklı raporların ve içgörülerin yönetilmesine nasıl yardımcı olabileceğini göstermek istiyorum.

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

LuckyTemplates'da ölçü dallandırma ve DAX formüllerini birleştirme gibi teknikleri kullanarak kâr marjı değişikliklerinizi nasıl hesaplayacağınızı öğrenin.

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

Bu öğreticide, veri önbelleklerini gerçekleştirme fikirleri ve bunların DAX'ın sonuç sağlama performansını nasıl etkilediği tartışılacaktır.