Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Julia 100 exercises #JuliaTokyo

9,327 views

Published on

Published in: Software, Technology, Art & Photos
  • Be the first to comment

Julia 100 exercises #JuliaTokyo

  1. 1. Julia 100本ノック #JuliaTokyo Michiaki ARIGA(@chezou) JuliaTokyo #1 @ BrainPad 2014/07/05
  2. 2. 自己紹介 Michiaki ARIGA (@chezou / github:chezou) Software Engineer at Cookpad Inc. Interest 自然言語処理 / レコメンデーション やってます kawasaki.rb / Machine Learning Casual Talks
  3. 3. 代表作 http://wp.me/pvR30-iT
  4. 4. お断り
  5. 5. お品書 私とJulia Julia 100本ノック Julia情報の調べ方
  6. 6. 私と
  7. 7. http://www.slideshare.net/chezou/ruby-28923469
  8. 8. http://wp.me/pvR30-r0
  9. 9. 知ってた
  10. 10. Gadfly使ったら D3.jsでグラフ書けるらしい
  11. 11. 調べてみた
  12. 12. http://www.slideshare.net/chezou/hajipata-julia
  13. 13. 訳してみた
  14. 14. http://wp.me/pvR30-sG
  15. 15. Julia100本ノック
  16. 16. Julia 100本ノック https://github.com/chezou/julia-100-exercises
  17. 17. Julia 100本ノック https://github.com/chezou/julia-100-exercises Julia version of 100 numpy exercises https://github.com/rougier/numpy-100 ! nbviewerで実行結果みれます http://nbviewer.ipython.org/github/chezou/julia-100- exercises/blob/master/julia-100-exercises.ipynb ! 小並感記事も書きました http://wp.me/pvR30-tN
  18. 18. +演算子の違い Z = np.zeros((5,5)) Z += np.arange(5) (zeros(Int64,5,5) .+ [0:4])' [y for x in 1:5, y in 0:4] 行列の要素の加算は`.+`を使う
  19. 19. Packageを必要とする例 Z = np.ones(10) I = np.random.randint(0,len(Z),20) Z += np.bincount(I, minlength=len(Z)) using StatsBase Z = ones(10) I = rand(0:length(Z), 20) Z += counts(I, 1:length(Z))
  20. 20. 欠損値有りのデータ読み込み 1,2,3,4,5 6,,,7,8 ,,9,10,11 using DataFrames readtable("missing.dat") Z = np.genfromtxt("missing.dat", delimiter=",") NAを扱えるのはDataArraysを使わないといけない
  21. 21. チェッカーボード Z = np.zeros((8,8),dtype=int) Z[1::2,::2] = 1 Z[::2,1::2] = 1 Z = zeros(Int64,8,8) Z[1:2:end, 2:2:end] = 1 Z[2:2:end, 1:2:end] = 1
  22. 22. [julia-user] から📩
  23. 23. チェッカーボード Z = np.zeros((8,8),dtype=int) Z[1::2,::2] = 1 Z[::2,1::2] = 1 print Z Z = zeros(Int64,8,8) Z[1:2:end, 2:2:end] = 1 Z[2:2:end, 1:2:end] = 1 Z [(i+j)%2 for i=1:8, j=1:8] || 0.0417 sec 2.83e-6 sec
  24. 24. Are they on Julia way?
  25. 25. Julia情報の調べ方
  26. 26. 調べるべき所 公式ドキュメント 関連パッケージ(using google) 特にStatsBase.jl, DataFrame.jlなど重要なもの githubのissue / Mailing List MATLAB / NumPyでどう書くか? John myles white
  27. 27. http://julia.readthedocs.org/en/latest/manual/
  28. 28. http://statsbasejl.readthedocs.org/en/latest/
  29. 29. http://www.mathworks.co.jp/jp/help/matlab/index.html
  30. 30. http://mathesaurus.sourceforge.net/matlab-numpy.html
  31. 31. http://stackoverflow.com/questions/21890893/reading-csv-in-julia-is-slow- compared-to-python/21910850#21910850
  32. 32. http://stackoverflow.com/questions/21890893/reading-csv-in-julia-is-slow- compared-to-python/21910850#21910850
  33. 33. NumPy, MATLABとの比較 Juliaはまだまだパッケージが少ない Pythonよりストイックな一面も 遅いとreject, 複数のやり方は好まない? 変化が早い ググラビリティ低い
  34. 34. Pythonよりストイック
  35. 35. 変化が早い
  36. 36. MATLAB Julia ググラビリティ低い
  37. 37. みなさん
  38. 38. ワンチャンあるで
  39. 39. Juliaのリスク
  40. 40. 現状確認
  41. 41. Julia Tシャツはヤバイ
  42. 42. Pull-Reqお待ちしてます! https://github.com/chezou/julia-100-exercises

×