Saya memiliki spreadsheet seperti ini:
Locality 2005 2006 2007 2008 2009
ABBOTSFORD 427000 448000 602500 600000 638500
ABERFELDIE 534000 600000 735000 710000 775000
AIREYS INLET459000 440000 430000 517500 512500
Saya tidak ingin menukar kolom dengan baris secara manual. Mungkinkah menggunakan data bacaan panda ke daftar seperti ini:
data['ABBOTSFORD']=[427000,448000,602500,600000,638500]
data['ABERFELDIE']=[534000,600000,735000,710000,775000]
data['AIREYS INLET']=[459000,440000,430000,517500,512500]
Jawaban:
Ya, dengan set_index Anda dapat membuat
Locality
indeks baris Anda.Jika
inplace=True
tidak tersedia,set_index
kembalikan dataframe yang dimodifikasi sebagai hasil.Contoh:
sumber
Anda dapat mengubah indeks seperti yang sudah dijelaskan menggunakan
set_index
. Anda tidak perlu menukar baris dengan kolom secara manual, ada metode transpose (data.T
) di panda yang melakukannya untuk Anda:maka Anda dapat mengambil nilai kolom dataframe dan mengubahnya menjadi daftar:
sumber
Anda dapat mengatur indeks kolom menggunakan parameter index_col yang tersedia saat membaca dari spreadsheet di Pandas.
Inilah solusi saya:
Pertama, impor panda sebagai pd:
import pandas as pd
Baca nama file menggunakan pd.read_excel () (jika Anda memiliki data di spreadsheet) dan setel indeks ke 'Lokalitas' dengan menentukan parameter index_col.
df = pd.read_excel('testexcel.xlsx', index_col=0)
Pada tahap ini jika Anda mendapatkan kesalahan 'tidak ada modul bernama xlrd', instal menggunakan
pip install xlrd
.Untuk pemeriksaan visual, baca menggunakan kerangka data
df.head()
yang akan mencetak keluaran berikutSekarang Anda dapat mengambil nilai dari kolom yang diinginkan dari kerangka data dan mencetaknya
sumber