データフレームの比較: 一方には存在するが他方には存在しない行の検索
データフレームを比較して相違点を特定することは、データ品質の保証とマージにとって重要です操作。この場合、特定の構造を持つ 2 つのデータフレーム (df1 と df2) があり、df2 には存在するが df1 には存在しない行を判別する必要があります。
最初に df1 != df2 を使用してデータフレームを比較しようとした結果、エラーです。このアプローチは、同一の行と列を持つデータフレームに対してのみ機能します。対称的な差分を見つけるには、別のアプローチが必要です。
1 つの方法では、データフレームを連結します。
df = pd.concat([df1, df2]) df = df.reset_index(drop=True)
次に、連結されたデータフレームをすべての列でグループ化します:
df_gpby = df.groupby(list(df.columns))
次に、1 行のみが存在するインデックス値を取得することで、一意のレコードを識別します。
idx = [x[0] for x in df_gpby.groups.values() if len(x) == 1]
これらのインデックスを使用すると、データフレームをフィルタリングして目的の結果を取得できます。
df.reindex(idx)
このアプローチでは、df2 に存在するが存在しない行が提供されます。 Date インデックスと Fruit 列の比較に基づく df1 の
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3