ニッチすぎてこれが役に立つ人は果たして何人いるのだろう。。という記事ですが少し苦労したのでメモです。
何かと言うと、細々と続けている MOOC講座 fast.ai の part1 v2の lang_model-arxiv.ipynb でソースとなるファイルが見つからない問題です。
問題となる箇所
3つ目のセル
df_mb = pd.read_csv(f'{PATH}arxiv.csv') df_all = pd.read_pickle(f'{PATH}all_arxiv.pickle')
jeremyがフォーラムのスレッドで次のようにコメントしてますが
You can download an arxiv dataset using this project: https://hackernoon.com/building-brundage-bot-10252facf3d1
このリンクに飛んで探しても all_arxiv.pickle は見つかりません..。
なぜなら、、
このページにリンクが張ってあるリポジトリのコードを自分で実行して作成する必要があるからです。。
arxiv.csvの取得
all_arxiv.pickleの前にまずarxiv.csvから
こちらは https://github.com/amauboussin/arxiv-twitterbot からリンクが張ってあるbrundage_bot.csvをダウンロードしてarxiv.csvにリネームすれば良さそうです
all_arxiv.pickleの取得
続いてall_arxiv.pickleです。 以下の手順で作成できました
必要なもの
- python2
プロジェクトを git clone する
$ git clone https://github.com/amauboussin/arxiv-twitterbot.git
依存ライブラリのインストール
$ conda install pandas $ conda install requests $ pip install feedparser
job.pyの修正
tweetに関する箇所は不要なのでコメントアウトします
from time import sleep from get_arxiv import check_for_update, update_arxiv # from tweet_papers import tweet_day # if check_for_update(): # update_arxiv() # sleep(2) # tweet_day(dry_run=False) update_arxiv()
get_arxiv.pyの修正
pklファイルが元から存在している前提だったり、ループが終わらなかったり(?!)、ちょこちょこと修正する必要がありました :-)
job.pyを実行する
時間がかかりますが辛抱強く待つとall_arxive.pickleが作成されます
$ python job.py
これで一応 lang_model-arxiv.ipynbは最後まで動かせました。 私が作成したall_arxive.pickleはここに置いてあるので面倒くさい方は使ってください