-Julia- Plotのインストールと描画

Juliaでは,Pythonのmatplotlibのように描画用のパッケージが固定されておらず,現段階では色々と選ぶことができるようです.

 
描画用パッケージとして,とりあえずPlotをインストールしてみることにしました.以下はその際のメモです.
REPLを起動します.その後プロンプトが"julia> "となっている状態で"]'を入力すると,プロンプトが"(v1.1) pkg>"となるので,その状態で以下のように"add Plots"と入力します.
julia> # input ]
 
(v1.1) pkg> add Plots
処理には多少時間がかかる場合があります*が,終われば終了で,REPLを終了させます.
 
その後に,再度Juliaを起動して,Plotパッケージの読み込みを行います.
julia> using Plots
 
julia> gr()
Plots.GRBackend()
 
これで,これでフロントエンドにPlots,バックエンドにGRという組み合わせで実行できるようになるようです(現段階では,正直なところフロントエンド,バックエンドという仕組みはよく理解できていません...).
 
試しに乱数データをプロットして描画してみます.
julia> plot(randn(30,1))
 
julia> savefig("plot1.png")
とすると,描画された後に,以下のようなpngファイルが保存されます.

f:id:HidehikoMURAO:20190422103222p:plain

 
もう一つ似たようなプロット,描画を行なってみます.
julia> plot(randn(50,5))
 
julia> savefig("plot2.png")
すると,描画された後に,以下のようなpngファイルが保存されます.

f:id:HidehikoMURAO:20190422103204p:plain

 
散布図は以下のようなコマンドでプロット,描画が可能です.
julia> plot(randn(50,5), st=:scatter)
 
julia> savefig("plot3.png")

f:id:HidehikoMURAO:20190422103144p:plain

 
.pngファイルはあまりキレイではありませんが,.pdfファイルで保存するとキレイな図を得ることができます..pdfファイルに保存する際には,以下のようなコマンドを入力します.
julia> p = plot(randn(50, 3), st=:scatter)
 
julia> savefig(p, "plot3.pdf")
 
なお,上記の例のJupyter Notebookファイルは,GitHubJulia_Beginner_02というファイルで見ることができます.
 
* Plotsパッケージのインストール時には以下のように表示されます.

  Updating registry at `~/.julia/registries/General`

  Updating git-repo `https://github.com/JuliaRegistries/General.git`

 Resolving package versions...

 Installed Measures ────────── v0.3.0

 Installed Showoff ─────────── v0.2.1

 Installed SortingAlgorithms ─ v0.3.1

 Installed RecipesBase ─────── v0.6.0

 Installed StatsBase ───────── v0.29.0

 Installed Plots ───────────── v0.24.0

 Installed PlotUtils ───────── v0.5.8

 Installed Contour ─────────── v0.5.1

 Installed PlotThemes ──────── v0.3.0

 Installed NaNMath ─────────── v0.3.2

 Installed Missings ────────── v0.4.0

 Installed StaticArrays ────── v0.10.3

 Installed GR ──────────────── v0.39.1

  Updating `~/.julia/environments/v1.1/Project.toml`

  [91a5bcdd] + Plots v0.24.0

  Updating `~/.julia/environments/v1.1/Manifest.toml`

  [d38c429a] + Contour v0.5.1

  [28b8d3ca] + GR v0.39.1

  [442fdcdd] + Measures v0.3.0

  [e1d29d7a] + Missings v0.4.0

  [77ba4419] + NaNMath v0.3.2

  [ccf2f8ad] + PlotThemes v0.3.0

  [995b91a9] + PlotUtils v0.5.8

  [91a5bcdd] + Plots v0.24.0

  [3cdcf5f2] + RecipesBase v0.6.0

  [992d4aef] + Showoff v0.2.1

  [a2af1166] + SortingAlgorithms v0.3.1

  [90137ffa] + StaticArrays v0.10.3

  [2913bbd2] + StatsBase v0.29.0

  Building GR ───→ `~/.julia/packages/GR/KGODl/deps/build.log`

  Building Plots → `~/.julia/packages/Plots/47Tik/deps/build.log`

 

(v1.1) pkg> 

-Python vs Julia- 配列についてについての比較

Python言語とJulia言語の比較を行った際のメモです.
今回は,配列についての比較です.比較を行った環境はPythonはver 3.6.6,Juliaは ver 1.1.0です.比較はREPLで行い,プロンプトが" >>> "となっているものはPythonでの実施で," Julia> "となっているものはJuliaでの実施です.

まずは,1次元配列についてです.
定義の仕方は,PythonとJuliaで同じです.

>>> import numpy as np
>>> a = np.array([1, 2, 3, 4, 5])
>>> a
array([1, 2, 3, 4, 5])
 
julia> a = [1; 2; 3; 4; 5]
5-element Array{Int64,1}:
 1
 2
 3
 4
 5
JuliaでもPythonと同じように,", "を要素の区切りとして使用できますが,";"を区切りとすることも可能です.以下では,Pythonとの区別のために";"を使用します.
 
配列を表示するには,Python, Julia共に print() を使用します.
>>> print(a)
[1 2 3 4 5]
 
julia> print(a)
[1, 2, 3, 4, 5]
 
配列の型を確認するには,Pythonでは"type()"を,Juliaでは"typeof()"を使用します.表示は若干異なります.
>>> type(a)
<class 'numpy.ndarray'>
 
julia> typeof(a)
Array{Int64,1}
 
形状の確認を行うには,Pythonでは "Array Name.shape",Juliaでは"Array Name::Any"を用います.
>>> a.shape
(5,)
 
julia> a::Any
5-element Array{Int64,1}:
 1
 2
 3
 4
 5
 
要素の指定は,Python,Julia共に"Array Name[Element Number]"を用います.要素の番号は,Pythonでは0から,Juliaでは1からと異なります.
>>> a[1] # elements start at 0. In Julia start at 1
2
 
julia> a[2] # elements start at 1. In Python start at 0
2
 
また,ある要素の値を変更する方法はPython,Julia共に"Array Name[Element Number] = "を用います.ここでも,要素の番号は,Pythonでは0から,Juliaでは1からと異なることに注意が必要です.
>>> a[0] = 10
>>> a
 
julia> a[1] = 10
10
 
上記の例で,配列内の要素が入れ替えられていることを確認してみると,以下のようになります.
>>> a
array([10,  2,  3,  4,  5])
 
julia> a
5-element Array{Int64,1}:
 10
  2
  3
  4
  5






 

 

-Julia- データ型

Julia のデータ型についてのメモです.

まずは,整数型についてです.

julia> 12345
12345
 
julia> typeof(12345)
Int64
 
julia> 1
1
 
julia> typeof(1)
Int64
整数型にはInt8, 16, 32, 64, 128型がありますが,特に指定しなければInt64型として扱われるようです.
 
浮動小数点型について
julia> 1.2345
1.2345
 
julia> typeof(1.2345)
Float64
浮動小数点型にはFloat8, 16, 32, 64, 128型がありますが,特に指定しなければFloat64型として扱われるようです.
 
複素数型について
julia> 1 + 2im
1 + 2im
 
julia> typeof(1 + 2im)
Complex{Int64}
 
julia> 1 + 2.0im
1.0 + 2.0im
 
julia> typeof(1 + 2.0im)
Complex{Float64}
複素数型は,X + Yim という形で記載します.Xが実数部,Yが虚数部になります.
複素数型にはComplex32, 64方がありますが,特に指定しなければ,入力の方に合わせて型が決められるようです.上記の" 1 + 2im "では,Complex{Int64}型(実数部,虚数部ともにInt64型)," 1 + 2.0im "ではComplex(Float64)型となっています.
 
有理数型について
julia> 1 // 2
1//2
 
julia> typeof(1 // 2)
Rational{Int64}
有理数型では,上記のように各値はInt64型で扱われています.
 
真偽値について
julia> true
true
 
julia> typeof(true)
Bool
真偽値はtrueとfalseの2通りです.
 
文字(Char)について
julia> 'a'
'a': ASCII/Unicode U+0061 (category Ll: Letter, lowercase)
文字は,シングルクォーテーション ' で括ります.上記の例のように,'a'とした場合は,Char型として扱われていることがわかります.
 
Strings型について
julia> "Hello World"
 
julia> typeof("Hello World")
String
 
julia> 'Hello World'
ERROR: syntax: invalid character literal
Strings型はダブルクォーテーション " で括ります.上記の例のように,シングルクォーテーションで括っても,Strings型とは見なされません.
 
Strings型の連結を行うには演算子 * を用います.
julia> "abc" * "def"
"abcdef"
 
julia> "abc" + "def"
ERROR: MethodError: no method matching +(::String, ::String)
Closest candidates are:
  +(::Any, ::Any, ::Any, ::Any...) at operators.jl:502
Stacktrace:
 [1] top-level scope at none:0
上記の例のように,+ で連結はできません.
 
また,以下のように,Strings型の中で $( ) で括れば四則演算が可能です.当然,演算結果はStrings型となります.
julia> "1 + 2 = $(1 + 2)"
"1 + 2 = 3"
 
なお,上記の例のJupyter Notebookファイルは,GitHubJulia_Beginner_01というファイルで見ることができます.
 

-Python vs Julia- 数値と文字列についての比較

Python言語とJulia言語の比較を行った際のメモです.
今回は,数値と文字列についての比較です.比較を行った環境はPythonはver 3.6.6,Juliaは ver 1.1.0です.比較はREPLで行い,プロンプトが" >>> "となっているものはPythonでの実施で," Julia> "となっているものはJuliaでの実施です.

まずは,四則演算についてです.違いをまとめた一覧表は以下のようになります.

四則演算の違い
  Python Julia  
1. 加算 + + 同じ
2. 減算 - - 同じ
3. 乗算 - - 同じ
4. 除算 / / or \ 同じ
5. べき乗 ** ^ 異なる
6. 剰余 % % 同じ
7. 切り捨て除算 //   異なる
 

1. 加算の比較.
記法はPythonとJuliaで同じです.

>>> 3 + 5
8

 

julia> 3 + 5
8
 
2. 減算の比較.
記法はPythonとJuliaで同じです.
>>> 3 - 4
-1

 

julia> 3 - 4
-1


3. 乗算の比較.
記法はPythonとJuliaで同じです.

>>> 4 * 5
20

julia> 4 * 5
20


4. 除算の比較
記法はPythonとJuliaで同じです.

>>> 3 / 2
1.5

 

julia> 3 / 2
1.5


5. べき乗の比較
記法はPythonとJuliaで異なります.

>>> 2 ** 3
8

 

julia> 2 ^ 3
8


6. 剰余の比較
記法はPythonとJuliaで同じです.

>>> 5 % 2
1

 

julia> 5 % 2
1


7. 切り捨て除算
Pythonには切り捨て除算の機能がありますが,Juliaにはないようです(見つけられていないだけかもしれません).
記法はPythonとJuliaで異なります.

>>> 5 // 2
2
 
julia> 5 ÷ 2
2

他にも以下のようにすることもできます.

julia> div(5, 2)
2
 
julia> div(-5, 2)
-2
 

 

なお,上記の例のJupyter Notebookファイルは,Python_vs_Julia_Python_01Python_vs_Julia_Julia_01というファイルで見ることができます.

-Julia- Hello Worldから四則演算まで

前回の投稿でJuliaのインストールに成功したようなので,とりあえず,触ってみた結果のメモです.

REPL(Read-Eval-Print Loop)を立ち上げて,以下のように入力してみました.
まずは,お決まりの"Hello World"のプリントと,型の判定,文字列の連結です.

$ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |
 
julia> println("Hello World")
 
julia> hello_world = "Hello World"
 
julia> typeof(hello_world)
String
 
julia> println("Hello" * "World")
HelloWorld
 
julia> println("Hello" * " " * "World")
 
Juliaでは,文字列の連結の際にアスタリスク"*"を用います.Pythonでは"+"で連結を行なうのとは異なることに注意が必要です.
Julia language Manual - Strings

四則演算は以下のようになります.
加算(addition, sum)の例($a = 10 + 7$)です.
julia> a = 10 + 7 # Sum. It is not necessary to declare variables. 
17
 

減算(subtraction, difference)の例($b = 10 - 7$)です.
julia> b = 10 - 7 # Diff
3
 

乗算(multiplication, product)の例($c = 10 \times 7$)です.
julia> c = 10 * 7 # Product
70
 

除算(division, quotient)の例($d = 10 \div 7$)です.
julia> d = 10 / 7 # Quotient
1.4285714285714286
 

除算では,Julia特有の機能があります.
一般的な除算は,以下のように記載します.
julia> 4 / 5 # General description
0.8

Juliaでは除算記号をバックスラッシュ" \ "にすることで,逆の計算になります.
julia> d2 = 7 \ 10
1.4285714285714286
 
julia> d3 = 10 \ 7
0.7
 
julia> d == d2

true
 

べき乗(power)の例($e = 10 ^ 7$)です.
julia> e = 10 ^ 7 # Power
10000000
 

剰余(remainder, modulus)の例($f = 10 \bmod 7$)です.
julia> f = 10 % 7 # Modulus
3
 

整数除算の例です.
julia> g = div(5, 2) # The result of div () is an integer
2
 
julia> g2 = 5 ÷ 2
2
 
julia> g == g2
true

比較演算子は以下のようになります.
julia> 1 < 2
true
 
julia> 1 > 2
false
 
julia> 1 == 1
true
 
julia> 1 == 2
false
 
julia> 1 != 2
true
 
julia> 1 < 2 < 3 # Comparison operators can be used together as a <b <c
true
 
julia> 1 > 2 < 3
false
 
代入演算子は以下のようになります.
julia> j = 10
10
 
julia> j += 10
20
 
julia> j -= 1
19
 
julia> j *= 2
38
 
julia> j /= 2
19.0

Juliaでは,数式の記載に関して,他の言語とは異なる記載が可能になっています.
これまでの例(a, b, ...g, j)でもそうだったように,変数の宣言は特に必要ありません.
julia> x = 5 
5
 
数字と変数の乗算に関しては,以下のように書くことが可能です.
julia> 4x # 4 * x
20
 
一般的な記載でも同じ結果が得られます.
julia> 4 * x
20
この"*"を省略できるのは便利なように思いますが,慣れの問題からプログラムが見にくくなるのと,以下の変数同士の乗算の際と混乱してしまうように思うので,現段階では " 4 * x "という一般的な記載にしようかなと思っています.
 
変数同士の乗算では,"*"を省略することができません.まずは新たな変数を設定して"*"を省略した変数同士の乗算を行ってみると...
julia> y = 4
4

julia> xy # For multiplication between variables, use *.
ERROR: UndefVarError: xy not defined
エラーが発生します....

一般的な記載にすれば,計算できます.
julia> x * y # For multiplication between variables, use *.
20
 

なお,REPLではあまり使用しないと思われますが,複数行のコメントを書くときは,以下のように文頭を"#="で括り,文末を"=#"で閉じます.

julia> #=
       When writing multiple lines of comments, 
       enclose the beginning of the sentence with "# =" 
       and close the end of the sentence with "= #".
       =#

REPLから抜ける時には,"control + d" で抜けることができます(マニュアルには"quit()"と入力しても良いと書いてありましたが,macOSではエラーが出てしまいます.または,"exit()"と入力するとREPLが終了します).
Julia language Manual - Numbers
Julia language Manual - Mathematics

なお,上記の例のJupyter Notebookファイルは,GitHubJulia_Beginner_01というファイルで見ることができます.

-Julia- Julia のインストール

Julia v1.0.1をインストールした際のメモです(以下のメモはJupyter Notebookがインストールされている前提です).

macOSの場合
Homebrew経由でインストールしました.
まずは,Homebrewのアップデートを行なった後に,

$ brew cask install julia
 
とコマンドを打ち込むと,ダウンロードとインストールが始まります.
 
==> Satisfying dependencies
######################################################################## 100.0%
==> Verifying SHA-256 checksum for Cask 'julia'.
==> Installing Cask julia
==> Moving App 'Julia-1.1.app' to '/Applications/Julia-1.1.app'.
==> Linking Binary 'julia' to '/usr/local/bin/julia'.
🍺  julia was successfully installed!
 
上記のように表示されればインストール成功です.試しにインタプリタを起動すると以下のような表示になります.
 
$ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |
 
julia> 
 
続いて,Jupiter Notebookで使えるようにしておきます.
まずは,パスを通します.
 
$ echo "alias julia='/path/to/install/folder/bin/julia'" >> ~/.zshrc
$ exec $SHELL
 
さらに,IJuliaのパッケージをインストールするためにJuliaのインタプリタを起動します.
 
bash-3.2$ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia>
 


この状態で,"]"をタイプします(タイプするのは ] のみ).すると,プロンプトが
(v1.1) pkg>
に切り替わるので,以下のように入力してIJuliaをインストールします.

(v1.1) pkg> add IJulia
   Cloning default registries into `~/.julia`
   Cloning registry from "https://github.com/JuliaRegistries/General.git"
     Added registry `General` to `~/.julia/registries/General`
 Resolving package versions...
 Installed VersionParsing ── v1.1.3
 Installed SoftGlobalScope ─ v1.0.10
 Installed IJulia ────────── v1.18.1
 Installed Conda ─────────── v1.2.0
 Installed ZMQ ───────────── v1.0.0
 Installed MbedTLS ───────── v0.6.8
 Installed BinaryProvider ── v0.5.3
 Installed JSON ──────────── v0.20.0
 Installed Compat ────────── v2.1.0
  Updating `~/.julia/environments/v1.1/Project.toml`
  [7073ff75] + IJulia v1.18.1
  Updating `~/.julia/environments/v1.1/Manifest.toml`
  [b99e7846] + BinaryProvider v0.5.3
  [34da2185] + Compat v2.1.0
  [8f4d0f93] + Conda v1.2.0
  [7073ff75] + IJulia v1.18.1
  [682c06a0] + JSON v0.20.0
  [739be429] + MbedTLS v0.6.8
  [b85f4697] + SoftGlobalScope v1.0.10
  [81def892] + VersionParsing v1.1.3
  [c2297ded] + ZMQ v1.0.0
  [2a0f44e3] + Base64 
  [ade2ca70] + Dates 
  [8bb1440f] + DelimitedFiles 
  [8ba89e20] + Distributed 
  [7b1f6079] + FileWatching 
  [b77e0a4c] + InteractiveUtils 
  [76f85450] + LibGit2 
  [8f399da3] + Libdl 
  [37e2e46d] + LinearAlgebra 
  [56ddb016] + Logging 
  [d6f4376e] + Markdown 
  [a63ad114] + Mmap 
  [44cfe95a] + Pkg 
  [de0858da] + Printf 
  [3fa0cd96] + REPL 
  [9a3f8284] + Random 
  [ea8e919c] + SHA 
  [9e88b42a] + Serialization 
  [1a1011a3] + SharedArrays 
  [6462fe0b] + Sockets 
  [2f01184e] + SparseArrays 
  [10745b16] + Statistics 
  [8dfed614] + Test 
  [cf7118a7] + UUIDs 
  [4ec0a83e] + Unicode 
  Building Conda ──→ `~/.julia/packages/Conda/CpuvI/deps/build.log`
  Building ZMQ ────→ `~/.julia/packages/ZMQ/ABGOx/deps/build.log`
  Building MbedTLS → `~/.julia/packages/MbedTLS/X4xar/deps/build.log`
  Building IJulia ─→ `~/.julia/packages/IJulia/gI2uA/deps/build.log`
 
 
julia> 
 
確認のために,kernelspecを確認する以下のコマンドを入力してみます.

$ jupyter kernelspec list

Available kernels:

  julia-1.1    /Users/hide/Library/Jupyter/kernels/julia-1.1

  python3      /usr/local/share/jupyter/kernels/python3

 

この状態で,Jupiter Notebookを起動して,"New"のプルダウンから"Julia 1.0.1"が存在していれば,インストールは成功です.
試しに,Hello World"でもやってみると以下のようになります.

f:id:HidehikoMURAO:20190413195734p:plain

Windows10の場合
Jupiter Notebookがインストールされている条件でのインストールメモです.

Juliaの公式ページよりWindows用のインストーラー(julia-1.0.1-win64.exe
)をダウンロードします.
インストーラーを実行した後は,基本的にそのままの設定(Next, Yesなど)で進めてインストールを完了させます.

f:id:HidehikoMURAO:20190415092747p:plain


その後,REPLを立ち上げます.

f:id:HidehikoMURAO:20190415092823p:plain


この状態で,以下のように入力します.
julia> ENV["JUPYTER"] = ""
これは,JuliaでインストールしたAnaconda内のJupyterを使う設定です.

その後,macOSの場合と同様に," ] "を入力するとプロンプトが
(v1.1) pkg>
に変わります.

f:id:HidehikoMURAO:20190415092859p:plain

に変わります.この状態で以下のように入力します.
pkg> add IJulia
pkg> build IJulia

処理が終わった時点で,バックスペースを入力すると pkg> モードから抜け出して,プロンプトが通常のもの(julia>)に変わります.その上で,以下を入力します.
julia> using IJulia
julia> notebook(detached=true)
install Jupyter via Conda, y/n? [y]: y

処理が終わったら,Jupyter Notebookを開き,NewのプルダウンにJulia 1.1.0があれば,Jupyter NotebookからもJuliaを使用することが可能になります.

f:id:HidehikoMURAO:20190415093033p:plain

 

wekaのインストール

Wekaはニュージーランドのワイカト大学で開発された機械学習データマイニングフリーソフトウェアです(関連書籍Data Mining, Fourth Edition: Practical Machine Learning Tools and Techniques ).

以下は,Wekaをインストールした際のメモです.WekaはJavaでプログラミングされているので,OSを問わずに稼働します.

 
先ずは,ワイカト大学のWekaのホームページにアクセスします.

f:id:HidehikoMURAO:20190405084600p:plain

"Download"をクリックすると,以下のようなページに移動するので,インストールするOSを選択します.

f:id:HidehikoMURAO:20190405084638p:plain

 
[macOSの場合]
JavaVMも一緒にインストールしたいので,"weka-3-8-3-oracle-vvm.dmg"を選択してダウンロードします.
"weka-3-8-3-oracle-vvm.dmg"をダブルクリックすると以下のようなフォルダが開くので,右側の鳥のアイコンをクリックします.

f:id:HidehikoMURAO:20190405084721p:plain

すると,以下のようなウィンドウが開けばインストール成功です.

f:id:HidehikoMURAO:20190405084740p:plain

 
[Windowsの場合]
JavaVMも一緒にインストールしたいので,""(windows64bit環境,JavaVM付き)を選択してダウンロードします.
ダウンロードしたファイル"weka-3-8-3jre-x64.exe"をクリックすると,ユーザーアカウント制御のポップアップ画面が開くので,"はい"をクリックします.
 
セットアップウィザード画面が表示されるので,"Next"ボタンをクリックします.

f:id:HidehikoMURAO:20190405084807p:plain

 
ライセンス画面が表示されるので"I Agree"ボタンをクリックします.

f:id:HidehikoMURAO:20190405084831p:plain

 
全てが選択されている状態で"Next"をクリックします.

f:id:HidehikoMURAO:20190405084855p:plain

 
インストールフォルダを設定する画面になります.そのまま"Next"をクリックします.

f:id:HidehikoMURAO:20190405084914p:plain

 
"Install"ボタンをクリックすると,インストールが始まります.

f:id:HidehikoMURAO:20190405084931p:plain

 
JavaVMのインストール画面が開くので,"インストール"をクリックします.なお,JavaVMのインストールが終了すると,Wekaのインストールに戻ります.

f:id:HidehikoMURAO:20190405084949p:plain

 

f:id:HidehikoMURAO:20190405085009p:plain

 

f:id:HidehikoMURAO:20190405085033p:plain

 
Wekaのインストール完了画面が表示されるので,"Next"をクリックします.

f:id:HidehikoMURAO:20190405085054p:plain

 
インストールウィザード完了画面が表示されます."Start Weka"にチェックが入っているので,"Finish"をクリックするとWekaが起動します.

f:id:HidehikoMURAO:20190405085113p:plain

 

WekaのBayes net editorの使用例

 

f:id:HidehikoMURAO:20190408174346p:plain

f:id:HidehikoMURAO:20190408174405p:plain

f:id:HidehikoMURAO:20190408174422p:plain