大量データハンドリングのこつ 大学院共通コース 特別講義 2011/07/07 基礎第一講堂 統計遺伝学分野 山田 亮 • 実験系のデータ量はどんどん増えている • 実験系が、解析系とデータを共有したり、解 析系に頼らずに自前でハンドリングする必要 も増えている • 実験系で分量の多いデータを管理することが 必要なのは言うまでもないけれど、その管理 のこつは何だろうか? 複雑な書式 ユーザー フレンドリーな構成 文字ばっかり、大きさも一緒、色もない テキストファイル • 拡張子 • “ hoge.txt” • “ hoge.xls”, “hoge.xlsx” ヒトも計算機も相互に歩み寄ろう テキストファイル データ AB漢字12 あなたが使う 計算機が使う AB漢字12 41 42 b4 c1 bb fa 31 32 0a テキストファイルは、ヒトと計算機の中間 決して計算機寄りではない テキストファイルの中身 • 「目に見える文字」は「値」 – 記入するもの • 「目に見えない何か」「読まない何か」は「構 造」 – 書式 「値」 • 「値」には「持ち主」がいる – 「だれの」 – 「何に関する」 • 「持ち主」 – 「持ち主」は • 行にする • 列にする • 行と列で足りなかったら 「構造」~書式 • テキストファイルが持てる「構造」はシンプル に • 「目に見えない何か」「読まない何か」は「構 造」 テキストファイルで構造を作る • 2種類の「目に見えない何か」「読まない何 か」は「構造」だけで作る • 2種類を使う • 2種類以外は使わない 「目に見えない何か」「読まない何か」 • 2種類以外は使わない、ためには、「目に見 えない何か」「読まない何か」を「すべて知る」 必要がある • 「読まない何か」 – “,” “.” “:” “;” “#” “$” “%” “&” “?” “\” … – これは「見えるから『簡単』」 「目に見えない何か」 • 「空白文字」 あ い う え え あ い う 2種類を使って、構造を作る • 「改行文字」が1種類 – 改行文字をつなげると、「繰り返して改行する」 – 「改行文字」1個分が大切 • あと1種類だけ – 「空白文字」をつなげると、『個数』に該当する構 造が生じる – 「空白文字」1個分に意味を持たせる – 「タブ」 – 「カンマ」 タブ区切りのテキストファイル カンマ区切りのテキストファイル • エクセルファイルを – タブ区切りのテキストファイルで保存する – カンマ区切りのテキストファイルで保存する • テキストを – タブ区切りのテキストファイルから開く – カンマ区切りのテキストファイルから開く ファイルの内容を 『2種類の空白文字』だけで 書式にできたか? • 「値」は行列の番地で指定できる • 『どの行列番地に何の「値」が入っているか』、 をファイルを開かずに言えるかどうかでチェッ ク • ファイルを開いて、「値」を見たら、その「行列 番地」を確認したら、その値の意味を説明で きるかどうかでチェック • ヒトとしてのあなたにとって便利なもの、うれし いものは、たいてい、「あなたの人間性に訴え ている」 • →計算機は嫌い 「絵画」に特徴的なこと • • • • • • 「枠」表示 「色表示」 「線」による意味づけ 「空白の量(長さ・面積)」による見栄えの調整 「矢印」 「吹き出しコメント」:もってのほか データ処理の特徴から考える • 人間が得意で計算機が苦手なこと – 人間は、「絵画」情報を「総合的」に判断するのが 得意 – 計算機は「絵画」情報を「総合的」に判断するの が苦手 • 人間が苦手で計算機が得意なこと – 人間は、「繰り返し」「やり直し」が嫌い(やるのを 拒否する) – 計算機は、「繰り返し」「やり直し」が好き • 人間が苦手で計算機が得意なこと、その2 – 人間は粒粒に分解された情報より、それらをある ルールで統合してあるときに、それを活用する(意味 をつける)ことが得意 – 人間は粒粒な情報を統合する処理自体は苦手 • 特に、いろいろなパターンで統合する処理は嫌い(繰り返し 作業だから) – 計算機は統合してある情報を粒粒に戻すのが苦手 – 計算機は、粒粒な情報をルールで統合する作業は得 意 • 特に、統合ルールが複数あるときは、その作業が得意 あふれ出る情報の 「持ち主」を確認する • ファイルの中の値の「持ち主」なら – ファイルの中に納められるはず • 「ファイル」が「持ち主」なら – ファイルの中に納めず、 – ファイルの外に納めればよい 「ファイル」『が』「持ち主」である情報 • その情報は「ファイル」の属性 • 「ファイルの属性」はファイルの外側に • 「ファイルの外側」 – ファイル名 – ファイルの置き場所 データとは「値」と「構造」を持つもの • データ~「値」+「構造」を計算機に納めるとき に使えるものは何か – ファイルの中身 – ファイルとディレクトリ構成 – ファイルとディレクトリ構成にも「値」と「構造」があ る • 「値」:ファイル名、ディレクトリ名 • 「構造」:階層構造・木構造 ディレクトリ構成 ファイルとディレクトリ • • • • • 「値」 「構造」 複数のファイル 複数のディレクトリ 階層化したディレクトリ • これらが一塊で「整理されたデータ」 • 一括して、「固めよう」 – 圧縮は、「小さくする」ことでもあるけれど – 「まとめあげる」ことでもある 修正したくなった時 • ディレクトリ構成、ファイルがたくさん • 一部のファイルの一部が書き換えたい • 「一部の修正」して「更新」するより • 「全部をコピー」して、「一部」を修正して、時系列管 理・版管理する方がよい • なぜなら: – 計算機は、繰り返しが好き・一からやり直すことが好き、 だから 今日、扱わなかった データの取り扱い方法 データベース • 「データベースは」たくさんの情報を「しまって」 おいて「出す」のが得意 • すべてのデータを扱いたいときは、「気になっ たもの」を「出す」だけではだめだから、「大量 データ」のすべてを管理したいときは、ファイ ル管理から始めるのがよい ヒトは頭がよく 計算機は着実だ • 「ヒト」が『データをこう処理すれば』、と思うと き – それは、たいてい、猛烈に込み入ったことをやろ うとしている 着実で ひたむきで 頑固な 計算機 • 計算機は、「繰り返し」「やり直し」が好き • 計算機は統合してある情報を粒粒に戻すの が苦手 • 計算機は、粒粒な情報をルールで統合する 作業は得意 処理をフローに、そしてシンプルに フローの途中処理をするために工夫 するくらいなら 初めから処理をし直す ヒトは、「やり直し」が大嫌い 計算機は「やり方」の変更が大嫌い データの準備 分担する 外注する 共同研究する いずれにしろ、縦に切 れていることが大事 処理の間の取り決めを 先に決める 中身は分担者に任す こんなにたくさんのデータ を お金を使って 手間暇かけて 算出したし、 「整理」もしたんだから、 あとは「計算機がちょちょ いとできる」と思えるように、 交通整理をすればいいの ね。 • 個別に相談? – 統計遺伝学分野 – 内線 9470 – [email protected]
© Copyright 2024 ExpyDoc