Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
Apa Itu Diri Dalam Python: Contoh Dunia Sebenar
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 .
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.
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.
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 () .
Inilah data kami setakat ini. Kami mempunyai pulangan harian dan harga untuk setiap hari.
Untuk menetapkan indeks kepada lajur tarikh, taip sp.set_index(['date'], inplace=True) kemudian panggil sp.head semula.
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.
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.
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.
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.
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
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.
Dalam tutorial bahasa pengekodan DAX ini, pelajari cara menggunakan fungsi GENERATE dan cara menukar tajuk ukuran secara dinamik.
Tutorial ini akan merangkumi cara menggunakan teknik Visual Dinamik Berbilang Thread untuk mencipta cerapan daripada visualisasi data dinamik dalam laporan anda.
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.
Saya ingin menunjukkan cara perkhidmatan dalam talian LuckyTemplates Apps boleh membantu dalam mengurus laporan dan cerapan berbeza yang dijana daripada pelbagai sumber.
Ketahui cara untuk menyelesaikan perubahan margin keuntungan anda menggunakan teknik seperti mengukur percabangan dan menggabungkan formula DAX dalam LuckyTemplates.
Tutorial ini akan membincangkan tentang idea pewujudan cache data dan cara ia mempengaruhi prestasi DAX dalam memberikan hasil.
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