2016-09-20 7 views
0

私は90,000レコードのデータセットを持っています。これらの9万レコードは、約3,000のユニークキーに属します。各Keyでは、値はItemNumber1から 'n'まで順に並べられます。キーごとに逐次行に基づいて増加または減少する値を調べる

各キー1〜nについて、2番目の行と1番目の行、3番目の行と2番目の行などを比較したいと思います。私のテーブルのサンプルは、期待されるものの例としていくつかの値が入力されています。

私はmilepost値の列を持ち、値が連続するレコード間で昇順であるか降順であるかを知りたいと考えます。

画像が埋め込まれていないため、URL:http://i.imgur.com/i1nuAK9.pngのサンプル画像が見つかりました。

私は非常にPythonに新しく、始めに問題があります。 "ProjectKey A、ItemNum 2"を "ProjectKey A、ItemNum 1"と比較して、昇順であることを知ることができたとしても、最初のレコードと比較することはできますか?解析する方向を決定するのに問題があります。

ご協力いただければ幸いです!

EDIT: スニペットCSVとして

ProjectKey、ItemNum、BMP、方向 A、1,0.2、_ A、2,1.7、_ A、3,2.5、_ A、4 、5、_ A、5,9、_ A、6,12、_ B、1,25、_ B、2,24.2、_ B、3,21.7、_ B、4,20.3 、0,C、1,3、_ C、2,4、_ C、3,5、_ C、4,6、_ C、5,5、_ C、6,4、 C、7,3、_ C、8,2、_

+1

とにかくデータをPythonにインポートする必要があるため、データをテキストスニペットとして提供してください。あなたはこれまで何をしていますか? – albert

+0

よろしくお願いいたします。私は体のスニペットを提供しました。 –

答えて

0

テキストにデータを転送したら、リストの集合とループスルー解析し、比較するために使用することができます

keylistA = [0.2, 1.7, 2.5, 5, 9, 12] 
listAdirection = ['(start)'] 

for i in range(0, len(keylistA)): 
    if keylistA[i] > keylistA[i+1]: 
     listAdirection.append('DESC') 
    elif keylistA[i] < keylistA[i+1]: 
     listAdirection.append('ASC') 
    else: 
     listAdirection.append('SAME') 

これはあなたにこのようないくつかのリストを与えるだろう:

listAdirection = ['(start)', 'ASC', 'ASC', 'ASC', 'ASC', 'ASC'] 

あなたは、ネストされたリスト形式で保存されたリストを持っている、または辞書のセットアップのいくつかの並べ替えを使用した可能性があります。もちろん、これらのすべては、これらの列からテキストにデータをエクスポートする方法に大きく依存します。

+0

"KeyListX"の範囲をネストすることは可能でしょうか?だから、のようなもの:範囲内のiに対する : かのキーリスト[0] [0]>キーリスト[0] [1] ... キーリスト[1] [0]>キーリスト[1] [1] 場合... –

関連する問題