問題タブ [bioinformatics]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 効率的な経験的CDF計算/保存
いくつかの確率変数の分布を事前計算しようとしています。特に、これらの確率変数は、ゲノム内の位置で評価された関数の結果であるため、それぞれに 10^8 または 10^9 のオーダーの値があります。関数は非常にスムーズなので、2/10/100 ごとに評価するだけで精度が大幅に低下するとは思いませんか? ベースかそこらですが、それでも多数のサンプルがあります。私の計画は、各関数の分位表 (おそらくパーセンタイル) を事前に計算し、メイン プログラムの実行時にこれらを参照して、実行ごとにこれらの分布統計を計算する必要がないようにすることです。
しかし、これを簡単に行う方法がよくわかりません: 10^9 float の配列を保存、並べ替え、削減することは実際には実行可能ではありませんが、オブジェクトに関する情報を失わない別の方法は考えられません。分布。全体をメモリに保存する必要のないサンプル分布の分位数を測定する方法はありますか?
regex - 参照、ハッシュテーブル、サブを使用して制限酵素を模倣するPerlプログラム
私はPerlのイントロクラスの学生です。課題への取り組み方についての提案を探しています。私の教授はフォーラムを奨励しています。割り当ては次のとおりです。
コマンドラインから酵素ファイルとDNAファイルの2つのファイルを取得するPerlプログラムを作成します。制限酵素を含むファイルを読み取り、制限酵素をDNAファイルに適用します。
出力は、dnaファイルで発生する順序で配置されたDNAのフラグメントになります。出力ファイルの名前は、制限酵素の名前をDNAファイルの名前にアンダースコアを付けて追加することによって作成する必要があります。
たとえば、酵素がEcoRIであり、DNAファイルの名前がBC161026の場合、出力ファイルの名前はBC161026_EcoRIである必要があります。
私のアプローチは、次のようにメインプログラムと2つのサブプログラムを作成することです。
メイン:私の潜水艦を一緒に結ぶ方法がわかりませんか?
サブプログラム$DNA:DNAファイルを取得し、新しい行を削除して1つの文字列を作成します
サブプログラム酵素:コマンドラインからの酵素ファイルから行を読み取って保存します。酵素の頭字語をカットの位置から分離するようにファイルを解析します。カットの位置を正規表現としてハッシュテーブルに保存する頭字語の名前をハッシュテーブルに保存する
酵素ファイル形式に関する注意:酵素ファイルは、Stadenと呼ばれる形式に従います。例:
AatI/AGG'CCT//
AatII/GACGT'C//
AbsI/CC'TCGAGG//
酵素の頭字語は、最初のスラッシュの前の文字で構成されます(最初の例では、AatI。認識シーケンスは、最初のスラッシュと2番目のスラッシュの間のすべてです(最初の例では、AGG'CCT)。カットポイントは、認識シーケンスのアポストロフィ酵素内のdnaには、次のような標準的な略語があります。
R=GまたはAB= Aではない(CまたはGまたはT)など..
メインチャンクの推奨事項に加えて、私が省略した欠落部分はありますか?このプログラムにパッチを適用するのに役立つと思われる特定のツールをお勧めしますか?
入力酵素の例:TryII/RRR'TTT//
読み取る文字列の例:CCCCCCGGGTTTCCCCCCCCCCCCAAATTTCCCCCCCCCCCCAGATTTCCCCCCCCCCGAGTTTCCCCC
出力は次のようになります。
CCCCCCGGG
TTTCCCCCCCCCCCCAAA
TTTCCCCCCCCCCCCAGA
TTTCCCCCCCCCCGAG
TTTCCCCC
data-structures - バイオインフォマティクスのデータ構造
バイオインフォマティクスに携わる者が知っておくべきデータ構造にはどのようなものがありますか? リスト、ハッシュ、バランス ツリーなどについては誰もが知っていると思いますが、ドメイン固有のデータ構造があることを期待しています。このテーマに特化した本はありますか?
perl - モチーフの FASTA ファイルを検索し、モチーフを含む各シーケンスのタイトル行を返す
以下は、コマンドラインで入力された FASTA ファイルを検索して、ユーザーが提供したモチーフを検索するためのコードです。それを実行して、ファイルにあることがわかっているモチーフを入力すると、「モチーフが見つかりません」と返されます。私は Perl の初心者にすぎません。タイトル行を返すどころか、見つかったモチーフを印刷する方法もわかりません。これを解決するための助けをいただければ幸いです。
ありがとう。
perl - ファイルを解析し、レコードを作成し、用語の頻度や距離の計算など、レコードを操作する方法
私はPerlのイントロクラスの学生で、原子に関するデータを分析する小さな(しかしトリッキーな)プログラムを作成するための私のアプローチに関する提案とフィードバックを探しています。私の教授はフォーラムを奨励しています。私はPerlのサブまたはモジュール(Bioperlを含む)に精通していないので、あなたの提案やコードから理解して学ぶことができるように、適切な「初心者レベル」に応答を制限してください(「マジック」も制限してください)。
プログラムの要件は次のとおりです。
コマンドラインからファイル(Atomに関するデータを含む)を読み取り、アトムレコードの配列を作成します(改行ごとに1つのレコード/アトム)。各レコードについて、プログラムは以下を保存する必要があります。
•原子のシリアル番号(列7〜11 )•原子
が属するアミノ酸の3文字の名前(列18〜20)
•原子の3つの座標(x、y、z)(列31〜54)
•原子の1文字または2文字の要素名(例:C、O、N、Na)(列77-78)次の3つのコマンドのいずれかを要求します:freq、length、density d(dはいくつかの数値です):
•freq-ファイル内の各タイプの原子の数(例:窒素、ナトリウムなどは次のように表示されます:N:918 S:23
•長さ-座標間の距離
•密度d(dは数値) -プログラムは、計算を保存するファイルの名前を要求し、その原子と他のすべての原子との間の距離を含みます。その距離が数値d以下の場合、原子の数のカウントをインクリメントします。そのカウントがファイルにゼロでない限り、その距離内にあります。出力は次のようになります:
1:5
2:3
3:6
...(非常に大きなファイル)そして終了すると閉じます。
以下のコードで私が書いた(そして書く必要がある)ものについてのフィードバックを探しています。私は特に私の潜水艦を書くことにアプローチする方法についてのフィードバックに感謝します。下部にサンプル入力データを含めました。
私が見ているプログラムの構造と関数の説明:
string - 2つの文字列でベースオーバーラップカウントと内部ギャップを見つける
私はこの2つの同じ長さの弦を持っていますが、これを比較する必要があります。オーバーラップベース(。)と内部ギャップ(*)を見つけたい。以下に例を示します。
オーバーラップの数=33。内部ギャップの数=2。
オーバーラップの数を見つけるのに問題はありません。しかし、私は内部ギャップを見つけるのに問題があります。以下は私が持っている現在のコードです。ひどく遅いです。原則として、私はそのようなペアを何百万も計算する必要があります。
内部ギャップを見つけて効率的にオーバーラップするにはどうすればよいかアドバイスしてください。
arrays - ファイルを読み取り、各行のレコードを作成する方法
入力ファイルを受け取り、フォローアップコマンドに基づいて操作を実行するPerlプログラムの作成に関するヘルプを探しています。私はPerlの初心者なので、提案を進めすぎないでください。私がこれまでに持っている構造は、メインプログラムと4つのサブプログラムです。
私は2つの部分で問題を抱えています:
入力ファイル(固定幅形式)から各行に一意のレコードを作成するメインセグメントの部分を書き込みます。これはsubstrで行う必要があると思いますが、これをどのように構成するかについてはよくわかりません。開梱は、これまでの私の学習の範囲を超えています。
メインプログラムで呼び出される関数の1つは、原子間の距離を計算する「距離」サブです。これはForループ内のForループである必要があると思います。私が取るべきアプローチについて何か考えはありますか?
レコードには、アトムレコードの配列(改行ごとに1つのレコード/アトム)を格納する必要があります。
•原子のシリアル番号、5桁。(列7〜11)
•それが属するアミノ酸の3文字の名前(列18〜20)
•原子の3つの座標の実数(10進数および直交座標(x、y、z)(列31〜54))
Xのオングストローム列。31-38
オングストローム列のYの場合。39-46
オングストローム列のZの場合。47-54
•原子の1文字または2文字の要素名(例:C、O、N、Na)(列77-78)
sub Distance#アトムレコードの配列を取得し、その配列内のアトム
のすべてのペア間の最大距離#を返します。(列31-54)
これは、入力ファイルからのサンプルテキストです。
これが、makeレコードのメインとサブについてこれまでに持っているものです。私は足が不自由になるのは嫌いですが、Distance subに表示するものはまだないので、コードを与えることについて心配する必要はありません。アプローチ方法に関する提案をいただければ幸いです。
python - biopythonに最適なクラウドコンピューティングプラットフォームは何ですか?
私は現在(シニアプロジェクトとして)バイオインフォマティクスWebアプリケーションを構築および実装して、大きなデータとそれらに関するいくつかの複雑な作業を操作しています。
私はそれのためにbiopythonを使用しています
どのクラウドコンピューティングプラットフォームが最適で、その理由は何ですか?
前もって感謝します
r - R: サル/フィロベース: ウルトラメトリックの二分木を hclust オブジェクトに変換できません (警告メッセージ)
read.tree
ape 関数とape パッケージの関数を使用して、R に ClustalW2 ツリーをインポートしました。私は chronopl 関数を使用して分子年齢を推定し、ウルトラメトリックな二分木を作成しました。そこから樹状図オブジェクトで R ビルドを作成したいと考えています。
木はきれいにプロットされ、本物のファイロ オブジェクトです。ただし、変換しようとすると問題が発生します。
最小限の作業例:
結果のツリーは問題なく「見える」ので、ツリーがウルトラメトリックおよびバイナリではないことを確認するためにテストし、それを hclust オブジェクトに変換して、最終的にその樹状図オブジェクトを作成します。
ツリーから hclust オブジェクトを作成しようとすると、次のエラーが発生します。
これは非常に詳細な質問であり、特定のパッケージに特に関連する質問は別の場所で尋ねたほうがよいかもしれませんが、誰かが私を助けてくれることを願っています.
すべての助けに感謝します。
よろしく、
ファイルのダウンロード
Phylip ファイルはhttp://www.box.net/shared/rnbdk973jaからダウンロードできます 。
bioinformatics - GC含量によるビニングシーケンスの読み取り
マルチファスタヌクレオチド配列ファイルを「ビン」(別々のファイルに分割)したいと思います(たとえば、Roche-454の実行で約500,000回の読み取りが平均読み取り長250bp)。各読み取りのGC含量に基づいたビンが欲しいのですが。結果の出力は、8つのmulti-fastaファイルになります。
<20%のGC含量
21〜30%のGC含量
31〜40%のGC含量
41-50%のGC含量
51〜60%のGC含量
61〜70%のGC含量
71〜80%のGC含量
> 80%のGC含量
誰かがこれをすでに行っているスクリプトやプログラムを知っていますか?そうでない場合、誰かがGCコンテンツに基づいてmulti-fastaファイルをソートする方法を提案できますか(それを関連するビンに分割できます)?