2016-04-09 30 views
40

csvdfから読み取ると、unnamed:0という名前の不要なインデックスのような列が表示されることがあります。これは非常に迷惑です!私はこの解決策だと思ったパンダ:データフレームの `無名:`列を取り除く方法

merge.to_csv('xy.df', mode = 'w', inplace=False) 

を試してみましたが、私はまだunnamed:0列を取得しています!誰かがこれについてアイデアを持っていますか?

答えて

54

それはdocs

例を参照してください、それを書き出していないためにindex=Falseを渡し、インデックス列です:あなたはまた、必要に応じてread_csvことを言うことができる

In [38]: 
pd.read_csv(io.StringIO(df.to_csv(index=False))) 

Out[38]: 
      a   b   c 
0 0.109066 -1.112704 -0.545209 
1 0.447114 1.525341 0.317252 
2 0.507495 0.137863 0.886283 
3 1.452867 1.888363 1.168101 
4 0.901371 -0.704805 0.088335 

In [37]: 
df = pd.DataFrame(np.random.randn(5,3), columns=list('abc')) 
pd.read_csv(io.StringIO(df.to_csv())) 

Out[37]: 
    Unnamed: 0   a   b   c 
0   0 0.109066 -1.112704 -0.545209 
1   1 0.447114 1.525341 0.317252 
2   2 0.507495 0.137863 0.886283 
3   3 1.452867 1.888363 1.168101 
4   4 0.901371 -0.704805 0.088335 

はとの比較最初の列はindex_col=0

を渡してインデックス列です
In [40]: 
pd.read_csv(io.StringIO(df.to_csv()), index_col=0) 

Out[40]: 
      a   b   c 
0 0.109066 -1.112704 -0.545209 
1 0.447114 1.525341 0.317252 
2 0.507495 0.137863 0.886283 
3 1.452867 1.888363 1.168101 
4 0.901371 -0.704805 0.088335 
+0

ありがとうEdChum!不快感がなくなった!私がドキュメントを読んでいて、この解決策を探していたと思う。どういうわけか私は適切に理解していませんでした。 –

関連する問題