Python

Psycopg2でサーバーに接続できない

Psycopg2を使っていて、multiprocessingでデータベースに接続してデータを入れる処理を書こうとしていたんだが、↓のエラーで躓いた。 could not connect to server: Connection refused Is the server running on host "localhost" and accepting TCP/IP con…

クラスの並列化

multiprocessingモジュールで関数を並列化する方法はネットにあるが、クラスを並列化するというのは少なかったので、やってみた。結論としては、処理速度上げるのしんどいしよくわからんエラー出るしで結局関数を並列化する事で落ち着いた。 何がしたいのか…

python-mecabで文字列をパースしてみる

環境はPython2.7, mecab0.98 def extract_keyword(string, word_class=['名詞']): tagger = MeCab.Tagger('mecabrc') nodes = tagger.parse(u'テスト文字列です') のように文字列をパースしようとすると、下記のエラーが出た。 Traceback (most recent call …

行列の和をとってみる

こんな感じの行列があって、すべてのキーワードの出現回数の合計を出したい。 paragraph_id keyword1 keyword2 keyword3 keyword4 0 5 3 1 4 1 2 4 4 4 2 3 2 5 3 計算したい要素のみのリストを作っておく matrix = [ [5,3,1,4], [2,3,3,3], [3,2,5,3] ] す…

多数の特定キーワードを含むか、を長々とifステートメントで書くの嫌だから短くしてみた

リストについてループ処理をしていて、特定キーワードを含んだものだったらcontinue.という処理を書いているのだが、 if KEYWORD in STRING:continue とすると、キーワードが多くなると↓のようにすごい面倒になる。 for row in LIST: (省略) if KEYWORD1 in …

文字列フォーマットで一文がとても長くなる場合

文字列フォーマットを利用していると、たまに一文がものすごく長くなる時がある。 特にDBと連携するようなとき。何とかしたいなーということで調べてみたので、備忘録として。 作りたい文字列↓ INSERT INTO table(datetime,key,value) VALUES(to_timestamp(d…

timestamp型データの保存

Python2.7でpgdbライブラリ使ってPostgres9.1.3に時刻データ(timestamp with time zone)保存するときにハマったので、その備忘録。 旧データベース定義 datetime kind num comment trend timestamp without time zone text int text int SQLはこんな感じ↓ CR…

tweepyのStreaming API

TwitterのStreamをPythonで取得するときのメモ。 使用ライブラリはtweepy1.9、Python2.7、Ubuntuで実装。 参考にしたURL→http://blog.unfindable.net/archives/4257 ココのコードは標準出力に出したものをリダイレクトでファイルに書きこむものだったので、…

selectした結果取得した件数

python3とsqlite3を使ってるのだが、 con = sqlite3.connect(db) sql = 'select * from DATABASE where hoge' datum = con.execute(sql) datumにいくらの件数が取得されているのかを調べたいのだが、dir(datum)で調べてよさそうだと思ったdatum.rowcount(い…

csvデータの加工

いつものように備忘録として。。。 csvファイルの読み込み python SCRIPTFILE csv_file elements という感じで使うことを前提。elementsは抽出したい要素を指定(複数可) csvファイルの書式は下の通り ID,SEX,AGE,Pref,... 1,0,33,25,... 2,1,24,10,... ... …