2012年12月17日月曜日

R言語の関数_変数1つ版

環境

R(2.15.2)

 

勉強した奴のlog

目的関数
データの値を結合 c(a,b,c)
度数分布(表)の作成 table(a)
ヒストグラムを描く hist(a)
合計を求める sum(a)
データの個数を求める length(a)
平均を求める mean(a)
中央値を求める median(a)
平方根を求める sqrt(a)
不偏分散を求める var(a)
標準偏差を求める sd(a)
絶対値を求める abs(a)
最大値を求める max(a)
最小値を求める min(a)

 

以下 仕組み

不偏分散(var関数)

 

標本分散

 

標準偏差(sd関数)

2012年12月16日日曜日

MacでR言語をインストール&分散を求めるまで

環境

Mac OSX 10.7.5

Homebrew 0.9.3

 

GUIの方はyoutubeでわかりやすい動画がありました。

Rのインストール for Mac - smallwolf5's

 

以下はCUI(ターミナル)

自分が入れた時のバージョンは2.15.2(2012-10-26)

インストール

$ brew install gfortran
$ brew install R 

 

起動確認

$ R
R version 2.15.2 (2012-10-26) -- "Trick or Treat"
Copyright (C) 2012 The R Foundation for Statistical Computing
ISBN 3-900051-07-0 
Platform: x86_64-apple-darwin11.4.2 (64-bit) 
以下略 

 

「>」の先に何かしらの命令(10 + 1等)を与えれば大抵答えてくれます。

for文やif文など制御文はある。

 

サンプルコード

実行方法

$ R
...(略)
> source("ファイル名") 

 

2012年12月13日木曜日

MacにJubatus0.3.4を色々できるようにビルド&インストールするまで

環境

Mac OSX 10.7.5

Homebrew 0.9.3

 

まぁbrewとかで入れてもいいんだろうけど、色々触り、いじりたいのでビルドからやる。

Brewで入れるなら下記のブログ様がわかりやすい。

JubatusをOS X Lionにインストールできた - Ayum Osanai's blog

今回Makefileやwscriptにある-O2オプションを-O0オプションにしていますが、個人的なことなので....

前準備

公式サイトを参考に

http://jubat.us/ja/build.html

必要なパッケージを揃える(今回はとりあえず全て突っ込む)

必須ではないパッケージがどういう風に使われるかどうかは下記のブログ様を見てください。

非公式Jubatusインストールガイド - kuenishi's blog

 

Homebrewで入れたもの

  • gcc(4.7.2)
  • libevent(2.0.20)
  • google-glog(0.3.2)
  • mecab(0.994)
  • msgpack(0.5.7)
  • re2(ver?)
  • zookeeper(3.4.5)
brew install 〇〇

でok

---補足1
gccをインストールしたとき、シンボリックリンクに注意

---補足2
brewではgoogle-glogではなく、glogとしてインストールする

---補足3
re2のインストールだけは--HEADオプションとmercurialが必要(brewでok)

 

Homebrewで入れなかったもの

  • ux-trie(0.1.0)
  • pficommon(1.3.1)
  • zookeeperのCクライアント(3.4.5)

 

 

  • ux-trie(0.1.0)のインストール

https://code.google.com/p/ux-trie/downloads/list

解凍とインストール

$ wget http://ux-trie.googlecode.com/files/ux-0.1.8.tar.bz2
$ tar -jxf ux-0.1.8.tar.bz2 && cd ux-0.1.8

ux-0.1.8/wscriptをいじる

#変更前
#ctx.env.CXXFLAGS += ['-O2', '-W', '-Wall', '-g']
#変更後
ctx.env.CXXFLAGS += ['-O2', '-W', '-Wall', '-g' ,'-I/usr/include/malloc'] 

-I/usr/include/mallocの追加をした

$ ./waf configure
$ ./waf buildgit clone https://github.com/pfi/pficommon.git

 

  • pficommon(1.3.1)のインストール

https://github.com/pfi/pficommon

$ git clone https://github.com/pfi/pficommon.git
$ cd pficommon
$ ./waf configure
$ ./waf build
$ ./waf install 

 

  • zookeeperのCクライアント(3.4.5)のインストール 

http://ftp.riken.jp/net/apache/zookeeper/

$ wget http://ftp.riken.jp/net/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz
$ tar xvzf zookeeper-3.4.5.tar.gz
$ cd zookeeper-3.4.5/src/c
$ ./configure 
$ make
$ make install 

 

 

Jubatusのビルド&インストール

https://github.com/jubatus/jubatus

 

$ git clone https://github.com/jubatus/jubatus.git
$ cd jubatus
$ ./waf configure --enable-mecab --enable-ux --enable-zookeeper
$ ./waf build
$ ./waf install  

 

Jubatusの動作確認

 

$ jubaclassifier

ちゃんと動くとこまで確認済み

 

分散環境も公式サイトを参考にしてやったが、まだまだ不安定。(まだ最後までできたのは1回のみ...orz)

落ち着いたらlogを残す予定。 

 

 

その他気になったこと

上記の状態で

$ ./waf --checkall

にて

json_converterやmecab_splitterとやらでコケてる様子。

installできて動くけど

 

 

 

 

 

 

 

MacにHomebrewでgcc最新版(4.7)をいれるまで

環境

Mac OSX 10.7.5

 

brewでInstall

$ brew install https://raw.github.com/Homebrew/homebrew-dupes/master/gcc.rb --enable-all-languages --use-llvm

長い。 

 

シンボリックリンクの変更

brewでインストールしただけでは、gccのシンボリックリンクは変わらない。

確認方法

$ ls -l /usr/bin |grep "gcc\|g++"

 

変更

$ sudo ln -sf /usr/local/bin/gcc-4.7 /usr/bin/gcc
$ sudo ln -sf /usr/local/bin/g++-4.7 /usr/bin/g++

 

gcc -v等で、確認可能。

 

2012年12月10日月曜日

TideSDKにてHelloWorldをするまで

入れたもの

TideSDK 1.3.1
TideSDK Developer(1.4.2)

自分の環境

Mac OS X 10.7.5

http://www.tidesdk.org/より
(1)TideSDK 1.3.1-beta-osx-x86-84.zip
(2)TideSDK-Developer-1.4.2-osx-x86-64.dmg
この2つのダウンロード
スクリーンショット 2012 12 10 3 23 01



手順1:TideSDK 1.3.1-beta-osx-x86-84をrename

TideSDK 1.3.1-beta-osx-x86-84.zipを解凍後、terminalにて
公式サイトのDocに以下のようにしろとのこと
~/Library/ApplicationSupport/TideSDK
つまり、
mv TideSDK1.3.1-beta-osx-x86-84 ~/Library/Application\ Support/TideSDK
という風にrename。
※自分の場合は、先に手順2をやったせいか、~/Library/Applications Support/TideSDKができていた。なので一度消して、mvの方を先にやったらうまくいった。

手順2:TideSDK Developer.appをアプリケーションフォルダに突っ込む

スクリーンショット 2012 12 10 3 36 14

手順3:TideSDK-HelloWorld-masterのダウンロード

https://github.com/TideSDK/TideSDK-HelloWorld
からgitでcloneするなり、zipでダウンロードするなりして解凍まで。

手順4:TideSDK Developer.appの起動

当然最初は何もない
スクリーンショット 2012 12 10 3 41 26

手順5:TideSDK-HelloWorld-masterのインポート

スクリーンショット 2012 12 10 3 47 12
スクリーンショット 2012 12 10 3 53 00

以下のような感じになる。
スクリーンショット 2012 12 10 3 56 45

手順5:アプリの起動確認

test & packageタブを選択
スクリーンショット 2012 12 10 4 00 31

左下にある Launch Appボタンをクリック
スクリーンショット 2012 12 10 4 01 32

Nice "Hello World"!!
スクリーンショット 2012 12 10 4 02 27