Data Siri Masa Dalam Panda

Data Siri Masa Dalam Panda

Dalam tutorial ini, anda akan belajar cara untuk sampel semula data siri masa menggunakan Panda. Anda boleh menonton video penuh tutorial ini di bahagian bawah blog ini .

Apakah idea pensampelan semula ini? Ini berkaitan dengan data siri masa dan perkara yang akan kami lakukan ialah menukar kekerapan data itu dilaporkan. Contohnya, menukar nilai tahunan kepada bulanan atau mingguan, atau menukar data setiap jam kepada harian. Ringkasnya, kami mengubah tahap dalam hierarki.

Ini boleh digunakan untuk beberapa sebab seperti mendapatkan aliran yang lebih dipercayai , saiz sampel dan kemusim . Pada sesetengah laporan, lebih masuk akal jika kita menggunakan beberapa tahap hierarki berbanding yang lain.

Selain itu, pensampelan semula boleh membantu jika anda mempunyai sumber data yang berbeza dan anda perlu melakukan penyatuan data siri masa. Ini juga akan membantu apabila menangani ketidakpadanan dalam hierarki .

Data Siri Masa Dalam Panda

Untuk memecahkan perkara ini dengan lebih lanjut, kami mempunyai pensampelan rendah dan pensampelan naik.

Downsampling adalah untuk mengurangkan kekerapan pelaporan . Ini boleh menjadi perkara seperti menukar daripada satu saat kepada satu jam untuk mempunyai nilai yang lebih sedikit atau pensampelan turun dari bulan ke suku.

Sebaliknya, pensampelan naik adalah untuk meningkatkan kekerapan pelaporan dari peringkat bulan ke hari . Kami akan mempunyai lebih banyak contoh ini kemudian.

Data Siri Masa Dalam Panda

Isi kandungan

Cara Sampel Semula Data Siri Masa Menggunakan Panda

Bagaimanakah kita akan melakukan ini dalam Panda?

Pertama sekali, kami akan menukar indeks kepada lajur data siri masa kami . Kemudian, kita boleh upsample menggunakan interpolasi, yang akan mengisi nilai, dan kita boleh downsample untuk menggulung dengan mengagregatkan nilai.

Data Siri Masa Dalam Panda

Mari pergi ke Jupyter Notebook Python dan semak perkara ini dengan Pandas.

Sebagai permulaan, kami akan menggunakan Panda dengan menaip import panda sebagai pd , diikuti dengan import seaborn sebagai sns untuk memvisualisasikannya, dan mengimport matplotlib.pyplot sebagai plt untuk menyesuaikan visualisasi Seaborn .

Perkara seterusnya yang perlu dilakukan ialah mendapatkan data daripada data import vega_datasets . Ia adalah tempat yang bagus untuk mendapatkan sumber sampel. Juga, kita akan mendapatkan perpustakaan sp = data.sp500 ( ) dan sp.head () .

Data Siri Masa Dalam Panda

Inilah data kami setakat ini. Kami mempunyai pulangan harian dan harga untuk setiap hari.

Data Siri Masa Dalam Panda

Untuk menetapkan indeks kepada lajur tarikh, taip sp.set_index(['date'], inplace=True) kemudian panggil sp.head semula.

Data Siri Masa Dalam Panda

Menggunakan Upsampling Untuk Mendapatkan Nilai

Kemudian, untuk mempunyai lebih banyak nilai, mari gunakan upsampling. Oleh kerana kita mempunyai data untuk setiap hari, kita boleh turun ke jam dengan menggunakan fungsi paling mudah iaitu sp [['price']]. resample ('H').fill ( ) , kemudian jalankannya. H bermaksud jam, M untuk bulan, D untuk hari, dan seterusnya. Anda boleh mengetahui lebih lanjut tentang ini dalam dokumentasi Pandas .

Seperti yang kita dapat lihat, pada 1 Januari pada tengah malam, harganya ialah 1394.46, sama seperti waktu berikutnya dari 1:00 PG hingga 4:00 PG. Contoh lain ialah pada 2 Januari, di mana harga penutupan ialah 1366.42.

Data Siri Masa Dalam Panda

Terdapat cara lain untuk melakukan ini walaupun nilai tidak tersedia pada tahap jam. Selain itu, terdapat cara yang lebih canggih daripada hanya melakukan pengisian hadapan . Untuk contoh kami, perkara yang kami lakukan ialah cara asas untuk melakukan interpolasi pensampelan naik.

Seterusnya, mari pergi ke downsampling dengan menaip dalam avg_month = sp [['price]].sample ('M').min ( ) , kemudian avg_month.head ( ) dan jalankannya untuk menyemak.

Seperti yang digambarkan, kita boleh melihat hari terakhir setiap bulan dan harga purata. Kita boleh mengurangkan sampel untuk mempunyai nilai yang lebih sedikit, atau apa yang kita panggil pengecilan saiz.

Data Siri Masa Dalam Panda

Untuk memvisualisasikan ini, mari taip plot semula dimensi yang dilukis. Kemudian, diikuti dengan sns.lineplot . Plot garis berfungsi lebih baik dengan paksi X yang lebih panjang, manakala nilai Y ialah harga purata bulanan.

Untuk melihat harga purata bagi bulan yang diplot, mari jalankan ini.

Data Siri Masa Dalam Panda

Sekali lagi, terdapat banyak cara berbeza yang boleh kita lakukan. Contohnya, jika kita ingin mengetahui harga terendah setiap suku tahun, kita hanya perlu menaip quarter_low , kemudian quarter_low.head untuk menjalankannya.

Jadi di sana, kita kini boleh melihat nilai suku tahunan terendah yang ditemui pada setiap suku tahun. Ini adalah cara anda melakukan sampel semula.

Data Siri Masa Dalam Panda


Mengendalikan Data Hilang Dalam Python Menggunakan Kaedah Interpolasi
MultiIndex Dalam Panda Untuk
Set Data Berbilang Tahap Atau Hierarki Dalam Panda Dengan ProfileReport | Python Dalam LuckyTemplates

Kesimpulan

Untuk menutupnya, Pandas benar-benar dibina untuk pensampelan semula dan data siri masa . Jika anda mengusahakan data siri masa dan mempunyai butiran yang berbeza, pensampelan semula boleh sangat membantu.

Selain itu, pastikan anda membaca dokumentasi Pandas mengenai kaedah sampel semula untuk mempelajari banyak cara berbeza untuk melakukan ini. Kami melihat yang asas, tetapi anda boleh melakukan perkara seperti dwi-mingguan, hari bekerja terakhir dalam bulan itu dan lebih banyak pilihan untuk pensampelan semula.

Semua yang terbaik,

George Mount


Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Apa Itu Diri Dalam Python: Contoh Dunia Sebenar

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Cara Menyimpan & Memuatkan Fail RDS Dalam R

Anda akan belajar cara menyimpan dan memuatkan objek daripada fail .rds dalam R. Blog ini juga akan membincangkan cara mengimport objek dari R ke LuckyTemplates.

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

N Hari Perniagaan Pertama Dilawati Semula – Penyelesaian Bahasa Pengekodan DAX

Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Pamerkan Cerapan Menggunakan Teknik Visual Dinamik Berbilang Thread Dalam LuckyTemplates

Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Pengenalan Untuk Menapis Konteks Dalam LuckyTemplates

Dalam artikel ini, saya akan menjalankan konteks penapis. Konteks penapis ialah salah satu topik utama yang perlu dipelajari oleh mana-mana pengguna LuckyTemplates pada mulanya.

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Petua Terbaik Menggunakan Aplikasi Dalam Perkhidmatan Dalam Talian LuckyTemplates

Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Analisis Perubahan Margin Keuntungan Lebih Masa – Analitis Dengan LuckyTemplates Dan DAX

Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Idea Pewujudan Untuk Cache Data Dalam DAX Studio

Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.

Pelaporan Perniagaan Menggunakan LuckyTemplates

Pelaporan Perniagaan Menggunakan LuckyTemplates

Jika anda masih menggunakan Excel sehingga sekarang, maka inilah masa terbaik untuk mula menggunakan LuckyTemplates untuk keperluan pelaporan perniagaan anda.

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu

Apakah LuckyTemplates Gateway? Semua yang Anda Perlu Tahu