先日書いたのは、CSVでどのような重複があるかを調査するものだった。
Pandas を使ってcsv 任意の列で重複するキーの組み合わせを求める。 - Oboe吹きプログラマの黙示録
重複有無のだけを判定する方法をまとめた。
先日の Pandas を使ってcsv 任意の列で重複するキーの組み合わせを求める。 - Oboe吹きプログラマの黙示録
と同様のCSV, 任意の列の重複を調べる
groupby を使った重複有無の判定
import pandas as pd df = pd.read_csv('data.csv', encoding='utf-8', skipinitialspace=True) if len(df.groupby(by=['品名', '産地']).filter(lambda x: len(x) > 1)) > 0: print("重複有り") else: print("重複無し")
duplicated ⇒ pandas.core.series.Series
⇒ tolist
⇒ functools . reduce を使った重複有無の判定
import pandas as pd from functools import reduce df = pd.read_csv('data.csv', encoding='utf-8', skipinitialspace=True) if reduce(lambda a, b: a or b, df.duplicated(subset=['品名', '産地']).tolist(), False): print("重複有り") else: print("重複無し")