Excel/R/Pandas(どんなツールでも)を忘れないための練習帳。実務の95%はカバーするのでは?
data/NPL_batters.csvを使うこと(文字コードはUTF-8、選手名は姓名の間に空白がある)
Q1.2 空白のない名前の列を作る(選手名の空白を削除する)
Q1.4 本塁打ゼロの論理列を作る(本塁打を打っていれば1、なければ0)
Q1.6 本塁打の多い順、ただし同じ場合は打率の高い順に並べ直す
Q2.1 中日の選手だけにする。その人数を表示する
Q2.4 打率が0.2以上、0.25以下の選手だけ(and条件)
Q2.5 打率が0.1以下で本塁打が5本以下の選手だけ
Q3.1 球団別に、打数と安打の合計をそれぞれ求める
Q4.1 縦に球団、横に安打、2塁打、3塁打、本塁打の合計となる表を作る
data/BoxOffice2016.csvを使うこと
(1年間53週の順位、興行収入、映画館数などのデータ。WeekOfYearは第何週目か、ReleaseWeekは封切り何週目かを表す)
Q5.3 各映画の上映期間(ReleaseWeekを使わず、最初の週と最後の週の差+1を計算すること)
NPL_batters.csvと一緒にdata/moneyball2017.csvも使うこと(文字コードはshift-jis)
最終的に得たい情報は、安打1本の値段が安い選手。
Q6.1 2本のファイルを名前で結合する(内部結合)
Q6.2 2本のファイルをチームと名前で結合する(同姓同名対策)
Q6.3 NPL_battersにはあり、moneyballにはない選手のリスト
この練習に使ったような綺麗なデータファイルが常に手に入るとは限らない。次の課題はデータ洗浄
Q7 NPL_batters.csvとmoneyball2017.csvで、表記の揺れ(変換ミスなど)で一致しない名前を探す