100day’s blog

思いついた事や、プログラミングの毎日の作業工程を短めにまとめてます。

Cousera Julia Scientific Programing コースのJulia コードは0.6 これを1.0.0に対応させる

CouseraのJulia Scientific Programmingコースを受講中です。

www.coursera.org

 

前回に続きChapter 3を受講していますが、前回まで使ってたJuliaBoxをやめてデスクトップにJupyter Note Book を入れて学習開始です。

Julia v0.6.1のインストールとJupyter Notebookで使うまで

 

上記はバージョン0.6.1用ですが、現行の1.0でもバージョン指定を変えればOKです。

今回はplotting=作図という事で簡単なグラフ作成です。

 

サンプルを開いて、簡単な作業をしようとした所

f:id:gpstandard:20180927223312p:plain

となり、そもそもPkg importとPlotsが無いという事でaddする事に

f:id:gpstandard:20180927223237p:plain

無事色々インストールして課題をと思ったら・・・・

 

ここで初めて、このCouseraのコースがJulia 0.6時代の物ということに気づく。

 

# Setting up a custom stylesheet in IJulia
# New in 0.6
file = open("style.css") # A .css file in the same folder as this notebook file
styl = readstring(file) # Read the file
HTML("$styl") # Output as HTML

 

この中のreadstringが無いと言われ、検索するとdeprecatedという結果に

f:id:gpstandard:20180928021601p:plain

今の1.0系ではこういう書き方。

# Setting up a custom stylesheet in IJulia
# New in 1.0.0
file = open("style.css") # A .css file in the same folder as this notebook file
styl = read(file,String) # Read the file
HTML("$styl") # Output as HTML

 

無事これでスタイルがあたった。

 

ほう・・・・・・・

という事は・・・・・

 

冒頭で使わない予定の JuliaBoxにログインしてみると

f:id:gpstandard:20180928021848p:plain

やっぱり・・・・2つバージョンが使えるようになってる。

残念ながら、自分のデスクトップには1.0.0しか入ってません。

 

そして続けて

# New in 0.6
tempvar = Array{Any}(4)
fill!(tempvar, "hello ... word")

 ここも

# New in 1.0.0
tempvar = Array{Any}(undef,4)
fill!(tempvar, "hello ... word")

こういう書き方、ほう・・・・undef・・・・

 

これは軽く学習に障害がありますな・・・

 

Julia 1.0.0のリリースが2018年の8月なので、これはいたしかたがないですね・・・

それこそPythonの2系と3系ぐらいの言語仕様の変更があるのかぁ・・・・

 

0.6で学習を進めてもいいですが、まだ初めたばかりだし1.0で進めて細かな違いに気づくのも面白くはありますが・・・・

 

一旦ここは考えます。