他人のNotebook読みづらくないですか?
データ分析のKaggleをしていて、日々これを感じ、この鬱憤を晴らしたいという思いを込めてライブラリを作成しました。
nparse
notebookをpythonファイルとmarkdownファイルに分解するcliツール。
本記事ではこちらのライブラリについて紹介をします。
1. ライブラリ作成のモチベーション
1.1. Kaggleで英語が大変ということ。
「Kaggle で 結果を残したい!」
私含め、このようなことを思う方はとても多いですが、皆が共通しているのは 『英語が大変!!』 と言うことです.
Kaggleには英語で書かれた有益な公開notebookが多いためです.
初学者はよく公開notebookからライブラリの使い方や考え方を読み解いて得られることも多いですが、そこにハードルを感じてしまうとなかなか継続的に学習ができないと感じています。
1.2. 個人PCが低スペックで notebook を開けない
私は現在、低スペックのPCを用いて作業している関係でdeeplで和訳を調べながら、Kaggleの公開notebookを開いているとブラウザが固まったりコードを読んでいても、どこを読んでいたかわからなくなったりとKaggleで結果を残す以前の障壁があるように感じました。
どこを読んでいるか記録するために、公開notebookをlocalにダウンロードして編集したり、公開notebookをkaggle上で編集したりしました。しかし、そもそも重いPCを利用している関係で、なかなか継続的に学習することもできませんでした。
そこで、notebookをpythonとmarkdownに分解するcliを作成しました。
2. 本ライブラリnparseの使い方
$ nparse [読みたいnotebookのpath].ipynb
これをすることで、[読みたいnotebookのpath].py
と[読みたいnotebookのpath].md
が自動で作成されます。
** 生成されたpythonファイルはノートブックのセルごと** に区切られているため、ここを編集することで、記録の管理がしやすくなることが期待されます。
####################
# <今のセルの数>/<全体のページ数>
# date_reading: <読んだ日>
# thought: <感想>
# words: <覚えたい単語>
# reference: <使用ライブラリの公式ドキュメントなど>
####################
print("This is a code")
3. 本ライブラリ nparse の利点
nparse
の主な利点は以下の通りです:
-
記録がしやすい:
- Gitでの管理により、どの部分をいつ編集したかが明確になります。
- 英語の意味や参照先のメモを残すための専用セクションを設けることで、学習の効率を高めることができます。
-
編集が軽い:
- PythonファイルやMarkdownファイルはノートブックに比べて容量が軽く、シンプルなファイル構成のため、Gitでの編集履歴追跡が容易です。
-
outputの出力がない:
- 公開ノートブックの多くはUIに重点を置いているため、コードと不必要なコンテンツが混在していることが多いです。
nparse
は、必要なコードのみを抽出し、分析に集中できる環境を提供します。
- 公開ノートブックの多くはUIに重点を置いているため、コードと不必要なコンテンツが混在していることが多いです。
現在、nparse
には特にオプション機能はありませんが、このツールのさらなる発展のために、フィードバックやプルリクエストを歓迎しています。
- GitHubページ: https://github.com/makinzm/notebook-parser
nparse
を使用することで、データ分析のプロセスをよりスムーズに進めることができます。このツールが、あなたのデータ分析や学習に役立つことを願っています。
4. まとめ
nparse は Kaggleの公開ノートブックやその他の大規模なデータセットの分析において、非常に便利なツールです。このCLIツールは、ノートブックをPythonファイルとMarkdownファイルに分解し、編集や記録の管理を容易にします。これにより、低スペックのPCでも効率的に作業ができ、英語の読解やライブラリの理解を深める際にも大いに役立ちます。