2016-04-08 7 views
1

データの6列あり、4列目は最初の値と同じ値ですが値の一部がありません。同じ値が同じ行に並ぶように4列目の並べ替え方法を知りたいのですがPython。欠損値のある列の並べ替え

サンプル・データ

255 12 0.1  255 12 0.1 
256 13 0.1  259 15 0.15 
259 15 0.15 272 18 0.12 
272 18 0.12    
290 19 0.09    

あなたがmergeを試すことができます

255 12 0.1  255 12 0.1 
256 13 0.1  
259 15 0.15 259 15 0.15 
272 18 0.12 272 18 0.12   
290 19 0.09    
+4

は、あなたがサンプルデータと予想される出力を投稿できますか? – Zero

+0

私はcsvモジュールでそれを行う方法があると思いますが、多分もっとpythonicな方法があります。 – Whitefret

+0

私はこのスレッドの助けを借りてExcelを使ってこれを行うことができますhttp://stackoverflow.com/questions/23136316/comparing私は大規模なデータを扱わなければならないので、Pythonの方法はよりフレンドリーになります –

答えて

0

所望の出力:

print df 
    a b  c  d  e  f 
0 255 12 0.10 255.0 12.0 0.10 
1 256 13 0.10 259.0 15.0 0.15 
2 259 15 0.15 272.0 18.0 0.12 
3 272 18 0.12 NaN NaN NaN 
4 290 19 0.09 NaN NaN NaN 

print pd.merge(df[['a','b','c']], 
       df[['d','e','f']], 
       left_on=['a','b'], 
       right_on=['d','e'], 
       how='left') 

    a b  c  d  e  f 
0 255 12 0.10 255.0 12.0 0.10 
1 256 13 0.10 NaN NaN NaN 
2 259 15 0.15 259.0 15.0 0.15 
3 272 18 0.12 272.0 18.0 0.12 
4 290 19 0.09 NaN NaN NaN 
+0

それを試してみましょう、ありがとう、ありがとう。 –

+0

これを行う最も簡単な方法は他にありませんか? – Abbas

+0

私はそれが非常に単純だと思う、1つの機能だけを使用する。私はより良いアプローチを知らない。 – jezrael