Julia 動画を進める

データフレームについて

data[ data[:SepalWidth'].==3.2, : ]

とやると、SepalWidth が 3.2 のものだけが取れる。

JuliaDB https://github.com/JuliaDB

というライブラリでDBも扱えるらしい。

普段使ってる、Postgres用もあるけどメンテはとまってる様子。

SQLite でファイル管理したり、NoSQLでデータ管理とかも便利そうだ。

今後の方針を決めていく

田中TOMで今後進めていく話をした、2020年までには、Kaggle Competision Master の称号を得られるように頑張りたい。

今後は、一週間毎に雑談含めた動画を投稿していく予定。どうなることやら。

Juliaの動画を進める

plotのライブラリは Winston と Gadfly が有名。Gadflyのほうが github star が多かった。

whos() で現在のModuleや変数の一覧を出すことができる

CSV HDF5 JSON のデータを基本的に扱う

Juliaの動画を進める

type Iris
  sepal_length::Float64
  sepal_width::Float64
end

immutable Iris2
  sepal_length::Float64
  sepal_width::Float64
end

iris1 = Iris(5.1, 3.5)
iris2 = Iris2(5,1, 3.5)

のように型を作れるし、 immutable で作れば、値を書き換えることもできなくなる。

Generalにも定義できる

type IrisG{T <: Real}
  sepal_length::T
  sepal_width::T
end

Macroも書けるらしいがここはもう少し学ぶ必要がありそう。

Juliaの動画を進める

色々なfunctionの書き方。

sum(x, y, z) = x + y + z

function sumvar(args...)
  sum = 0
  for n in args
    sum += n
  end
  return sum
end

(x, y, z) -> x + y + z

mapを使わないで配列を定義できる

arr2 = [x^2 for x in arr]

Setという集合の型が存在する

s = Set(Int64[11, 14, 13, 7, 14, 11])

Set([7,14,13,11])

 

 

Juliaの動画を進める

動画学習を進める。

Juliaの数字の型は 8bit~128bit まで選べて、マイナス値を含める Int と 含めない UInt が存在しているのと、BigIntがある。

Float は 16bit~64bit

有理数(分数) だったり、複素数も表現できる。

Range は一般的に 0:10 のような書き方と stepを指定して 0:10:100 のように書ける。

area = (r = 3; π*r^2)

x = begin
      a = 2
      b = 3
      a + b
    end

 

のように代入文が書ける。

Udemyでjuliaを学ぶ

UdemyでJulia言語の使い方を学んでいく。

Juliaを選択したのは、仕事でRubyを使っていて、似たパラダイムのPythonでやっていくより、新しいパラダイムの言語でやりたかったのと、そろそろJuliaも1.0が出てきそうな気がするので、それに向けて学んでおく。

最初のチュートリアル部分を進めていった。

Juliaの開発環境を整える。

JuliaBoxというサービスを知った。無料で、Jupyterの環境がウェブ上で使えるみたい。結構便利そうだ。