バイオインフォマティクス解析 Python 実践演習 4 | 動画 22

オープンソースの学生レター Python チュートリアル

学生向けの簡潔な Python テキストとビデオ チュートリアル

ソースコードはhttps://github.com/Tong-Chen/Bioinfo_course_pythonにあります。

目次

  1. 背景紹介

    1. プログラミングの始まり

    2. なぜPythonを学ぶのか

    3. Pythonのインストール方法

    4. Python コマンドとスクリプトを実行する方法

    5. Python スクリプトの作成に使用するエディター

  2. Pythonプログラム例

  3. Pythonの基本構文

    1. 数値変数の演算

    2. 文字列変数の操作

    3. リスト操作

    4. 集合演算

    5. 範囲使用

    6. 辞書操作

    7. 階層的なインデント

    8. 変数、データ構造、フロー制御

  4. 入出力

    1. インタラクティブな入出力

    2. ファイルの読み取りと書き込み

  5. 実践演習(1)

    1. 背景知識

    2. 宿題関連の仕事(1)

  6. 関数操作

    1. 関数操作

    2. 生物学的文字に関する課題 (2)

  7. モジュール

  8. コマンドラインパラメータ

    1. コマンドラインパラメータ

    2. 生物手紙に関する宿題(3)

  9. その他の Python コンテンツ

    1. 単一ブロック

    2. リスト合成、新しいリストを生成する簡略化された for ループ

    3. ラムダ、マップ、ファイラー、リデュース(レパートリー)

    4. exec、eval (文字列の Python ステートメントを実行、レパートリー)

    5. 正規表現

    6. Python の描画

  10. 参照

いくつかの練習問題

  1. cat.pyFASTA 形式のファイル (test1.fa と test2.fa) が与えられた場合、そのファイルを読み取って画面に出力するプログラムを作成します(2 点)

  • 開く(ファイル)

  • for .. ループ内

  • プリント()

  • ストリップ()関数

  • 使用した知識ポイント

cat.pyFASTQ 形式のファイル (test1.fq) を与えて、そのファイルを読み取って画面に出力するプログラムを作成します(2 点)

  • 同上

  • 使用した知識ポイント

プログラムを書いてsplitName.pytest2.faを読み込み、元のシーケンス名の最初のスペースより前の名前を加工シーケンス名として画面に出力(2点)

  • スプリット

  • 文字列のインデックス

  • 使用した知識ポイント

  • 出力形式は次のとおりです。

    >NM_001011874
    gcggcggcgggcgagcgggcgctggagtaggagctg.......

プログラムを書いてformatFasta.pytest2.faを読み込み、各FASTAシーケンスを1行に結んで出力(2点)

  • 参加する

  • ストリップ

  • 使用した知識ポイント

  • 出力形式は次のとおりです。

    >NM_001011874
    gcggcggcgggc......TCCGCTG......GCGTTCACC......CGGGGTCCGGAG

プログラムを書きformatFasta-2.py、test2.faを読み込み、各FASTAシーケンスを1行80文字(2点)のシーケンスに分割します。

  • 文字列スライス操作

  • 範囲

  • 使用した知識ポイント

  • 出力形式は

    >NM_001011874
    gcggcggcgc.(60个字母).TCCGCTGACG #(每行80个字母)
    acgtgctacg.(60个字母).GCGTTCACCC
    ACGTACGATG(最后一行可不足80个字母)

プログラムを書いてsortFasta.pytest2.faを読み込み、元のシーケンス名の最初のスペースより前の名前を加工シーケンス名としてソートして出力する(2点)

  • 選別

  • 辞書

  • aDict[キー] = []

  • aDict[キー].append(値)

  • 使用した知識ポイント

名前を付けた配列を抽出します (2 点)

  • 使用した知識ポイント

  • print >>fh、または fh.write()

  • モジュロ演算、4 % 2 == 0

  • grepFasta.pyfasta.nameの名前に対応するtest2.faの配列を抽出して画面に出力するプログラムを書きます。

  • grepFastq.pyfastq.nameの名前に対応するtest1.fqの配列を抽出してファイルに出力するプログラムを作成してください。

screenResult.pytest.expr 内で、foldChange が 2 より大きく、padj が 0.05 未満の遺伝子をフィルタリングし、行全体または遺伝子名のみを出力するプログラムを作成します(4点)

  • 論理AND演算子と

  • ファイルに読み取られる内容はすべて文字列であり、int で整数に変換し、float で浮動小数点数に変換する必要があります。

  • 使用した知識ポイント

transferMultipleColumToMatrix.pyファイル(multipleColExpr.txt)内の複数組織の遺伝子発現データを行列形式に変換するプログラムを記述し、ヒートマップを描画します。(6点)

  • aDict['key'] = {}

  • aDict['key']['key2'] = 値

  • キーが aDict にない場合

  • aDict = {'ENSG00000000003': {“A-431”: 21.3, “A-549”, 32.5,…},”ENSG00000000003”:{},}

  • 使用した知識ポイント

  • 入力形式 (最初の 3 列のみが必要です)

    Gene    Sample  Value   Unit    Abundance
    ENSG00000000003 A-431   21.3    FPKM    Medium
    ENSG00000000003 A-549   32.5    FPKM    Medium
    ENSG00000000003 AN3-CA  38.2    FPKM    Medium
    ENSG00000000003 BEWO    31.4    FPKM    Medium
    ENSG00000000003 CACO-2  63.9    FPKM    High
    ENSG00000000005 A-431   0.0     FPKM    Not detected
    ENSG00000000005 A-549   0.0     FPKM    Not detected
    ENSG00000000005 AN3-CA  0.0     FPKM    Not detected
    ENSG00000000005 BEWO    0.0     FPKM    Not detected
    ENSG00000000005 CACO-2  0.0     FPKM    Not detected
  • 出力フォーマット

    Name    A-431    A-549    AN3-CA    BEWO    CACO-2
    ENSG00000000460    25.2    14.2    10.6    24.4    14.2
    ENSG00000000938    0.0    0.0    0.0    0.0    0.0
    ENSG00000001084    19.1    155.1    24.4    12.6    23.5
    ENSG00000000457    2.8    3.4    3.8    5.8    2.9

シーケンスの逆補数をreverseComplementary.py計算するプログラムを作成します。ACGTACGTACGTCACGTCAGCTAGAC(2分)

  • 逆行する

  • リスト(シーケンス)

  • 使用した知識ポイント

smRNA-Seq シーケンス データを変換するプログラムを作成しますcollapsemiRNAreads.py(5点)

  • 入力ファイル形式 (mir.collapse、タブ区切りの 2 列ファイル、最初の列はシーケンス、2 列目はシーケンスが測定された回数)

    ID_REF        VALUE
      ACTGCCCTAAGTGCTCCTTCTGGC        2
      ATAAGGTGCATCTAGTGCAGATA        25
      TGAGGTAGTAGTTTGTGCTGTTT        100
      TCCTACGAGTTGCATGGATTC        4
  • 出力ファイル形式 (mir.collapse.fa、名前の最初の 3 文字はサンプルの特定の識別子、中央の数字は配列名の唯一の識別子である配列番号を示し、3 番目の文字は配列番号を示します)部分は x に検出された各リードの回数を加えたものです。3 つの部分は fasta シーケンスの名前としてアンダースコアで接続されます。)

    >ESB_1_x2
      ACTGCCCTAAGTGCTCCTTCTGGC
      >ESB_2_x25
      ATAAGGTGCATCTAGTGCAGATA
      >ESB_3_x100
      TGAGGTAGTAGTTTGTGCTGTTT
      >ESB_4_x4
      TCCTACGAGTTGCATGGATTC

簡略化された短いシーケンス マッチング プログラム (map.py) は、short.fa 内のシーケンスを ref.fa と比較し、短いシーケンスが ref.fa ファイル内のどの位置と一致するかを出力します。(10点)

  • 探す

  • 使用した知識ポイント

  • 出力形式 (出力形式はベッド形式、最初の列は一致した染色体、2 番目と 3 番目の列は一致した染色体配列の開始位置と終了位置 (位置マークは 0 で始まり、最初の位置を表します。終了位置)最初の例で示した配列の位置は (199,208] (前が閉じて後ろが開いている、実際には Chr1 染色体 199-206 の配列で、0 から始まります) です。 4 列目は短い配列そのものです。の。)。

  • 追加の要件: 特定のテンプレート鎖にのみ一致するか、テンプレート鎖の相補鎖に一致することを考慮します。このとき、5列目は短配列の名前、6列目は鋳型鎖に「+」、相補鎖に「-」と一致する鎖の情報となる。相補鎖が一致する場合、開始位置も鋳型鎖の 5' 末端から数えられることに注意してください。

    chr1    199    208    TGGCGTTCA
    chr1    207    216    ACCCCGCTG
    chr2    63    70    AAATTGC
    chr3    0    7    AATAAAT

毎日のおすすめ書籍 - Fluent Python

「Smooth Python」の著者である Luciano Ramalho は、Python Software Foundation のメンバーである Thoughtworks のチーフ コンサルタントであり、ブラジルの有名な Python 言語学習コミュニティである Python Brasil の共同創設者です。Python プログラミングで 25 年の経験を持つ彼の「スムーズ Python」は、Python 3.10 をベースにしたプログラミング分野の古典であり、80,000 人近くの読者に影響を与えており、詳細な内容と 500 近くのよく設計されたコード例が含まれています。図や表も豊富でとても勉強しやすいです!

詳細については、ChatGPT の評価を参照してください。

06380e10f3b4b7770dee4dcf2976a283.png

f9d18f7b1b23f07fcc839b0579a38c22.png

68a570dda760cb044dc4e229aca0836b.png

過去の製品(画像をクリックするとテキストに対応するチュートリアルに直接移動します)

1c7f7f773845307c8a3a92a98dade745.jpeg

bcec4faaabd11dbebb8c5d42bc9e32e5.jpeg

377efb751b861c408335844d7982f3b1.jpeg

d994c1e9238e6c017c2c0d7579483fc7.jpeg

21eda8a122221b739e77bd06917e47ab.jpeg

abec2e204c122c8b8f433cfd3b898d04.jpeg

da94f9a16bb8c32ddd6e0db511db0071.jpeg

88109d1c8cde05f99b8f4106cd7c3264.jpeg

cfd9ecb0a3c45a5820a3e6c543f1f431.jpeg

912a20ec9b648c0ebd25c3699cc6f8df.jpeg

e9627a63c437c37d1651262432bca118.jpeg

465570a812d5adf0625b57d1d1c6efa6.jpeg

47cf875aab005dd237b196637e32e272.png

01459e4c062826306c954a7d5e05c09a.png

c6474867db2bd10094b0572a7933ed7a.png

04c3eed524e8c831f8b51a41644240fd.png

300370bae0bdbb9f8181b5a12658e725.jpeg

4a377099bebd6d12eaf64be16530c9fa.jpeg

bebd582ccd460ad307a62f9deab6c67c.jpeg

8c1392812eb0ddf0a8c2a2ac4430e9ba.jpeg

5228984c492f64397701179efc0633a5.png

9a08c459f349d6f90bf5b26e0e42599f.png

a3a8f8aed534e95582fce61672330a69.jpeg

2d8fd1826aa4b9f0d3aed96d6d776880.png

085d6c5c902176d4dbda85d405e19261.png

498cdf0c1d3dd2239b4527b99280cac1.jpeg

558e8ee1431a9c6e1ceecb505bc74841.png

84a71cd20557afdeb99c01516c2e365c.png

機械学習

バックグラウンドで「ライフ レター コレクションの特典の第一波」と返信するか、クリックして元のテキストを読んでチュートリアルのコレクションを入手してください

ef8e33682520984df507b6f62074d451.jpeg

837e695033f96293e865d8b4098723c4.jpeg

0af35b71c84a0eae40863f516da913f5.png

おすすめ

転載: blog.csdn.net/qazplm12_3/article/details/132614142