Bagaimana untuk Membandingkan Pandas DataFrames dan Visualisasikan Perbezaan?

Mary-Kate Olsen
Lepaskan: 2024-10-22 20:45:19
asal
919 orang telah melayarinya

How to Compare Pandas DataFrames and Visualize Differences?

Membandingkan DataFrames dan Visualisasi Perbezaan dengan Side-by-Side Comparison

Memandangkan dua bingkai data Pandas, tugasnya adalah untuk mengenal pasti dan mempamerkan perubahan antara mereka dalam format yang mesra pengguna. Matlamatnya ialah untuk mengeluarkan jadual HTML yang menyerlahkan baris yang telah berubah secara visual, memaparkan nilai asal dan nilai yang dikemas kini.

Mengenal pasti Perubahan Baris

Untuk mencapai matlamat ini, adalah perlu untuk menentukan baris yang telah berubah. Ini boleh dicapai dengan menggunakan operasi ne (tidak sama), yang mengembalikan topeng boolean untuk semua elemen yang nilai yang sepadan dalam dua bingkai data berbeza.

<code class="python">ne = (df1 != df2).any(1)</code>
Salin selepas log masuk

Mencari Entri Ubahsuai

Setelah baris dengan perubahan telah dikenal pasti, entri khusus yang telah diubah suai boleh dikesan menggunakan fungsi stack(). Dengan menapis hasil bertindan berdasarkan topeng boolean, ia menjadi mungkin untuk mengekstrak entri yang telah berubah.

<code class="python">changed = (df1 != df2).stack()[ne_stacked]
changed.index.names = ['id', 'col']</code>
Salin selepas log masuk

Mengekstrak Nilai Berubah

Seterusnya, yang asal dan nilai yang dikemas kini boleh diekstrak menggunakan fungsi where. Ini membolehkan penciptaan DataFrame yang meringkaskan perubahan, dengan lajur "dari" dan "kepada" masing-masing mewakili nilai asal dan yang diubah suai.

<code class="python">difference_locations = np.where(df1 != df2)
changed_from = df1.values[difference_locations]
changed_to = df2.values[difference_locations]</code>
Salin selepas log masuk

Menjana Jadual HTML

Akhir sekali, perubahan yang diekstrak boleh disusun ke dalam jadual HTML untuk menggambarkan perbezaan antara dua bingkai data. Jadual ini boleh dipaparkan dengan mana-mana enjin pemaparan HTML, seperti kaedah to_html Pandas, untuk menyediakan perbandingan sebelah menyebelah yang mesra pengguna.

<code class="python">pd.DataFrame({'from': changed_from, 'to': changed_to}, index=changed.index).to_html()</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Pandas DataFrames dan Visualisasikan Perbezaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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!