2017-02-22 16 views
1

一部のcsvデータを処理するための短いスクリプトを作成しています。私は、各周波数についてresすべての値を抽出し、別のリストにそれらを配置する必要がありPython:csvファイルから値を抽出し、特定のパラメータに基づいて別のリストに出力する

Freq res loop 
10000 10 1 
100  11 1 
10000 12 2 
100  13 2 

: 私のデータは次のようになります。例えば、10000 10 12ここで、10000は周波数、10と12はループ1と2のres値です。

これを行うにはすばやく、汚れた方法は、ループカウントで列をカットし、このような行によるデータ:

Freq res loop Freq res loop 
10000 10  1  10000 12  2 
100  11  1  100  13  2 

しかし、私はそれはそれを強制的にブルートだように感じるとラインを下に厄介かもしれません。

for i in np.arange(1, max(loop)+1,1): 
    print(key[10000,i]) 

しかし、私はどのように周波数をループもわからないし、それぞれに別のリストを作成します。 私はkey[(Freq, loop)] = res私はのような何かを行うことができるように辞書を作成しました。

私はまだPythonには慣れていないので、どんな入力をいただければ幸いです。また、より単純な解決策がない場合は、私に知らせてください。ありがとうございました。

答えて

1

あなたはパンダを見たいかもしれません。

import pandas as pd 
df = pandas.read_csv(fname) 
df.groupby('Freq') 
+0

Aha!ありがとう、私は本当にパンダを混乱させたことはありませんでしたが、df.sort_values(by = ['Frequency [Hz]'、 'Loop'])が働きました。 – Raku

関連する問題