Presentation is loading. Please wait.

Presentation is loading. Please wait.

2016年度 植物バイオサイエンス情報処理演習 第6回 情報処理(4) データを加工する・2

Similar presentations


Presentation on theme: "2016年度 植物バイオサイエンス情報処理演習 第6回 情報処理(4) データを加工する・2"— Presentation transcript:

1 2016年度 植物バイオサイエンス情報処理演習 第6回 情報処理(4) データを加工する・2
2016年度 植物バイオサイエンス情報処理演習 第6回 情報処理(4) データを加工する・2 2016年5月20日 機能ゲノム科学  尾形 善之 Wikipedia

2 前回のフォロー 例えば、塩基配列を取り出したいとき 塩基は、「A」「T」「G」「C」の4種類
「( )」の意味 ひとつの文字列の纏まりを表す 囲まれた文字列を「$1」という変数に入れる 「|」:正規表現の中では、「または」を表す

3 実習の大きな流れ RNAクエリーデータ入手~加工する 遺伝子データベースデータを入手する BLAST解析(マッピング)する
遺伝子発現データを得る ストレスで特異的に発現する遺伝子を探す 特異的遺伝子の機能・特徴を調べる

4 今日の授業の目標 大容量ファイルを加工するための、Perlプログラムを完成させる。
FASTQ形式のテキストファイルを、BLASTプログラムで使えるFASTA形式に変換する。 Wikipedia

5 次世代シーケンサーのデータ NCBIのSRAデータベースから入手できる SRA形式のバイナリファイルを入手する
バイナリファイルはテキストエディタでは読めない SRA形式からFASTQ形式に変換する FASTQ形式はテキストエディタで読める ただし、BLASTプログラムでは使えない FASTQ形式からFASTA形式に変換する FASTA形式はBLASTプログラムで使える

6 FASTQ形式 配列データのテキストファイル 4行でひとつの配列の情報を構成している 1行目:「@」で始まる、配列IDなど 2行目:塩基配列
3行目:特に意味がない行 4行目:塩基配列のクオリティを表す

7 FASTA形式 配列データのテキストファイル 2行でひとつの配列の情報を構成している FASTQ形式の3、4行目は不要
1行目:「>」で始まる、配列IDなど 2行目:塩基配列 FASTQ形式と同じ FASTQ形式の3、4行目は不要

8 チェックポイント・I FASTQ形式とは? FASTA形式とは?

9 今回のPerlスクリプトの目的 FASTQファイルの処理 1行目:「@」を「>」に変えてファイルに出力 2行目:そのままファイルに出力
3行目:無視 4行目:無視 Wikipedia

10 今回のPerlスクリプトの詳細 行数をカウントする変数を作る 1行目 2行目 4で割れば、何行目の情報か分かる
各行でif構文を利用して、何行目かを分ける 1行目 2行目 そのまま出力する Wikipedia

11 Perlスクリプトの中身 前置き:拝啓、呪文(正しくはエラーチェック) 変数の宣言:変数を使えるようにする
ファイル入出力:読み込みと書き出し テキスト処理:正規表現やループを使う 後書き:敬具(正しくは終了処理) Wikipedia

12 前置きと後書き 前置き:拝啓、呪文 後書き:敬具 use strict; :レッドカード use warnings; :イエローカード
exit; Wikipedia

13 変数の宣言 「my」コマンドを使う 文字列の変数の場合 数字の変数の場合 「my $line=“”;」 「my $number=0;」
Wikipedia

14 ファイルの入出力・1 変数の宣言 「my $in=“in.txt”;」 入力ファイル名 「my $IN;」 入力ファイルハンドル
入力するファイルの内容を入れる箱 「my $out=“out.txt”;」 出力ファイル名 「my $OUT;」 出力ファイルハンドル 出力するファイルの内容を入れる箱 Wikipedia

15 ファイルの入出力・2 ファイルを開く・閉じる 入力ファイル用の箱(ファイルハンドル)を開く 出力ファイル用の箱(ファイルハンドル)を開く
「open $IN,”<“,$in; 」 出力ファイル用の箱(ファイルハンドル)を開く 「open $OUT,”>”,$out;」 ファイルを閉じる 「close $IN;」「close $OUT;」 Wikipedia

16 ファイルの入出力・3 ファイルの中身を1行ずつ読む 「while(<$IN>){」 「 }」
ここにいろいろなコマンドを入れる 「 }」 入力ファイルハンドル「$IN」から1行ずつ読む 読み込まれた文字列は「$_」に代入される Wikipedia

17 「if」構文・1 条件によって場合分けする 今回は行数で4つ(1~4行目)に分ける 行数を表す変数の宣言 「my $number=0;」
Wikipedia

18 「if」構文・2 「while」構文の中での処理 行数をひとつ増やす もし行数を4で割った余りが1だったら(1行目)
「$number++;」 もし行数を4で割った余りが1だったら(1行目) 「if($number%4==1){ }」 そうでなくて余りが2だったら(2行目) 「elsif($number%4==2){ }」 3、4行目は処理をしない Wikipedia

19 検索と置換 どちらも正規表現を使います 検索 置換 「$_=~ /^@/」 文字列の一部を取り出すなら、かっこで囲む
「$_=~ 置換 「$_=~ Wikipedia

20 出力ファイルに書きだす 「print $OUT “$_”;」 「$OUT」は出力ファイルのファイルハンドル
どのファイルに書き出すかを指定する 「$_」は入力ファイルから読み込んだ文字列 置換した場合は、置換後の文字列 Wikipedia

21 チェックポイント・II Perlスクリプトの前置きは? 変数の宣言に使うコマンドは?
「my $in=“in.txt”;」と「my $IN;」、それぞれ何を宣言している? 次の「if」構文の間違いを直しなさい。 「if{$number==1}( )」

22 期末レポート シロイヌナズナの次世代シーケンシングのデータを統計的に解析して考察します。
各回の実習では、そのレポートのためのスキルを学んでいきます。 Wikipedia

23 期末レポート用データ データの概要 植物種と組織:シロイヌナズナ、葉 実験内容:菌感染によるサリチル酸合成 解析内容
生物統計学の期末レポートで使ったデータです 解析内容 全遺伝子を対象としたRNA-Seq解析 菌感染で発現量が変化した遺伝子の探索 遺伝子の発現の特徴および機能解析 Wikipedia

24 今日の実習と課題 FASTQ形式をFASTA形式に変換するPerlスクリプトを作りなさい。 Perlプログラミングの感想を書いてください。
手順書に従ってください。 Perlプログラミングの感想を書いてください。 Wikipedia


Download ppt "2016年度 植物バイオサイエンス情報処理演習 第6回 情報処理(4) データを加工する・2"

Similar presentations


Ads by Google