Python 3.5にpsycopg2をインストール(Mac編)
prunus1350.hatenablog.com
先日、Windowsにpsycopg2をインストールしましたが、今回はMac(El Capitan)にインストールします。*1
Psycopgの公式ドキュメントIntroduction — Psycopg 2.6.2.dev0 documentationに
によると pip が使えるとのことなので、
$ pip install psycopg2
とやってみると
Error: pg_config executable not found.
pg_config がないと言われました。
PostgreSQLをインストールすれば良いようです。
手元のマシンにはパッケージマネージャが入っていない状態なので、
まずはこちらHomebrew — OS X 用パッケージマネージャーを参考に
Homebrewをインストールします。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
次にPostgreSQLをインストールします。
$ brew install postgresql
再度 pip install を試みます。
$ pip install psycopg2 Collecting psycopg2 Using cached psycopg2-2.6.1.tar.gz Building wheels for collected packages: psycopg2 Running setup.py bdist_wheel for psycopg2 Stored in directory: /Users/prunus1350/Library/Caches/pip/wheels/e2/9a/5e/7b620848bbc7cfb9084aafea077be11618c2b5067bd532f329 Successfully built psycopg2 Installing collected packages: psycopg2 Successfully installed psycopg2-2.6.1
インストールは成功しました。
しかし、Pythonコンソールにてインポーとしようとすると、
>>> import psycopg2 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Users/prunus1350/anaconda/lib/python3.5/site-packages/psycopg2/__init__.py", line 50, in <module> from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID ImportError: dlopen(/Users/prunus1350/anaconda/lib/python3.5/site-packages/psycopg2/_psycopg.cpython-35m-darwin.so, 2): Library not loaded: libssl.1.0.0.dylib Referenced from: /Users/prunus1350/anaconda/lib/python3.5/site-packages/psycopg2/_psycopg.cpython-35m-darwin.so Reason: image not found
となります。
こちら
stackoverflow.com
を見ると、libssl と libcrypto のバージョンが低いのが原因のようです。
El Capitanでは /usr/lib 直下に書き込みができないので /usr/local/lib にリンクを作成します。
$ ln -s /usr/local/Cellar/openssl/1.0.2e/lib/libssl.1.0.0.dylib /usr/local/lib $ ln -s /usr/local/Cellar/openssl/1.0.2e/lib/libcrypto.1.0.0.dylib /usr/local/lib
確認
>>> import psycopg2 >>>
ちゃんとインポートできました。
Python 3.5にpsycopg2をインストール(Windows編)
去年、Spyderが起動しなくなったのでAnacondaを再インストールしました。
その際にPythonのバージョンを3.4から3.5にしました。
PythonからPostgreSQLを扱うパッケージであるpsycopg2のインストール方法が変わってしまったのでメモ。
Python 3.4の場合
Psycopgの公式ドキュメントIntroduction — Psycopg 2.6.2.dev0 documentationに
書いてあるように、
Stickpeople Project: win-psycopg, Version: 2.6.1, Date: 06/15/2015
から psycopg2-2.6.1.win-amd64-py3.4-pg9.4.4-release.exe をダウンロードし実行します。
Python 3.5の場合
上記方法は3.4までしかサポートされていませんでした。
ということで参考にしたのがこちら
django - How to intall Psycopg2 for Python 3.5 - Stack Overflow
やり方としては、
Unofficial Windows Binaries for Python Extension Packages
から psycopg2-2.6.1-cp35-none-win_amd64.whl をダウンロードし、コマンドプロンプトで
pip install C:\Users\Prunus1350\Downloads\psycopg2-2.6.1-cp35-none-win_amd64.whl
と実行します。
CentOSにleafletパッケージをインストールする
昨年12月に行われたJapan.Rにて知った地図描画用のleafletパッケージですが、WindowsやMacだと
> install.packages("leaflet")
ですんなりインストールできたのですが、CentOS6.5で同様にやってみると
警告メッセージ: 1: install.packages("leaflet") で: パッケージ ‘png’ のインストールは、ゼロでない終了値をもちました 2: install.packages("leaflet") で: パッケージ ‘leaflet’ のインストールは、ゼロでない終了値をもちました
となりうまくインストールできませんでした。
メッセージを見ると、pngパッケージのインストールでこけています。
いろいろググってみると、libpng-develが必要なようです。
$ sudo yum install libpng-devel
とやってから再度パッケージインストールを行うと、今度はインストールが無事完了しました。
動作確認
RStudio Serverにて、Leaflet for R - Introductionのbasic exampleを実行してみます。
library(leaflet) m <- leaflet() %>% addTiles() %>% # Add default OpenStreetMap map tiles addMarkers(lng=174.768, lat=-36.852, popup="The birthplace of R") m # Print the map
ちゃんと動きました。
ggplot2のバージョンを上げたら棒グラフの書き方が変わっていた
はじめに
- 作者: 山本義郎,藤野友和,久保田貴文
- 出版社/メーカー: オーム社
- 発売日: 2015/11/21
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
また、dplyrやggplot2など比較的新しいけど最近のRには必須とも言うべきパッケージが使われており、サンプルコードを動かしながらRでどんなことができるのかを知るには良い本なんじゃないかな、と思っています。
ggplot2パッケージのバージョンを上げたらサンプルコードの一部が動かなくなった
ggplot2パッケージは2015/12/15にver2.0.0がリリースされましたが、それを使ってサンプルコードを実行すると、棒グラフ描画の部分がエラーになるようになってしまいました。
具体的にはchapter15.Rの38行目以降の
# 日別の集計 tw.daily <- tw.df %>% mutate(twdate=as.Date(created)) %>% group_by(twdate) %>% summarize(cnt = n()) tw.daily qplot(twdate, cnt, data=tw.daily, geom="bar", stat="identity")
を実行すると
> qplot(twdate, cnt, data=tw.daily, geom="bar", stat="identity") Error: stat_count() must not be used with a y aesthetic. In addition: Warning message: `stat` is deprecated
と表示されます。
どうやら集計した値をy軸に指定して棒グラフを描くのは止めて、qplot関数の集計機能を使えということのようです。
なので上記コードは
# 日別の集計 qplot(as.Date(created), data=tw.df, geom="bar", xlab="twdate", ylab="cnt")
とすれば動くようになります。
同様に、52行目以降の時間別集計の部分は
# 時間別の集計 tw.hourly <- tw.df %>% mutate(twhour=as.POSIXct(format(created, "%Y-%m-%d %H:00:00"))) %>% group_by(twhour) %>% summarize(cnt = n()) tw.hourly qplot(twhour, cnt, data=tw.hourly, geom="bar", stat="identity")
を、
# 時間別の集計 library(lubridate) qplot(floor_date(created, "hour"), data=tw.df, geom="bar", xlab="twhour", ylab="cnt")
とすれば大丈夫です。
Dell XPS420をSSD化などした
数年前までメインマシンとして使っていたDell XPS420。
kakaku.com
最近では動きがもっさりしてストレスフルなので、OSクリーンインストール*1のついでに
- SSD化
- HDD増設
- メモリ増設
をやってみた。
今回換えたもの
SSD
kakaku.com
16,800円で購入。
HDD
kakaku.com
9,480円で購入。
メモリ
これを4枚で8Gに。
kakaku.com
1,690円×4で購入。
SATAケーブル
HDD増設用に。*2
アイネックス ラッチ付 シリアルATAケーブル 片下L型コネクタ 70cm SAT-3107LBL
- 出版社/メーカー: AINEX
- 発売日: 2007/06/06
- メディア: Personal Computers
- この商品を含むブログを見る
以前に換えたもの
グラフィックボード
3年前ちょっと前にGeForce 9800GTが壊れた際にこれに換えた。
SAPPHIRE Radeon ビデオカード HD7750 1G GDDR5 PCI-E HDMI/DVI-I/DP SAHD775-1GD5R0
- 出版社/メーカー: SAPPHIRE
- 発売日: 2012/02/15
- メディア: Personal Computers
- クリック: 19回
- この商品を含むブログを見る
換装結果
まだまだつかえるドン!
SASでドット絵を描く
はじめに
先日、BRA★BRA FINAL FANTASY / Brass de Bravo ツアー | SQUARE ENIX
というコンサートを聴きに行きました。
FFのキャラが楽器を吹いているドット絵が可愛らしかったので、SASで描いてみました。
以前、手書き文字を描画するときにはヒートマップを使用しましたが、今回は散布図を使用しています。
コード
実行結果
コード
実行結果