そこで、Linuxの改行コードに変換するcommandを紹介します。
dos2unix ファイル名でLinuxの改行コードに変換可能です。データは上書きされます。
dos2unix ファイル名でLinuxの改行コードに変換可能です。データは上書きされます。
sudo chmod +x liftOver(2)パスの通っているディレクトリ(e.g. /bin)に移動
sudo mv liftOver /bin〈必要となるファイルの準備〉
liftOver INPUT.bed hg18ToHg19.over.chain OUTPUT.bed ERROR.bedコマンドライン引数が4つある。
grep "chr6:125111" INPUT.txt | grep "1:0:0" > OUTPUT.txt(2)OR検索
grep "chr6:125111\|chr6:125112" INPUT.txt > OUTPUT.txt
sortBed -i /path/to/INPUT.bed > OUTPUT.bedBED, GFF, VCFの3種類のファイルに対応しており、これらのファイルをソートすることができます。
bed2wig.py -hでヘルプを見ることができます。
samtools sort accepted_hits.bam accepted_hits_sorted.bam samtools view -F 0x0004 accepted_hits_sorted.bam > accepted_hits_sorted.sam⇒「-F」オプションで0x0004を指定することでマッピングされなかったリードを排除しています。
bed2wig.py -i accepted_hits_sorted.sam --type sam -o accepted_hits_sorted.wig --verbose⇒「-i」オプションでインプットファイルを指定します。「-type」オプションでインプットファイルのファイル形式を指定します。「-o」オプションでアウトプットファイルを指定します。「--verbose」オプションで進捗状況を出力させます。
bzip2 -c accepted_hits_sorted.wig > DATA.wig.bz2⇒「-c」オプションを指定し、標準出力でファイルを出力。
#!/bin/sh for file in "$@" do #Illumina CASAVA Filter [Y]を除去 fastq_illumina_filter -N -o /path/to/"$file"_casava.fastq /path/to/"$file".fastq #Phred quality score 20未満が80%以上のリードを除去 #Phred quality score 20未満の末端を除去 #配列長が10bp未満のリードを除去 fastq_quality_filter -Q33 -q 20 -p 80 -i /path/to/"$file"_casava.fastq | fastq_quality_trimmer -Q33 -t 20 -l 10 -o /path/to/"$file"_filtered.fastq #Ribosomal RNA(rRNA)由来のリードの除去 bowtie -p 8 --un /path/to/"$file"_norrna.fastq /path/to/bowtie-X.XX.X/indexes/Ribosomal_RNA /path/to/"$file"_filtered.fastq > /dev/null #Reference genome / Transcriptomeへのマッピング tophat -p 8 -o /path/to/"$file"_out -G /path/to/Refseq_genes_May_14_2013.gtf /path/to/bowtie-X.XX.X/indexes/hg19 /path/to/"$file"_norrna.fastq done
cuffdiff -p 8 -o /path/to/cuffdiff_out /path/to/Refseq_genes_May_14_2013.gtf <CTRL_rep1.bam,CTRL_rep2.bam…> <KD_rep1.bam,KD_rep2.bam…>〈使用したソフトウェア〉
$ chmod +x /path/to/RNA-seq_pipeline.sh〈シェルスクリプトの内容について〉
# BLASTディレクトリの作成 $ mkdir BLAST # ダウンロードしたblastパッケージをBLASTディレクトリに移動 $ mv ./blast-2.2.9-ia32-linux.tar.gz ./BLAST⇒「BLASTディレクトリ」を作成した親ディレクトリ内に「blast-2.2.9-ia32-linux.tar.gz」ファイルがあることを想定しています。
# BLASTディレクトリに移動 $ cd ./BLAST # ファイルの解凍 $ tar zxvf ./blast-2.2.9-ia32-linux.tar.gz
# ./profileのあるディレクトリに移動(Ubuntuのケース) $ cd $ pwd /home/imamachi # viエディタを用いた「./profile」の編集 $ vi .profile export PATH="$PATH:/path/to/BLAST/bin"を追加⇒geditなどのテキストエディタを用いて、編集してもよい。その場合、「.profile」は隠しファイルなので、Ubuntuのケースではホームフォルダからメニューバーの「表示」→「隠しファイルを表示する」にチェックを付けることで「.profile」を表示させる。
$ blastclust -i /path/to/INPUT.fasta -o /path/to/OUTPUT.fasta \ -p F -L 0.4 -S 40 -i: 入力ファイルの指定(FASTA形式) -o: 出力ファイルの指定 -p: 塩基配列なら「F」、アミノ酸配列なら「P」 -L: アライメントする配列の長さのカバー率(0.0-1.0(0%-100%の意味)の数字を指定できる。例えば、40%なら「0.4」と記述する) -S:アライメントする配列の類似度(3以上の数字を指定した場合、identical residuesのパーセンテージを指定(3-100の範囲))⇒各パラメータの詳しい計算方法については、下記のサイトを参照。
#ファイルの解凍 $ bzip -d libgtextutils-0.6.1.tar.bz2 $ tar xvf libgtextutils-0.6.1.tar #ディレクトリの移動 $ cd ./libgtextutils-0.6.1 #コンパイル(インストール) $ ./configure $ make $ sudo make install
#ファイルの解凍 $ bzip -d libgtextutils-0.6.1 fastx_toolkit-0.0.13.2.tar.bz2 $ tar xvf libgtextutils-0.6.1 fastx_toolkit-0.0.13.2.tar #ディレクトリの移動 cd ./fastx_toolkit-0.0.13.2 #コンパイル $ ./configure $ make #パスを通す $sudo cp ./bin/* /bin⇒「*」は任意の文字列を表すメタ文字(ここでは、すべてのファイル名とマッチする)。
#圧縮 tar -cjvf dir.bz2.tar dirc: アーカイブファイルの作成
#解凍 tar jxvf dir.bz2.tar-j: bzip2を通して処理を行う
nohup tar -cjvf dir.bz2.tar dir
#!/usr/local/bin/perl
####################################
#Weeder2weblogo#####################
#var1.0_Perl
#update: 2012.4.8
####################################
use strict;
use warnings;
my $file = $ARGV[0];
my $number = $ARGV[1];
#main####################################################
open (IN,"<./$file\.wee") || die;
my $flg_gene=0;
my $flg=0;
my $filehandle = 1;
my $count = 1;
my %gene_ID;
while(my $line = <IN>){
#Gene_ID
if($line =~ /^Your sequences/){
$flg_gene = 1;
next;
}elsif($flg_gene == 1){
$flg_gene = 2;
next;
}elsif($flg_gene == 2 && $line eq "\n"){
$flg_gene = 0;
next;
}elsif($flg_gene == 2){
my @data = split(/\s+/,$line);
$gene_ID{$data[1]}=$data[3];
next;
}
#Sequence_data
if($line =~ /^Best occurrences/){
if($filehandle == 0){
close(OUT);
$count++;
}else{
$filehandle = 0;
}
open (OUT,">./$file\#$count\.fasta") || die;
$flg = 1;
next;
}elsif($flg == 1){
$flg = 2;
next;
}elsif($line eq "\n" && $flg == 2){
$flg = 0;
next;
}elsif($flg == 2){
if($line =~ /^\s+/){
$line =~ s/^\s+//;
}
my @data = split(/\s+/,$line);
if($data[2] =~ /^\[/){
$data[2] =~ s/\[//;
$data[2] =~ s/\]//;
}
print OUT "$gene_ID{$data[0]}\n";
print OUT "$data[2]\n";
next;
}
}
close(IN);
close(OUT);
print "...process successfully completed\n";
〈使用方法〉
$ perl Weeder2weblogo INPUT_file ⇒INPUT_fileの拡張子は「.wee」にしておくこと。 (Weederからの出力ファイル「.wee」を利用しているので、拡張子を変更しないように。)〈ダウンロード先〉
$ tar zxvf BEDTools.v2.17.0.tar.gz
$ cd bedtools-2.17.0/
$ make
#「.profile」ファイルを書き換える方法 $ vi ~/.profile ⇒最終行に、「export PATH="$PATH:/home/bowtie.XX.XX/…/任意のパス/bedtools-2.17.0"」を追加
$ bedtools --version bedtools v2.17.0 ⇒バージョンの確認。
print "Hello¥n"; print "Have a nice day¥n"; # 実行 hello¥nhava a nice day¥n
print "Hello\n"; print "Have a nice day\n"; # 実行 hello hava a nice day※注意※
$ sudo cp ./任意のプログラム名 /usr/local/bin [sudo] password for imamachi:⇒ここでパスワードを入力し、一時的に管理者権限を取得する。
#!/usr/local/bin/perl
####################################
#BioProspector2weblogo##############
#var1.0_Perl
#update: 2012.4.5
####################################
use strict;
use warnings;
my $file = $ARGV[0];
my $number = $ARGV[1];
#main####################################################
open (IN,"<./$file\.result") || die;
my $flg=0;
my $filehandle = 1;
my $count = 1;
while(my $line = <in>){
if($line eq "\n"){
next;
}
chomp $line;
if($line =~ /^Try/
|| $line =~ /^The highest/
|| $line =~ /^Width/
|| $line =~ /^Blk1/
|| $line =~ /^[1-6]/){
next;
}
if($line =~ /^Motif/){
if($filehandle == 0){
close(OUT);
$count++;
}else{
$filehandle = 0;
}
open (OUT,">./$file\#$count\.fasta") || die;
}else{
if($line =~ /^>/){
print OUT "$line\n";
$flg=1;
}elsif($flg == 1){
print OUT "$line\n";
$flg=0;
}
}
}
close(IN);
close(OUT);
print "...process successfully completed\n";
〈使用方法〉$ perl Bioprospector2weblogo INPUT_file⇒INPUT_fileの拡張子は「.result」にしておくこと。(もしくはスクリプトを適宜書き換え。)