2017-04-23 6 views
1

私はcsvで読んでいます。最初の2つの列名を上書きしたいと思います。パンダは列名を位置別に上書きします

  • 列が0と呼ばれ、1されていないので、私は、私はちょうどそれらを投げるしたい、彼らは名前を持つdf.rename(columns={0:'name 1', 1:'name 2'})を使用することはできません。その後、df['name 1']は私にKeyError例外を与えるので、それは

    df.columns.values[0] = 'name 1' 
    df.columns.values[1] = 'name 2' 
    

    のように思える

  • は、深刻な問題があります。

  • pd.read_csv(file, names=['name 1', 'name 2', ...]が理想的でしょう。興味深いことに、これはcol 3 "Ellipsis"の名前を変更し、目的の効果がありません。

パンダでこれをどのようにするのがいいですか?

答えて

4

はこれを試してみてください:

df.columns = ['name 1', 'name 2'] + df.columns[2:].tolist() 
+0

おかげ@MaxU!これは機能します。 –

+0

@AlexLenail、歓迎です:) – MaxU

関連する問題