統計や機械学習に関するプログラミングではPython
やR
が用いられることが多いですが、近年Julia
も注目を集めています。そこで当シリーズではJulia
の基本構文からライブラリの用い方などについて取りまとめます。当記事ではJulia
の集合型オブジェクトについて取りまとめを行いました。
・Julia
入門
https://www.hello-statisticians.com/julia
・Julia 1.8 Documentation
https://docs.julialang.org/en/v1/
集合型オブジェクト
辞書型オブジェクトの概要
集合は『キー(key)』のみを保持する辞書です。重複する要素を格納することができないので、ユニークな要素の取り扱いの際によく用いられます。
辞書の初期化・値の追加
集合の初期化は下記のようにSet
を用いることで行うことができます。
s = Set([1, 2])
println(s)
println(typeof(s))
・実行結果
Set([2, 1])
Set{Int64}
集合への値の追加はpush!
関数を用いて下記のように行うことが可能です。
s = Set([1, 2])
push!(s, 3)
println(s)
push!(s, 3)
println(s)
・実行結果
Set([2, 3, 1])
Set([2, 3, 1])
push!(s, 3)
の実行は二度行いましたが、集合に格納される値はユニークであることから二度目の操作によって集合の要素が変化しないことを確認しておくと良いです。
和集合・積集合
集合の和集合はunion
、積集合はintersect
を用いて下記のように得ることができます。
s1 = Set([1, 2, 3, 4, 5])
s2 = Set([1, 3, 5, 7, 9])
println(s1)
println(s2)
println("===")
println(union(s1, s2))
println(intersect(s1, s2))
・実行結果
Set([5, 4, 2, 3, 1])
Set([5, 7, 9, 3, 1])
===
Set([5, 4, 7, 2, 9, 3, 1])
Set([5, 3, 1])
参考
・Julia 1.8 Documentation
https://docs.julialang.org/en/v1/