RCaBoChaの64bit版が公開されたので試してみた
前回、CaBoChaのインストールまで完了して、いざRCaBoChaを入れようと思ったら、64bit版がない!という悲しい状態でしたが、開発者のishidaさんにお願いしたところ、2日ほどで対応してくれました。ありがとうございます。
さて、公開されたのは、最新版のRのものなので、まず、Rのバージョンアップ。
環境
$ uname -aLinux localhost.localdomain 2.6.29.4-167.fc11.x86_64 #1 SMP Wed May 27 17:27:08 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux $ rpm -qa | grep rpm rpm-libs-4.7.1-3.fc11.x86_64 rpm-build-4.7.1-3.fc11.x86_64 rpm-python-4.7.1-3.fc11.x86_64 deltarpm-3.4-18.fc11.x86_64 rpm-devel-4.7.1-3.fc11.x86_64 rpm-4.7.1-3.fc11.x86_64
最新版のrpmファイルの作成
- Rの最新版のソースとsrc.rpmファイルを取ってくる
$ wget $ wget http://download.fedora.redhat.com/pub/fedora/linux/updates/11/SRPMS/R-2.10.0-2.fc11.src.rpm
- 展開
$ sudo rpm -i R-2.10.0-2.fc11.src.rpm
何故か/usr/src/redhatがなくて、~/rpmbuildってディレクトリが作成された。
$ sudo mkdir -p {BUILD,SRPMS,RPMS/{i386,i586,i686,noarch}}
- SOURCESに、最新版を配置
$ sudo cp R-2.10.1.tar.gz ~/rpmbuild/SOURCES
- SPECファイルの修正
ヘッダ部分のVersionを、2.10.1に変更する
Name: R Version: 2.10.0 Release: 2%{?dist}
↓
Name: R Version: 2.10.1 Release: 2%{?dist}
- rpmファイル作成
以下のパッケージが必要と言われたのでインストール。
$ sudo yum install texinfo-tex libjpeg-devel readline-devel blas lapack-devel libSM-devel libICE-devel libXt-devel libXmu-devel libtiff-devel gcc-objc pango-devel libicu-devel
$ sudo rpmbuild -ba --sign R.spec
- yumでインストール
$ cd ../RPMS/x86_64/ $ ls R-2.10.1-2.fc11.x86_64.rpm R-java-devel-2.10.1-2.fc11.x86_64.rpm R-core-2.10.1-2.fc11.x86_64.rpm libRmath-2.10.1-2.fc11.x86_64.rpm R-devel-2.10.1-2.fc11.x86_64.rpm libRmath-devel-2.10.1-2.fc11.x86_64.rpm R-java-2.10.1-2.fc11.x86_64.rpm $ sudo yum install `ls` ================================================================================ Package Arch Version Repository Size ================================================================================ インストールしています: R-java x86_64 2.10.1-2.fc11 /R-java-2.10.1-2.fc11.x86_64 0.0 R-java-devel x86_64 2.10.1-2.fc11 /R-java-devel-2.10.1-2.fc11.x86_64 0.0 更新: R x86_64 2.10.1-2.fc11 /R-2.10.1-2.fc11.x86_64 0.0 R-core x86_64 2.10.1-2.fc11 /R-core-2.10.1-2.fc11.x86_64 63 M R-devel x86_64 2.10.1-2.fc11 /R-devel-2.10.1-2.fc11.x86_64 323 k libRmath x86_64 2.10.1-2.fc11 /libRmath-2.10.1-2.fc11.x86_64 603 k libRmath-devel x86_64 2.10.1-2.fc11 /libRmath-devel-2.10.1-2.fc11.x86_64 543 k 依存性関連でのインストールをします: ecj x86_64 1:3.4.2-4.fc11 fedora 3.1 M gcc-java x86_64 4.4.1-2.fc11 updates 4.1 M java-1.5.0-gcj-devel x86_64 1.5.0.0-28.fc11 fedora 48 k libgcj-devel x86_64 4.4.1-2.fc11 updates 1.6 M libgcj-src x86_64 4.4.1-2.fc11 updates 12 M
RCaBoChaのインストール
- パッケージのダウンロード
- パッケージのインストール
> install.packages("~/package/R/RCaBoCha_0.23_R_x86_64-unknown-linux-gnu.tar.gz") > library(RCaBoCha) Error in dyn.load(file, DLLpath = DLLpath, ...) : 共有ライブラリ '/usr/lib64/R/library/RCaBoCha/libs/RCaBoCha.so' を読み込めません libcabocha.so.4: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません エラー: 'RCaBoCha' に対するパッケージもしくは名前空間のロードが失敗しました
ライブラリのパスが違うらしい。期待しているところにシンボリックリンクを貼る。
$ sudo ln -s /usr/local/lib/libcabocha.so.4 /usr/lib64/libcabocha.so.4 $ sudo ln -s /usr/local/lib/libcrfpp.so.0 /usr/lib64/libcrfpp.so.0
再度読み込み
> library(RCaBoCha)
- RCaBoCha関数 : CaBocha の単純な出力を返す.
> RCaBoCha("それは面白い本であった。") FROMAT_TREE = それは---D 面白い-D 本であった。 EOS Term1 Term2 POS D1 D2 1 それ それ 名詞 1 2 2 は は 助詞 1 2 3 面白い 面白い 形容詞 2 2 4 本 本 名詞 3 -1 5 で だ 助動詞 3 -1 6 あっ ある 助動詞 3 -1 7 た た 助動詞 3 -1 8 。 。 記号 3 -1
- RCaBoChaFreq関数 : 否定の係りを判定して頻度を測る
> RCaBoChaFreq("それは面白い本であった。しかしこの本に比べると面白くはない。") string 2 = "ない" setted: length = 0 Term Pos Freq 1 。 記号 2 2 ある 助動詞 1 3 この 連体詞 1 4 しかし 接続詞 1 5 それ 名詞 1 6 た 助動詞 1 7 だ 助動詞 1 8 と 助詞 1 9 に 助詞 1 10 は 助詞 1 11 は+ない 助詞+形容詞 1 12 本 名詞 2 13 比べる 動詞 1 14 面白い 形容詞 1 15 面白い+ない 形容詞+形容詞 1