Python を使用してデータフレームの違いを効果的に比較および表示する方法

Mary-Kate Olsen
リリース: 2024-10-22 20:10:39
オリジナル
324 人が閲覧しました

How to Compare and Display Dataframe Differences Effectively Using Python

データフレームの違いを効果的に比較して表示する

はじめに

2 つの違いの識別と理解データフレームはデータ分析における一般的なタスクです。過去のデータを現在の傾向と比較する場合でも、データベース内の変更を追跡する場合でも、これらの変更を正確に強調表示する機能は非常に重要です。

問題ステートメント

2 つのデータフレームがあるとします。 「StudentRoster Jan-1」と「StudentRoster Jan-2」という 2 つの異なる月の学生名簿情報が含まれています。私たちの目標は、これら 2 つのデータフレーム間の変更を明確に表示し、各行の新しい値と古い値の両方を示す HTML テーブルを作成することです。

ソリューション

変更された行の特定

最初のステップは、実際に変更された行を特定することです。 any() 関数を使用して、各行の違いを確認できます。

<code class="python">import pandas as pd
import numpy as np

ne = (df1 != df2).any(1)</code>
ログイン後にコピー

これは、True が変更された行を示すブール系列を返します。

変更された値の抽出

次に、実際に変更された値を抽出する必要があります。 .stack() メソッドを使用してデータフレームを 1 つの列に変換し、変更された値についてこの列をフィルター処理します。

<code class="python">ne_stacked = (df1 != df2).stack()
changed = ne_stacked[ne_stacked]
changed.index.names = ['id', 'col']</code>
ログイン後にコピー

これにより、変更された値のインデックスと列の名前が得られます。

以前の値と新しい値の抽出

変更された値のインデックスを使用して、変更されたエントリごとに以前の値と新しい値を抽出できます:

<code class="python">difference_locations = np.where(df1 != df2)
changed_from = df1.values[difference_locations]
changed_to = df2.values[difference_locations]</code>
ログイン後にコピー

HTML テーブルの作成

最後に、抽出した値を組み合わせて HTML テーブルを作成できます:

<code class="python">pd.DataFrame({'from': changed_from, 'to': changed_to}, index=changed.index)</code>
ログイン後にコピー

このデータフレームには 2 つの列が含まれています: "from"および「to」は、変更された各エントリの元の値と新しい値を表示します。データフレームのインデックスは、変更が発生した行と列を識別します。

この HTML テーブルは、変更された値とその以前の値と新しい値を並べて表示することで、変更の明確かつ包括的な概要を提供します。 2 つのデータフレーム間。

以上がPython を使用してデータフレームの違いを効果的に比較および表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!