Bagaimana untuk Mengira Perbezaan Skor untuk Berbilang Laman Web dan Negara dalam Panda?

Susan Sarandon
Lepaskan: 2024-10-31 18:37:02
asal
137 orang telah melayarinya

How to Calculate Score Differences for Multiple Websites and Countries in Pandas?

Mengumpul dan Mencari Perbezaan dalam Pelbagai Medan dengan Panda

Dalam bekerja dengan set data, selalunya perlu untuk mengira perbezaan atau perubahan antara nilai dari semasa ke semasa atau merentas kategori yang berbeza. Dalam Panda, anda boleh melakukan pengiraan ini dengan cekap dengan menggunakan fungsi groupby() dan diff().

Dalam senario yang diberikan, anda mempunyai DataFrame dengan data pada pelbagai tapak web dan markahnya di negara yang berbeza. Matlamat anda ialah untuk menentukan perbezaan skor 1/3/5 hari bagi setiap gabungan negara tapak.

Isih dan Pengumpulan Bingkai Data

Untuk bermula, isih DataFrame anda mengikut tapak, negara dan lajur tarikh. Isih memastikan titik data yang serupa dikumpulkan bersama, menjadikannya lebih mudah untuk mengira perbezaan.

<code class="python">df = df.sort_values(by=['site', 'country', 'date'])</code>
Salin selepas log masuk

Seterusnya, gunakan fungsi groupby() untuk mengumpulkan data mengikut tapak dan negara.

<code class="python">grouped = df.groupby(['site', 'country'])</code>
Salin selepas log masuk

Mengira Perbezaan

Dengan data yang dikumpulkan, anda kini boleh mengira perbezaan skor menggunakan fungsi diff(). Fungsi ini mengira perbezaan antara baris berturut-turut dalam kumpulan.

<code class="python">df['diff'] = grouped['score'].diff().fillna(0)</code>
Salin selepas log masuk

Fungsi diff() mengisi nilai yang tiada dengan 0 secara lalai, memastikan set data yang konsisten dan lengkap.

Kerangka Data Terhasil

DataFrame yang terhasil akan mengandungi data asal bersama-sama dengan skor yang dikira perbezaan:

         date    site country  score  diff
8  2018-01-01      fb      es    100   0.0
9  2018-01-02      fb      gb    100   0.0
5  2018-01-01      fb      us     50   0.0
6  2018-01-02      fb      us     55   5.0
7  2018-01-03      fb      us    100  45.0
1  2018-01-01  google      ch     50   0.0
4  2018-01-02  google      ch     10 -40.0
0  2018-01-01  google      us    100   0.0
2  2018-01-02  google      us     70 -30.0
3  2018-01-03  google      us     60 -10.0
Salin selepas log masuk

DataFrame ini menyediakan perbezaan skor 1/3/5 hari yang diingini untuk setiap gabungan tapak/negara.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Perbezaan Skor untuk Berbilang Laman Web dan Negara dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!