スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書く事で広告が消せます。
【--/--/-- --:--】 | スポンサー広告 | page top↑
3桁区切りにコンマが入った数字
3桁区切りにコンマが入った数字をPythonにパースしてもらう方法です。
ついでにカンマを入れてもらう方法も。

import locale
locale.setlocale(locale.LC_NUMERIC,'ja_JP')

parsed_int = locale.atoi('123,456')
parsed_float = locale.atof('123,456.7')

locale.format('%d', 123456789, True)


LC_NUMERICで数字関連のlocaleだけを変更しています。
MacOSX上のPython2.6.5です。環境によっては、localeの設定が異なるかもしれません。

テーマ:プログラミング - ジャンル:コンピュータ

【2012/03/02 11:23】 | Python | トラックバック(0) | コメント(0) | page top↑
MacにOpenCVをインストール
MacOSX(10.6.8)にOpenCVをインストールしてPythonから利用しようとするも、すこし苦労したのでメモを。
追加で必要だったものはcmakeですが、これはパッケージが配布されているのでOK。

OpenCVのインストールは、このガイドに従えば良いのですが、Pythonとのバンドルがすんなりいきませんでした。
cmakeの出力をよくよく見てみると、いろんなところからPython関連ファイルをかき集めてくれてます。

-- Found PythonInterp: /opt/local/bin/python (found version "2.6.5")
-- Found PythonLibs: /usr/lib/libpython2.6.dylib
-- Use NumPy headers from: /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/numpy/core/include

手元のPythonが整理されていないというのが原因だという話もありますが、cmakeの引数でどう直したらよいのかわからなかったので、cmakeでできあがったCMakeCache.txtを直接編集してlibraryやincludeを同一のPythonバージョンになるように変更しました。

make installはしない方がディレクトリ構成が汚れないのでいいよ、というアドバイスには従った方がいいような気がしたので、最後に、
export PYTHONPATH=/Users/tsujishingo/OpenCV-2.3.1/release/lib:$PYTHONPATH
としておけば、import cv2などとできるようになり、サンプルが動くようになります。せっかくなので、ドロネー三角形分割をしながら、最後にボロノイ図を描いてくれるサンプルdelaunay.pyの結果を貼っておきます。

ボロノイ
【2012/02/29 16:44】 | Python | トラックバック(0) | コメント(0) | page top↑
Rで枠なし生存時間曲線
Rはかなりよくできた統合統計解析パッケージなので、生存時間解析もできます。もちろん、描画も楽勝です。生存時間解析の基礎やRでの解析方法は金先生のこのページから、Rと生存時間(1)(2)が分かり易くてとても有用です。普通にやると以下のようなコマンドで絵ができます。

> library(survival)
> library(MASS)
> data(gehan)
> sf<-survfit(Surv(time,cens)~treat, data=gehan)
> plot(ge.sf,lty=1:2)

枠あり
グラフを囲む枠と、X軸とY軸の0が微妙にずれていて、X軸が少し沈んでいるのが気になることがあるかもしれません。そういう時は次のように描くと枠なしでX軸とY軸の0がそろいます。

> plot(sf,lty=1:2,axes=F)
> axis(1,pos=0,at=pretty(1:40))
> axis(2,pos=0)

軸を描かずに、後から付け足します。そのとき、目盛りも指定できます。
枠なし
【2012/01/04 14:32】 | そのほか | トラックバック(0) | コメント(0) | page top↑
ENTHOUGHTが便利
最近のnumpy、scipyはバージョンが上がってきて、MacOSXでもソースから問題なくビルド出来るようになってきましたが、相変わらずmatplotlibのインストールでは、DiskImageになっているパッケージを使っても失敗するようなことがあり、がっかりしていたのですが、良いモノを見つけました。
ENTHOUGHT基本的には有償のパッケージですが、一部無料で利用できるモノがあります。
インストールして、/Library/Frameworks/Python.framework/Versionsを見ると、Enthought Python Distribution 7.1として新しいPythonが入ります。実体は2.7ですが、計算系をはじめ有用なライブラリが沢山バンドルされています。アプリケーションフォルダからIDEを起動できますが、コマンドラインからpythonと打っても、この新たな7.1が起動しますので、使用感はほとんど同じで、ipythonなど使えて便利です。
しかし、便利なモノがあるものです。これで儲かっているの心配ですが、つぶれないでほしいです。

テーマ:プログラミング - ジャンル:コンピュータ

【2011/11/27 22:32】 | Python | トラックバック(0) | コメント(0) | page top↑
mercurialとbitbucketを使ってみた
分散型のバージョン管理システムと言うと、Linuxのソースコード管理に使われているGitが有名です。また、広く使われているホスティングサービスとしては、GitHubがあります。ちょっとしたプログラムのバージョン管理やソースの公開には、これらのソフトウェアやサービスがとても便利だと思っておりましたが、Python使っているんだったら、やはりmercurialとbitbucketでしょー、ということで今回これらを利用してみることにしました。

mercurialは、Pythonで作られた分散型のバージョン管理システムです。中央に管理サーバーがなくても利用できることや動作が軽快なところが売りのようです。また、使いやすさも強調されていますが、たしかに少し使ってみた感じではかなり使いやすいです。まあGitよりmercurialのほうが愛があるという話もありますが。mercurialをインストールしたら、管理したいソースコードが入っているディレクトリへ移動して、

$ hg init

とします。
.hgなる管理用のディレクトリが作成されますので、次に履歴を記録したいファイルを追加して、commitします。

$ hg add scripts.py
$ hg commit

viが起動してコメントを入力すれば完了です。-mオプションでコメントをコマンドラインから指定することも可能です。ちなみに、MacOSXでは最初「ユーザー名がわからない」旨のエラーが出ました。その場合は、ホームディレクトリに.hgrcを作成し、このなかにユーザー名等を記述します。起動するエディタなどさまざまな設定がこのファイルで出来るようです。

bitbucketは、mercurialを使っている方々に便利なコードホスティングサービスです。githubとものすごくサービスが似ているので、乗り換えても、一瞬どっちのサイトにいるのかわからなくなるほど操作性に違いはありません。ひとつだけgithubにあってbitbucketに無いサービスとしてこんな感じのプロジェクト紹介用の静的なWebページの作成機能があるように思えたのですが、ちょっとした裏技を紹介してくれている人がいます。世の中すごい人が多いです。

参考文献としては、日本語唯一のmercurial解説書だと思われる以下の書籍が秀逸です。最初はstep by stepで使い方を解説してくれて、本の中盤からはちょっと高度な利用法がわかります。しばらく、mercurialでローカルのファイルの管理をしてみようと思います。


入門Mercurial Linux/Windows対応入門Mercurial Linux/Windows対応
(2009/01)
藤原 克則

商品詳細を見る

テーマ:プログラミング - ジャンル:コンピュータ

【2011/09/03 15:06】 | プログラミング全般 | トラックバック(0) | コメント(0) | page top↑
| ホーム | 次ページ