これは何の記事か
Mathematicaではノートブックソフトを終了したりすると、それまで大量の時間をかけて計算した結果が失われてしまって、非常にストレスフルである。かといって、作業をしばらくしないのにノートブックをずっと起動しておくのも気持ち良くない。そこで、この記事では計算結果を外部ファイルとして保存しておき、次に作業をする際にはその外部ファイルを読み込む事で前回の続きから作業できる様にする方法を説明する。
データの保存方法
まず、あらかじめノートブックが存在するフォルダにsavefiles
というフォルダを作成しておく。それが完了したら、計算結果を保存するファイルパスを定義する。ここではhoge.nb
というノートブックで定義された変数などをhoge_savefile.wl
という名前の外部ファイルに保存する方針を取るので、そのファイルのパスを定義してsavefile
という変数に入れている。別のディレクトリ構造やファイル名で保存したければ右辺を適当に書き換えればいい。
savefile =
FileNameJoin[{NotebookDirectory[],
TemplateApply[
"/savefiles/``_savefile.wl", {FileBaseName[NotebookFileName[]]}]}]
あとは、保存したい変数を指定してSave
コマンドを実行すれば上で用意したファイルに定義などが保存される。例えば、現在のコンテキストに存在する全てのシンボルの設定を保存したい場合であれば、
Save[savefile, "`*"]
を実行すればよい。ノートブック全体を書き出すのは時間がかかるので特定のシンボルに関する設定のみを保存したい時には
Save[savefile, a]
Save[savefile, {a, b, c}]
の様に、直接その変数や変数のリストを指定してあげれば、savefileにその情報が追加される。他の文字列パターンの指定方法は公式サイトにヒントがあるかもしれない。ついでに言っておくと、とある文字列パターンに合致するシンボルのリストやその個数は
Names["文字列パターン"]
Dimensions[Names["文字列パターン"]]
などによって、調べることができる。
データの読み込み方法
データを読み込む時には以下の様にGet
コマンドを実行すればよい。
Get[savefile]
もちろん、上記のsavefileはデータの保存方法のところで定義したものと同じものであり、Getをする前に実行しておく必要がある。