2

6K 近くのエントリを持つ巨大な CSV ファイルがあり、ファイルは次のようになります。

PDB ID  NDB ID  Structure Title  Citation Title     Abstract
1ET4    1ET4    Structure of     Solution structure Research was performed and 
                haemoglobin mRNA of mRNA aptamer    structure of mRNa was obtained
                aptamer.

私の最終目標は、次のようなキーワードを指定して出力を表示することです。

Keyword: mRNA
PDB ID   NDB ID   Structure Title   Citation Title   Abstract   Location of first hit
                                                                struc/citation/abstract

私にとっての出発点は何ですか?また、これには正規表現と呼ばれるものを使用する必要がありますか?

免責事項: これは研究プロジェクトの一部であり、学校の宿題ではありません。

疑似コードまたはテンプレートは私にとって素晴らしいものです。

4

2 に答える 2

2

CSV ファイルを解析して、2 つのデータ構造を作成できます。両方の辞書。

1 つの辞書には、 をキーにした各行が含まれPDB IDます。もう 1 つのディクショナリはPDB IDのセットを格納し、キーワードをキーにします。

ヘッダーを無視しているため、以下は単なるコード例です。おそらくcsvを適切に解析したいでしょう...

from collections import defaultdict
entries = {}
keywords = defaultdict(set)

with open('my_csv.csv') as f:
    for line in f:
        entries[line.split()[0]] = line  # so keying on the PDB ID

with open('my_csv.csv') as f:
    for line in f:
        for kw in line.split()[1:]
            keywords[kw].add(line.split()[0])

これらの 2 つのデータ構造を取得したら、キーワード dict でキーワードを検索し、セットを繰り返し処理し、関連する PDB ID を使用して各行を出力するのは簡単です。

于 2013-07-17T13:46:09.083 に答える
0

正規表現を見る方法はありません。次のライブラリhttp://docs.python.org/2/library/csv.html を試してください。これは、Google で「csv python」と入力して見つけることもできます。

そこには多くの例があります。

于 2013-07-17T13:43:42.900 に答える