pandasのまとめ

pandasを使ってデータをこねくり回す時に、とりあえずこれだけは覚えておけばなんとかなるってやつを忘れないようにメモしておきますmm

読み込み編

csvの読み込み

pd.read_csv(file_name)
パラム 意味
header ヘッダの有無(デフォルトはtrue)
names ヘッダに名前をつける
delimiter 区切り文字(tsvの場合は \t)
delim_whitespace 空白文字をデリミターにする場合に使う
skiprows 先頭から何行スキップするか
skipfooter 末尾から何行スキップするか

続きを読む

コンテナ型仮想化

コンテナ型仮想化とは何か

Dockerでよく聞くコンテナ型仮想化を「よくわかんないけど、従来の仮想化よりもオーバーヘッドが少ないんでしょ」程度にしか理解していなかったので、まとめてみた。

コンテナとは、1つのOS環境に分離された空間を作成しその分離された空間ごとに異なるOS環境を実現することができ、コンテナによってマルチOS環境を実現することができるため、複数のOSを必要とする場合でも1つのOS環境に集約できるというメリットがある。

続きを読む

Route53でドメインを取得して、ACM(AWS Certificate Manager)でSSLを無料で発行して、ELB(Elastic Load Balancing)に設定したいなんてことをしようとしたら、ACMでSSL証明書発行時のドメイン認証メールを受け取る環境をつくらなくてなならず、そのためにメールサーバを構築するのもEC2を使うのもめんどくさかったので、SES(Simple Email Service)を使ってメールを受信する環境を用意しました。
今後のために備忘録程度にまとめておきます。

続きを読む

jupyter notebookを使うまでの準備

jupyter notebookは、ノートブック形式で作成したプログラムを実行し、実行結果を記録しながら、データの分析作業を進めるためのツールです。ブラウザ上で気軽に試せる感じいいっすね!

Jupyterを動かすには、様々なパッケージが必要なので、あらかじめそれらをパッケージしてくれているAnacondaというpythonのディストリビューションを使ってやります。
続きを読む

2016年11月1日付でW3CがHTML5.1を勧告しました。
ブラウザ側の対応はまだまだですが、こんなことがHTMLでできるようになったということだけでも知っておこうと思い、ざっくりとまとめました。

ちなみに、HTML5からの変更差分はこちらにまとめられています

続きを読む

NoSQLの代表格となっている、MongoDBですがよく使われているけど、NoSQLという特徴以外に、その他は、あまりよくわかっていなかったのとMongoDBは、よく高機能と言われますが、具体的に何が高機能なのか、よくわかっていなかったので、調べてみました。

MongoDBの特徴

RDB以外のデータベース管理システムを指すNoSQLと呼ばれれるデータベースに分類されるものです。
RDBは列構造でデータを保存しますが、MongoDBは、JSONを拡張したBSON形式でデータを保存します。
配列や階層構造などのリッチなデータ構造に対応しています。 BSONはJSONでは表現できないバイナリデータを扱うBinData型や、Date型などのデータ型にも対応しており、MongoDBはこのような構造的なデータが扱えるドキュメント指向データベースに分類されています。

続きを読む

クラウドサービスでも使われている

クラウドサービスといえば、Amazon Web ServiceやGoogle Cloud Platformなどがあり、最近はどちらも様々なサービスが豊富にあり、より複雑になってきています。様々なサービスを組み合わせることでできたアーキテクチャなどもあります。

クラウドの基盤となる仮想化技術のお話を軽くおさらいしていきます。

続きを読む

HTTPの歴史

HTTPの初めのバージョンは、Webサーバとともに誕生したHTTP/0.9です。
HTTP/0.9では、ほんとうに必要な機能しか持っておらず、リクエスト内容もメソッドと取得先のパスのみで、そのメソッドもGETしかありませんでした。
また、レスポンスのヘッダの規定もなくシンプルにドキュメントを返すのみのメッセージ構造でした。

そしてHTTP/1.1までのバージョンアップによって現在のようなWebシステムにおいて必要不可欠な機能が実装されるまでにいたっています。
また、セキュリティ面の要請からSSL2.0がNetscape Navigator1.1に実装されたのが1994年です。SSLは、TCP/IPプロトコルスタックのトランスポート層の上にセッション層を追加する形で登場し、HTTPをはじめとするアプリケーション層すべてのプロトコルで恩恵を受けることができました。

続きを読む