大規模データを高速に処理可能な表計算ライブラリPolarsの100本ノックを作成しました。こちらも興味があればご覧下さい。Python初学者のためのPolars100本ノックhttps://qiita.com/kunishou/items/1386d14a136f585e504e※一部の不具合を修正したv1.0.4をGitHubにアップロードしてます。修正内容は記事の最後をご覧下さい。作成したので公開します。認定データ分析試験の出題内容にも沿っているため、この100本ノックを実施することで資格対策にもなります。ノック終盤には、タイタニック号乗客の生存予測問題もあり、Kaggleなどの機械学習コンペへ参加するための練習にもなります。最近、知り合いでPython・機械学習を始める人が増えてきており、そのような人たちに紹介できるコンテンツを自分でも作ってみたいと前々から思っていたため。Pandasが使えれば、機械学習まではできなくても、日常のデータ集計・分析業務にも活用できると考え、まずPandasの100本ノックを作ってみることにしました。世の中に参考書は山ほどありますが、頭で理解するよりも、サクサクと手を動かして学べるものが初学者にとって最も上達するコンテンツだと考え、そのようなものを作りたいと考えました。Notebook上のセルに記載された、Pandasに関する設問100問を解いていきます。通常版と、問題のランダム表示版の2つが同封されています。セクションは、基礎(1-13)、抽出(14-32)、加工(33-58)、マージと連結(59-65)、統計(66-79)、ラベリング(80-81)、Pandasプロット(82-89)、タイタニック号乗客の生存予測(90-100)の8つに分かれています。以下に概要の動画を載せておきます。※Pythonをまだインストールしていない方は、以下の記事を参考に、まずAnacondaを自身のPCにインストールして下さい。問題内ではPandas以外にも、Scikit-learnなどのライブラリも使用します。5分で簡単!AnacondaでPython3をインストール(Windows/Mac編)なお、作者のpandasバージョンは1.1.0です。下位バージョンにて実行した場合、一部エラーが出る設問があることが報告されています(設問31の「nunique()」等)。GitHubよりZIPフォルダをダウンロードした後に、自身のPCのローカル領域に展開する。Notebookで開く(まずは「01_Pandas_100_Knocks_for_Begginer_v1.0.x.ipynb」を開いてみて下さい)。ipynbファイルを開いた後に、先頭のセルを実行すると回答ファイル、問題で使用するデータセットが読み込まれます。使用するデータセットは、タイタニック号の乗客データ等になっています。各設問のセル内に設問に対するコードを入力していきます。答えが分からない場合は、設問セル内の「#print(ans[])」という記述から「#」を消して実行することで、回答例が表示されます。Output」を実行します。「01_Pandas_100_Knocks_for_Begginer(all_answer_displayed)_v1.0.x」ではすべての回答と出力結果を最初から表示しています。回答や出力結果をまとめて確認したいときにご活用下さい。Pandasを一度も触ったことのない方はまずこちらでメソッドを暗記するような勉強方法でも良いと思います。※ZIPファイルから展開した後に、このディレクトリ構成は変えないで下さい(上手く動作しなくなります)。このコンテンツの目指すところ願わくばPython初学者の方がレベル3まで到達できることを意識し、問題を設定しました(3回解けばレベル2までは到達できると思います。Excel、AccessではなくPythonでデータ集計・分析を行う必要性ですが、Excelは表示できるレコードの行数、Accessはファイル容量2GBまでと、集計・分析できるファイルに制限があります。それに対し、Pythonであれば10GB、20GB等の大容量ファイルの集計・分析を行うことが可能です(PCスペックにより扱えるファイル容量の上限は変わります)。レベル2データ集計・分析だけでなく一部の機械学習ができる(「notebook」フォルダに格納している03のipynbファイル(タイタニック)を見た時に何を実施しているのか理解できるようになる)。レベル3Kaggle等の機械学習コンペに参加できるようになるダウンロードコンテンツはGitHubよりダウンロードできます。問わず誰でも使用可能(有志の勉強会や社内の研修で使う際、ご一報いただけると作者のモチベーションが上がります。Notebookの拡張機能としてnbextensionsのScratchpadが便利なのでインストールをおすすめしておきます。df.head()」をするのは面倒です。Scratchpadを使えば、「Ctrl+B」で使い捨てのセル領域を呼び出すことができます。インストール方法は以下を参考にして下さい。extensions~最後に本コンテンツに関してご質問・ご要望があればご連絡下さい。光栄なことに記事の閲覧回数が100,000viewsを越えました。企業様より社内育成で使用しているというお声もいただいております。誠にありがとうございます。