
はじめに
問29~問31のコードの説明を初心者や初学者でもわかるような方法でまとめました。
データサイエンス100本ノックのはじめ方は、ブログ記事を参考にしてください。
>>【Google Colabはじめ方】データサイエンス100本ノックーデータサイエンティスト協会
問29 レシート明細データフレーム(df_receipt)に対し、店舗コード(store_cd)ごとに商品コード(product_cd)の最頻値を求めよ。
まず、「(df_receipt)に対し、店舗コード(store_cd)ごとに」表示する必要があるので、groupby()を使用します。
今回は、product_cdの最頻値を求める必要があります。
最頻値とは、最も多い度数(頻度)を示す値です。グラフで見た場合には、分布図上の一番高い値が最頻値です。
さて、最頻値を求めるには、lambda式を用いてmode()を適用することになります。
lambda式について、詳しく知りたい方は以下のブログ記事をご覧ください。
>>【データ分析初心者】Python構文~無名関数lambda式、内包表記、map関数~
式の構造はlambda 引数:返り値となります。
今回は最頻値のlambda式を書くlambda x:x.mode()となります。
(product_cd)という列に対して、同じ操作をしたいので、apply()を使用します。
よって、product_cd.apply(lambda 引数: 返り値)となります。
また、インデックスが消えないように、最後に.reset_index()を使用します。
df_receipt.groupby('store_cd').product_cd.apply(lambda x:x.mode()).reset_index()
*コード結果は下部省略
問30 レシート明細データフレーム(df_receipt)に対し、店舗コード(store_cd)ごとに売上金額(amount)の標本分散を計算し、降順でTOP5を表示せよ。
まず、「(df_receipt)に対し、店舗コード(store_cd)ごとに」表示する必要があるので、.groupby( )を使用します。
今回は、「売上金額(amount)の標本分散を計算」する必要があります。
まず、標本分散とは、標本から計算した分散であり、var(ddof=0)で求めることができます。
また、インデックスが消えないように、最後に.reset_index()を使用します。
これを「降順」で表示なので、問18で使用したように、.sort_values(‘カラム名’, ascending=False)とします。
さらに、5件表示なので、.head()と打ちます。なお、.head()は何も数字を入れない場合には5がデフォルト値になります。
df_receipt.groupby('store_cd').amount.var(ddof=0).reset_index().sort_values('amount',ascending=False).head()
問31 レシート明細データフレーム(df_receipt)に対し、店舗コード(store_cd)ごとに売上金額(amount)の標本標準偏差を計算し、降順でTOP5を表示せよ。
問30と処理は同じで、違う点は標本標準偏差を計算することです。
標本標準偏差とは、標本分散(標本から計算した分散)の平方根で、std(ddof=0)で求めることができます。
df_receipt.groupby('store_cd').amount.std(ddof=0).reset_index().sort_values('amount',ascending=False).head()
Pythonのコードやライブラリーについて知りたい場合
Pythonはデータ分析でよく使われている言語です。
この機会にPythonのコードの打ち方・ライブラリーについてもっと知りたいと思った方は、以下のブログ記事をご覧ください。
データ分析入門・データサイエンス初心者・初学者向けにデータ分析でよく使うPythonをまとめました。
>>【データ分析初心者】Python構文~if文、format記法とf文字列~
>>【データ分析初心者】Python構文~for文、range関数、zip関数、enumerate関数~
>>【データ分析初心者】Python構文~無名関数lambda式、内包表記、map関数~
>>【データ分析初心者】Pandas~loc[]、iloc[]、スライス、drop()、isin()~
>>【データ分析初心者】Matplotlib、Seabornーscatter、hist、countplot 、barplot
独学でデータ分析をしている方へ
機械学習やデータサイエンス・データ分析を独学で学ぶには、どうしたらよいかをまとめてみましたので、興味がある方はこちらのブログ記事をご覧ください。
