Skip to content

Instantly share code, notes, and snippets.

View syou6162's full-sized avatar

Yasuhisa Yoshida syou6162

View GitHub Profile
@syou6162
syou6162 / file0.txt
Created February 8, 2012 07:45
Jarkの使い方メモ ref: http://qiita.com/items/2108
/Users/yasuhisa/Dropbox/lda_clj% jark server start
java -Xms256m -Xmx512m -cp /Users/yasuhisa/.cljr/lib/jark-0.4-SNAPSHOT-clojure-1.3.0-standalone.jar clojure.tools.jark.server 9000 &
Started JVM on port 9000
@syou6162
syou6162 / Jark.md
Created February 8, 2012 02:23
Jarkの使い方メモ

Jarkの使い方メモ

Clojureにはleiningenという便利なツールがありますが

  • 小さなスクリプト的な使い方をしたい
  • テストを小まめに走らせたい

などのときにlein自体の起動(というかjvmの起動)の遅さが気になってきます。どうにかしたいと思って調べていったところ、jarkというのが便利そうだったので、使い方を調べてみることにしました。

というか本家のほうでtest/script.clj --foo "a" --bar "b"という感じで動かせると書いてあるんですが、これだといくら頑張っても動かなかった。。。それとjark ns load XXX.cljもダメでした。なんでだろう。。。

@syou6162
syou6162 / gist:1567578
Created January 5, 2012 22:05
incanterの描画を1秒置きに更新していくコード
(use '(incanter core stats charts))
(def min-val 1)
(def max-val 10)
(def x (view (function-plot sin min-val max-val)))
(for [i (range 100)]
(let [chart-before (function-plot sin min-val max-val)
chart-after (function-plot log min-val max-val)]
(.setContentPane x (org.jfree.chart.ChartPanel. (rand-nth [chart-before chart-after])))
@syou6162
syou6162 / update_incanter_window.clj
Created January 5, 2012 21:26
incanterでwindowを閉じずにplotの内容を変更していく方法
(use '(incanter core stats charts))
(def min-val 1)
(def max-val 10)
(def chart-before (function-plot sin min-val max-val))
(def x (view chart-before))
(def chart-after (function-plot log min-val max-val))
@syou6162
syou6162 / gist:10566
Created September 13, 2008 06:46
Tsukuba.Rの資料用
library(scatterplot3d)
steepest_descent <- function(epsilon,tau,x_bar1=-10,x_bar2=-20,beta=1,n=2000){
#関数内関数の定義
f <- function(x){x1 <- x[1];x2 <- x[2];return(100*(x1-x2)^2+(x1-1)^2)}
#数式微分
trig.exp <- expression(100*(x1-x2)^2+(x1-1)^2)
D.sc1 <- D(trig.exp, "x1")
D.sc2 <- D(trig.exp, "x2")
@syou6162
syou6162 / gist:10544
Created September 13, 2008 01:36
集合を扱う関数などなど
#直積を書き出す関数
write.direct.product <- function(x,y){
e <- expand.grid(x,y)
m <- mapply(function(x,y){paste("(",x,",",y,")",sep="")},e[,1],e[,2])
return(paste("{",paste(m,collapse=","),"}",sep=""))
}
write.direct.product(1:3,4:6)
#R \times RからRへの写像の例
apply(expand.grid(1:3,4:6),1,function(x){x[1]*x[2]})