Bagaimana cara mendapatkan nama kolom indeks dalam python panda? Berikut ini contoh bingkai data:
Column 1
Index Title
Apples 1
Oranges 2
Puppies 3
Ducks 4
Apa yang saya coba lakukan adalah mendapatkan / mengatur judul indeks dataframe. Inilah yang saya coba:
import pandas as pd
data = {'Column 1' : [1., 2., 3., 4.],
'Index Title' : ["Apples", "Oranges", "Puppies", "Ducks"]}
df = pd.DataFrame(data)
df.index = df["Index Title"]
del df["Index Title"]
print df
Adakah yang tahu bagaimana melakukan ini?
python
pandas
dataframe
columnname
Edward yang radikal
sumber
sumber
pd.DataFrame(values,index={"INDEX_NAME":index_values})
. Saya tidak mengerti mengapa ini tidak diizinkan atau diterapkan?@denfromufa
itu harus mengambil dict sebagai parameter untuk membangun dari pandas.DataFramedf.index.names
sebagai gantidf.index.name
.Anda dapat menggunakan
rename_axis
, untuk menghapus set keNone
:Fungsionalitas baru berfungsi dengan baik dalam rantai metode.
Anda juga dapat mengganti nama nama kolom dengan parameter
axis
:Dari versi
pandas 0.24.0+
dimungkinkan menggunakan parameterindex
dancolumns
:Menghapus nama indeks dan kolom berarti mengaturnya untuk
None
:Jika
MultiIndex
hanya dalam indeks:Menghapus nama indeks dan kolom berarti mengaturnya untuk
None
:Karena
MultiIndex
dalam indeks dan kolom perlu bekerja dengan.names
gantinya.name
dan ditetapkan oleh daftar atau tupel:Plural diperlukan untuk memeriksa / menetapkan nilai:
Menghapus nama indeks dan kolom berarti mengaturnya untuk
None
:Dan solusi @Jeff:
sumber
df.index.rename('foo', inplace=True)
lihat pandas.pydata.org/pandas-docs/stable/generated/...df.index.name
harus melakukan trik.Python memiliki
dir
fungsi yang memungkinkan Anda menanyakan atribut objek.dir(df.index)
sangat membantu di sini.sumber
Gunakan
df.index.rename('foo', inplace=True)
untuk mengatur nama indeks.Tampaknya api ini tersedia sejak panda 0,13 .
sumber
Jika Anda tidak ingin membuat baris baru tetapi cukup taruh di sel kosong kemudian gunakan:
Kalau tidak gunakan:
sumber
df.columns.values
juga beri kami nama kolomsumber
Solusi untuk multi-indeks ada di dalam jawaban cyclopedic jezrael, tetapi butuh beberapa saat untuk menemukannya sehingga saya memposting jawaban baru:
df.index.names
memberikan nama-nama multi-indeks (sebagai Frozenlist).sumber
Untuk hanya mendapatkan nama kolom indeks
df.index.names
akan berfungsi baik untuk Indeks tunggal atau MultiIndex pada versi panda terbaru.Sebagai seseorang yang menemukan ini ketika mencoba menemukan cara terbaik untuk mendapatkan daftar nama indeks + nama kolom, saya akan menemukan jawaban ini bermanfaat:
Ini berfungsi tanpa indeks, Indeks kolom tunggal, atau MultiIndex. Ini menghindari panggilan reset_index () yang memiliki hit kinerja yang tidak perlu untuk operasi sederhana. Saya terkejut tidak ada metode bawaan untuk ini (yang saya temui). Saya kira saya mengalami lebih sering membutuhkan ini karena saya bolak-balik data dari database di mana indeks dataframe peta ke kunci utama / unik, tetapi sebenarnya hanya kolom lain bagi saya.
sumber
Menyetel nama indeks juga dapat dilakukan saat pembuatan:
sumber