Free Trial

ディスカッション

答えを見つけ、質問し、Alteryx の専門知識を共有してください。

データサイエンス100本ノック 構造化データ加工編をAlteryxでやってみる(27問目~32問目:統計量計算編)

AkimasaKajitani
17 - Castor
17 - Castor

一般社団法人データサイエンティスト協会から公開されているデータサイエンス100本ノック 構造化データ加工編のウィークリーチャレンジ方式による出題第6回目は27問目~32問目を一つにまとめてみました。今回は統計量の計算です。標準偏差、分散は少し厄介な問題です。

 

  • P-027: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに売上金額(amount)の平均を計算し、降順でTOP5を表示せよ。
  • P-028: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに売上金額(amount)の中央値を計算し、降順でTOP5を表示せよ。
  • P-029: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに商品コード(product_cd)の最頻値を求め、10件表示させよ。

    ※出力データは、店舗コード(store_cd)の昇順で並べ、10件を表示すること

  • P-030: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに売上金額(amount)の分散を計算し、降順で5件表示せよ。

    ※不偏分散をまず出力しましょう。余裕があれば標本分散にもチャレンジしてください

  • P-031: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに売上金額(amount)の標準偏差を計算し、降順で5件表示せよ。

    ※不偏標準偏差(標本標準偏差)をまず出力しましょう。余裕があれば標準偏差にもチャレンジしてください

  • P-032: レシート明細データ(receipt.csv)の売上金額(amount)について、25%刻みでパーセンタイル値を求めよ。

    ※データの持ち方として、横持ち(パーセンタイルと各フィールドとして持つ)と縦持ち(パーセンタイルと値のリストとして持つ)の二つのタイプでデータを整形してください

 

解いたらこちらに投稿していただければと思います。ちなみに、次回投稿は一週間後を予定しています。

 

 

solutionファイルは次回添付します。

 

添付ファイルは今回の出題のstartファイルと、前回のsolutionファイルです。

 

前回:データサイエンス100本ノック 構造化データ加工編をAlteryxでやってみる(21問目~26問目:データ抽出中級+カウント編)

24件の返信24
Yoshiro_Fujimori
オーロラ

今週もありがとうございます。

 

以下 回答します。

  • 今回の学び:∑ツールは一度Runしないと入力データのデータ型を認識しない
  • 今回の苦労:Double型の結果比較は丸め誤差で一致しないことがあるが、合わせるのは難しい(ので見た目あっていればOKとしました)

 

スポイラ
問27
Yoshiro_Fujimori_0-1661816444834.png

問28

Yoshiro_Fujimori_1-1661816467599.png

問29

Yoshiro_Fujimori_2-1661816490653.png

問30:Expect Equalツールでテストすると一致しませんでしたが、丸め誤差と解釈してOKとしました。

Yoshiro_Fujimori_3-1661816517123.png

問31:同上

Yoshiro_Fujimori_4-1661816579790.png

問32

Yoshiro_Fujimori_5-1661816606156.png

 

 

 

Qiu
21 - Polaris
21 - Polaris

やってみました。

AlteryxのStandard DeviationやStandard VarianceはPopulationでなく、Sampleであることを勉強になりました。
https://community.alteryx.com/t5/Alteryx-Designer-Knowledge-Base/Standard-Deviation-Population-Macro...

スポイラ
100knocks_alteryx_01_027-032.PNG
DaisukeTsuchiya
マグネター

ありがとうございます。色々勉強になりました。

 

スポイラ
換算をしたのですが、Doubleだと完全一致しなかったです。
不偏と標準の違いについて勉強になりました。


キャプチャ.JPG


ちなみに31問目の*表記の部分合っていますでしょうか? 不偏に対して標本ではないでしょうか?

キャプチャ2.JPG
AkimasaKajitani
17 - Castor
17 - Castor

@DaisukeTsuchiya さん

 

この標準偏差の言葉の使い方なのですが、色々と調べつつ記載してまして、最終的にはこちらのサイトの内容を考慮した書き方になっています。

https://biolab.sakura.ne.jp/variance.html

 

結構定義があいまいなので、nで割る標準偏差/分散、n-1で割る標準偏差/分散といった方が誤りにくそうではありますね・・・。

Excel的にSTDEV.Pなのか、STDEV.Sなのか、といった方が正直わかりやすい気がしています。

 

なので、いっそのこと、母集団の標準偏差と標本の標準偏差、などとどこに対しての標準偏差なのかを明確に示す書き方の方が良いかもしれませんね・・・。

DaisukeTsuchiya
マグネター

@AkimasaKajitani 

夜分遅くご回答ありがとうございます。私もまだ仕事やっていますが…。
ややこしいですね…。ここら辺自分は詳しくないので、色々勉強になります。

AkimasaKajitani
17 - Castor
17 - Castor

ちょっと言葉を整理したstartファイルをアップします(トピックの編集がもうできないので返信という形にします)。

AkimasaKajitani
17 - Castor
17 - Castor

できました!今回はちょっと問題数も多くて大変だったかもしれません・・・。

 

スポイラ
AkimasaKajitani_1-1662216150350.png
AkimasaKajitani_2-1662216175694.png
AkimasaKajitani_3-1662216199978.png

 


 

 nで割る系の分散・標準偏差が合わない方へ:

スポイラ
定義通りやると値がズレないと思います。

分散の定義:
AkimasaKajitani_7-1662216337853.png

 


標準偏差の定義:
 
AkimasaKajitani_5-1662216287499.png

AkimasaKajitani_6-1662216307622.png

 

この方法でやれば、元のPython版の数値ともあいます!

 

Masao
メテオール

回答します!

スポイラ
集計ツールはこういうふうに使うのか!と皆さんの回答を見て勉強しています。32問目は集計ツールだけで答えが出せるのでびっくりです。
Masao_0-1669366566203.png

 

gawa
16 - Nebula
16 - Nebula

AlteryxのVarianceは不偏分散だったのですね。知りませんでした。

集合演算が入ったSQLクエリーは読む気なくなってくるので、Alteryxがいいです。

スポイラ
image.png

メモ

初心者はいったん標本~系は飛ばしてもよさそう

トップのソリューション投稿者