データフレームを比較し、違いを並べて表示する
データの不一致を特定するために、2 つのデータフレームを比較する必要が生じることがよくあります。そしてそれらの間の変化を強調表示します。次の例を考えてみましょう:
"StudentRoster Jan-1": id Name score isEnrolled Comment 111 Jack 2.17 True He was late to class 112 Nick 1.11 False Graduated 113 Zoe 4.12 True "StudentRoster Jan-2": id Name score isEnrolled Comment 111 Jack 2.17 True He was late to class 112 Nick 1.21 False Graduated 113 Zoe 4.12 False On vacation
目的の出力を実現するには、まず変更が加えられた行を特定します:
ne = (df1 != df2).any(1)
次に、変更された特定のエントリを特定します:
ne_stacked = (df1 != df2).stack() changed = ne_stacked[ne_stacked] changed.index.names = ['id', 'col']
変更されたエントリの元の値と更新された値の抽出に進みます:
difference_locations = np.where(df1 != df2) changed_from = df1.values[difference_locations] changed_to = df2.values[difference_locations]
最後に、違いを使いやすい表形式で表示します:
pd.DataFrame({'from': changed_from, 'to': changed_to}, index=changed.index)
このアプローチでは、2 つのデータフレーム間の相違点の包括的な概要が提供され、変更された値とその位置の両方が強調表示されるため、データの不一致を迅速かつ効率的に分析できます。
以上がDataFrame 間の違いを簡単に識別して表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。