kaggleのnotebookはjupyter notebook形式で実行するか一つのscriptファイルを実行するかいずれかしかできないので、 開発環境でクラス毎に.pyファイルを分けて実装している場合、notebookでどう実行するかが問題になる。
一番良いのは恐らく自分が書いたコードをpackageにして、tar.gzファイルにまとめ、それをkaggleにアップロードし、pip installして実行すること。
setup.pyを以下のように書いて python setup.py sdist
を実行すると~.tar.gzファイルができる。
from setuptools import setup, find_packages PACKAGE_NAME = 'data_science_bowl_2019' setup( # metadata name=PACKAGE_NAME, version="1.0.0", # options packages=find_packages(), include_package_data=True, zip_safe=False, python_requires='>=3.6', install_requires=[] )
.ymlなど.py以外でパッケージに含めたいファイルがある場合はMANIFEST.inを定義して以下のように書く。
recursive-include data_science_bowl_2019 *.yml
参考: