TwitterのAnalyticsとかfacebookのインサイトからデータをエクスポートしてきて、分析しようとしている。「10年戦えるデータ分析入門」という本に影響されて、やってみることに。まずは、mySQLをローカルで動かしてためしてみることにしました。
入れたもの
- mySQL(homebrew経由で)
- Sequel Pro(http://www.sequelpro.com/)
- Cot Editor(https://itunes.apple.com/jp/app/coteditor/id1024640650)
mySQLサーバを起動する
ターミナルで
mysql.server start
mySQLサーバを停止する
mysql.server stop
twitterのデータをインポートする
まずはSequel Proでテーブルを作る。この時、エンコーディングと、テーブル照合順序とテーブル型を聞かれる。テーブル照合順序がよくわからなかったので、ここでは参考URLをみてutf8_binを選択。
Twitter Analyticsからエクスポートしてきたcsvファイルを見ながらポチポチ手で作成。型とか長さとかそれっぽく適当に。
次にcsvファイルをSequel Proにインポートする。インポートは「ファイル」からできる。ここで問題発生。csvファイルのなかの「時間」の項目が曲者。中身が「2015-09-29 08:00 +0000」みたいになっていて、DATATIME型ではエラーが出る。
データを直す。Cod Editorでcsvファイルを開いて「検索」から「 +0000」を「」に置換する。
もう一度csvファイルをインポートする。このとき、オプションでIGNOREをチェックしておく。このcsvファイルにはいろんな項目が用意されている。本来はint型のデータが入るべき項目に「-」とか入ってる場合がある。例えば、Twitterのプロモーション機能を使っている場合には「プロモーションのインプレッション」という項目には数字が入るが、その機能を使ってなければ「-」となっている。こういうのは今は気にしなくていいので、無視。
「内容」をクリックしてみると、ちゃんとインポートできていることが分かる。
文字化けして見えるところもあるけれど、これはSequel Proの不具合のようで、データは正しく入っている。ちなみに、IGNOREをチェックしてインポートすると、「−」のところには「0」が入っている。
参考にしたもの
- mySQLのデータ型:https://dev.mysql.com/doc/refman/5.6/ja/data-types.html
- MySQLの照合順序:http://qiita.com/nautilus/items/159c27d7d62c78ee9ce7
- 10年戦えるデータ分析入門:http://www.amazon.co.jp/dp/B010CQD4Y0