Take Your Time

仕事や研究、コンピューターとの付き合い方

DataFramesを触ってみる

基本

  • インストール(なんで複数形なのか。変なところで独自色だすなよ・・・)
Pkg.add(DataFrames)
  • データフレームを作る
using DataFrames

DataFrame(name = ["太郎", "次郎"], income = [400, 280]) # こっちは単数形なんかーい!(天竺鼠瀬下風に)

    name    income
1  太郎  400
2  次郎  280
  • カラムを取り出す
df[:name]

2-element Array{String,1}:
 "太郎"
 "次郎"
  • df[[1]]とするとデータフレムとして取り出せる。

  • 行を取りだす









発見

vcatSQLunion allみたいなことができる。

ルール

delma.hatenablog.com

  • プロジェクトはGitHub管理
  • ファイルに日付とやったタスクを書いておけばだいたい検索可能
  • データのとり方などは詳細にnotebook/rmdに残しておく
  • ノートブックやrmdはこまめに切り分ける。重くなるとどうしようもない
  • ある程度再利用するものはソースコードにする
  • git管理することを考えるとノートブックで何も考えずにデータ表示するのはやめる。この辺RStudioのほうが優秀

クラウドでjupyterを触る時のTips

前提

バックグラウンドで動かす

  • ssh接続が結構切れるので基本バックグラウンドで動かすべし
nohup jupyter notebook > /dev/null 2>&1 & 

Elastic IPにすべし

  • EC2はデフォルトだとインスタンスを停止するたびにIPが変わる。いちいち数字を書き直すのも辛いのでElastic IPを取得すべし。

codeanywhereを使う

  • jupyterで事足りればいいがやはりIDEが使いたい時もある。そういう時はcodeanywhereというブラウザからインスタンスを触れるサービスを使うといい。
  • 設定は簡単で、ホスト名はec2-xx-xxx-xxx-xx.ap-northeast-1.compute.amazonaws.comsshに使うprivate keyを登録すれば接続できる。
  • 使ったことはないがcloud9というのもある。

Atomを使う

  • 詳細は忘れたがAtomでサーバーのコードを触れる。ただcodeanywhereのほうが結構楽

分析パイプラインを再構築する 振り返り

delma.hatenablog.com

課題点 * サーバーでやったのか、ローカルでやったのかわからなくなる。 どこかにまとめるべき? * RでやったのかPythonだったのかよくわからなくなる。 どっちかにまとめるべき?

→日誌を書いたほうが良い気がしてきた。

  • 1タスク1ノートブックにしないと見失う 続けてやりたくなってもノートを変える