Closed3
kaggleの小技メモ
データセットを新しく作るコード
import json
from kaggle.api.kaggle_api_extended import KaggleApi
ID = '<自分のID>'
DATASET_DIR = '<datasetのpath>'
DATASET_TITLE = '<datasetのタイトル>'
FOLDER_DIR = '<データセットにアップロードするフォルダ>'
dataset_metadata = {}
dataset_metadata['id'] = f'currypurin/{DATASET_DIR}'
dataset_metadata['licenses'] = [{'name': 'CC0-1.0'}]
dataset_metadata['title'] = DATASET_TITLE
with open(FOLDER_DIR / 'dataset-metadata.json', 'w') as f:
json.dump(dataset_metadata, f, indent=4)
api = KaggleApi()
api.authenticate()
api.dataset_create_new(folder=FOLDER_DIR, convert_to_csv=False, dir_mode='skip')
すでにデータセットがあった場合には、更新するように変更したversion。
UPLOAD_DIR = '<uploadするdirのpath>'
EX_NO = '<実験番号>' # 実験番号などを入れる、folderのpathにする
USERID = '<Kaggleのuserid>'
def dataset_upload():
import json
from kaggle.api.kaggle_api_extended import KaggleApi
id = f'{USERID}/{EX_NO}'
dataset_metadata = {}
dataset_metadata['id'] = id
dataset_metadata['licenses'] = [{'name': 'CC0-1.0'}]
dataset_metadata['title'] = f'{EX_NO}'
with open(UPLOAD_DIR / 'dataset-metadata.json', 'w') as f:
json.dump(dataset_metadata, f, indent=4)
api = KaggleApi()
api.authenticate()
# データセットがない場合
if f'{USERID}/{EX_NO}' not in [str(d) for d in api.dataset_list(user=USERID, search=f'"{EX_NO}"')]:
api.dataset_create_new(folder=UPLOAD_DIR,
convert_to_csv=False,
dir_mode='skip')
# データセットがある場合
else:
api.dataset_create_version(folder=UPLOAD_DIR,
version_notes='update',
convert_to_csv=False,
delete_old_versions=True,
dir_mode='skip')
dataset_upload()
学習済みモデルをKaggleDatasetsに追加 に移動した。
このスクラップは2021/01/11にクローズされました