データサイエンス100本ノックでSQLとPythonを勉強していきます。
S-022: レシート明細テーブル(receipt)の顧客ID(customer_id)に対し、ユニーク件数をカウントせよ。
SQLだと以下のようになります。
select count(distinct customer_id) from receipt;
distinctをつけてユニーク件数を取得できるようにしています。
distinctをつけない場合の結果と、それぞれのcustomer_idごとに件数を取得した結果は以下になります。
Pythonだと以下のようになります。
len(df_receipt['customer_id'].unique())
SQLでいうところのdistinctはPythonだとunique()になるようです。
試しにunique()を外すと件数が変わりました。