Python

文字コードを判定する関数

def guess_encodings(s): encodings = ['ascii','utf-8','shift-jis','euc-jp'] for enc in encodings: try: unicode(word_col_1,enc) break except UnicodeDecodeError,e: enc= '' return encコードがわからなくなって困ったら、これでおk

リストの要素の順番を逆にする方法

結論から言うと、 [x for x in reversed(l)] でおk。http://inforno.net/articles/2007/05/13/python-reversed-list に載っていた。

重複した要素を持つリストを解決する方法

結果的に リストがlistという名前の時 list(set(list))とすれば、重複した要素はなくなる このサイトが参考になる http://www44.atwiki.jp/keisks/pages/83.htmlあと、こっちの方が少し詳しいかもしれない http://d.hatena.ne.jp/t-fridge/20080323/12062179…

Gensimでのコーパスの作り方

http://radimrehurek.com/gensim/tut1.htmlこのページを見るのは二回目だけど。 ようやくまともにコーパスの作り方がわかったので、書き記しておく。考え方としてはページでのコーパスの作り方をひとつの関数としてみなす。 すると、入力は >>> documents = …

gensim 文章をベクトル空間にする方法

http://radimrehurek.com/gensim/tut1.htmlを見れば大体は書いてある。このページで紹介されている方法は二種類あって、1つはテキストを一気にメモリに載せて変換する方法。2つめは順番にベクトル空間に変えていく方法。1つ目のやり方だと、 dictionary =…

イテレーターとジェネレーターの解釈

みんなのPython p.214からイテレーターの概念で引っかかってしまったので、(一応)理解するよう努力した。イテレーターは「順序がないデータ構造に、順番を与えてやって、順番に処理していく機能(手法)」と解釈した。具体的な使い方は、「順番がないデー…

Gensimの使い方 ~Modelの作り方編~

主に見るべきところ http://radimrehurek.com/gensim/tut2.htmlTf-idモデルとLSIモデルの構築の仕方が書いてある。ページを見る限りはモデルの構築方法は>> models.Tfidf(対象コーパス)でいいみたい。 ちなみにここでの対象コーパスはbag-of-wordで(素性No,…

思い立っても使えないgensim

ふと、思うことがあってGensimを使ってみようとチュートリアル通りにコマンドを入れてみたが、動かない。corpus = corpora.MmCorpus('/path/to/corpus.mm')というところで>>> corpus = corpora.MmCorpus('/path/to/corpus.mm') Traceback (most recent call …

すぐ忘れる脳のためのメモ_管理者権限なしの時にpython install

毎週のようにやっているはずなのに、すぐに忘れる。 毎回調べるのも面倒きわまりないので、書き残しておくことにした。python installの時はこのコマンド$ python setup.py install --prefix=~/以上

すぐ忘れる脳のためのメモ_対話型画面でのスクリプトのimport方法

http://dennoh-guerrilla.blogspot.jp/2012/01/python.htmlにまんま書いてあるが、対象ディレクトリで対話型画面を起動して>>> import スクリプト名を実行するだけでよかった。 変に.pyとか入れるんだっけとか?考えて余計な時間を食った。ちなみにやりたか…

PYTHONPATHの設定とか

サーバーでTheanoというライブラリを動かしたかったのだが、やっぱり普通にはインストールはうまくいかない(サーバーではrootユーザーではないので) そこで、prefixをつけてインストールを試みたが、うまくいかなかった。原因はPYTHONPATHが通っていないこ…

多次元リストの話

Pythonで多次元リストを作るときと言えば、 a = [[0 for i in range(3)] for i in range(3)] とリスト内包表記をすれば、 >>> a [[0, 0, 0], [0, 0, 0], [0, 0, 0]]参考 http://d.hatena.ne.jp/greennoah/20081202/1228233338 http://php6.jp/python/basics/…

文字コードを判別するには?

時々、いろんな文章を扱っていると文字コードの扱いに困る。 なので、どうしたらいいものか?と考えたら判定すればいいと思った。それで、調べてみたら見つかった。 http://speirs.blog17.fc2.com/blog-entry-4.htmlのように、片っ端から文字コードを試して…

リスト→文字列、文字列→リストの方法

文字列→リストならsplit()を使えばごく簡単にできるけど、その逆の方法は知らなかった。なので、調べてみると http://taichino.com/programming/968 で見つかった。文字列変数 = "".join(リスト)でおk。ちなみに""のところにはリスト間を何でつなぐか?が入…

Pythonで一気にループざまぁぁぁぁ!する方法

例えば、すごい深いネストが作られてしまったとしよう。こういうとき、BasicやJavaやCにはウルトラ便利なGo to文でネストからの脱出が簡単にできる。けど・・・PythonにはGo to文が存在しないのだ・・・そこで、Pythonで一気にネストから抜ける方法http://ju…