Challenge #30: Alteryx ’16 Grand Prix (Race 1, L2) ~最も若い野球チームの出力等~ – Alteryx Weekly Challenge

2019.01.07

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。

2018年のアドベントカレンダーでは、Alteryx Communityで公開されているWeekly ChallengeのIntermediate Levelの問題に挑戦してきました。アドベントカレンダーにて挑戦した問題の中に、以下のエントリがあります。

続くChallenge #30はChallenge #29で作成したデータを用いて問題に答えていく内容になっていますが、Beginner Levelとなっていたためアドベントカレンダーではスキップしていました。今回はChallenge #30に挑戦します。

動作環境

当エントリの執筆には、以下の環境を利用しています。

  • Windows 10 Pro
  • Alteryx Designer 2018.4.5.55178 英語版

Challenge #30: Alteryx '16 Grand Prix (Race 1, L2)

お題

今回挑戦するお題はこちら。

Input側には以下のデータがあります。

Input側のデータから作成する回答は以下の4つです。

  1. 最も若いチームと平均年齢の出力
  2. 平均投手ランクが最高(数値が最も低い)チームの出力
  3. 2015 Team RankとHitter Rankのピアソン関数の出力
  4. 各チームのポジション別の選手数、チームランク、打者のホームランの合計、投手の勝利数の合計の出力

解答の概要

今回作成するワーフクローは以下の通りです。

最も若いチームと平均年齢の出力

Summarizeツール(Transform -> Summarize)を使用して、「Fantasy Team」列でグループ化し、「Age」列の平均(Avg)を出力します。

Sortツール(Preparation -> Sort)を使用して、「Abe_Age」列(平均年齢)をAscending(昇順)で並べ替えます。

Sampleツール(Preparation -> Sample)を使用して、First N rowsN = 1 に設定して上位1件を出力します。

結果を確認して完成です。

平均投手ランクが最高(数値が最も低い)チームの出力

前項の「最も若いチームと平均年齢の出力」とほぼ同じ設定になります。Summarizeツールでは「Pitcher Rank」列の平均を出力し、SortツールとSampleツールを使用して平均投手ランクが最高のチームを出力します。

2015 Team RankとHitter Rankのピアソン関数の出力

Pearson Correlationツール(Data Investigation -> Pearson Correlation)を使用します。Generate correlation for selected variables に「Hitter Rank」列と「2015 Team Rank」列を選択します。また、Calculate Correlationを選択します。

結果を確認して完成です。

各チームのポジション別の選手数、チームランク、打者のホームランの合計、投手の勝利数の合計の出力

Summarizeツールを使用して、「Fantasy Team」列と「Position」列でグループ化し、「Position」列の数(Count)を出力します。

Cross Tabツール(Transform -> Cross Tab)を使用して、データを横持ちに変換します。Group Data by these Values には「Fantasy Team」列を選択し、New Column Headers には「Position」列、Values for New Columns には「Count」列、Method for Aggregating Values には Sum を選択します。

また、Summarizeツールを追加して、初めのデータと接続します。2つ目のSummarizeツールでは、「Fantasy Team」列でグループ化、「2015 Team Rank」列の最初の値(First)を出力し、「Home Runs」列と「Wins」列の合計(Sum)を出力します。

Joinツール(Join -> Join)を使用して、2つのデータを結合します。Join by Specific Fields を使用して「Fantasy Team」列で結合します。あわせて不要な列は削除します。

Sortツールを使用して「2015 Team Rank」列を昇順で出力します。

結果を確認して完成です。

最後に

今回はWeekly ChallengeのChallenge #30: Alteryx '16 Grand Prix (Race 1, L2)に挑戦しました。2019年も引き続きWeekly Challengeに挑戦してAlteryxの技術を磨いていきます。

サンプルワークフローのご案内

クラスメソッドでご契約のユーザー様向けに、当ブログでご紹介したワークフローを専用ポータルにて公開しております。当エントリでご紹介したワークフローも公開予定ですので、ご参考にしていただきますと幸いです。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400