Ilmu Data

Cara membuat tabel pivot di Pandas Python

Cara membuat tabel pivot di Pandas Python
Dalam python panda, tabel Pivot terdiri dari jumlah, jumlah, atau fungsi agregasi yang berasal dari tabel data. Fungsi agregasi dapat digunakan pada fitur atau nilai yang berbeda. Tabel pivot memungkinkan kita untuk meringkas data tabel yang dikelompokkan berdasarkan nilai yang berbeda, termasuk nilai kategorikal kolom.

Sebelum menggunakan tabel pivot panda, pastikan Anda memahami data dan pertanyaan yang Anda coba selesaikan melalui tabel pivot. Dengan menggunakan metode ini, Anda dapat menghasilkan hasil yang kuat. Kami akan menguraikan dalam artikel ini, cara membuat tabel pivot di panda python.

Baca Data dari file Excel

Kami telah mengunduh database excel penjualan makanan. Sebelum memulai implementasi, Anda perlu menginstal beberapa paket yang diperlukan untuk membaca dan menulis file database excel. Ketik perintah berikut di bagian terminal editor pycharm Anda:

pip install xlwt openpyxl xlsxwriter xlrd

Sekarang, baca data dari lembar excel. Impor perpustakaan panda yang diperlukan dan ubah jalur database Anda. Kemudian dengan menjalankan kode berikut, data dapat diambil dari file.

impor panda sebagai pd
impor numpy sebagai np
dtfrm = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
cetak(dtfrm)

Di sini, data dibaca dari database excel penjualan makanan dan diteruskan ke variabel kerangka data.

Buat Tabel Pivot menggunakan Pandas Python

Di bawah ini kami telah membuat tabel pivot sederhana dengan menggunakan database penjualan makanan. Dua parameter diperlukan untuk membuat tabel pivot. Yang pertama adalah data yang telah kita masukkan ke dalam kerangka data, dan yang lainnya adalah indeks.

Pivot Data pada Indeks

Indeks adalah fitur tabel pivot yang memungkinkan Anda mengelompokkan data berdasarkan persyaratan. Di sini, kami telah mengambil 'Produk' sebagai indeks untuk membuat tabel pivot dasar.

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Produk"])
cetak (pivot_tble)

Hasil berikut menunjukkan setelah menjalankan kode sumber di atas:

Tentukan kolom secara eksplisit

Untuk analisis lebih lanjut tentang data Anda, tentukan nama kolom secara eksplisit dengan indeks. Misalnya, kami ingin menampilkan satu-satunya Harga Satuan dari setiap produk di hasil. Untuk tujuan ini, tambahkan parameter nilai di tabel pivot Anda. Kode berikut memberi Anda hasil yang sama:

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe, indeks='Produk', nilai='UnitPrice')
cetak (pivot_tble)

Data Pivot dengan Multi-indeks

Data dapat dikelompokkan berdasarkan lebih dari satu fitur sebagai indeks. Dengan menggunakan pendekatan multi-indeks, Anda bisa mendapatkan hasil yang lebih spesifik untuk analisis data. Misalnya, produk berada di bawah kategori yang berbeda. Jadi, Anda dapat menampilkan indeks 'Product' dan 'Category' dengan 'Quantity' dan 'UnitPrice' yang tersedia dari setiap produk sebagai berikut:

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Category","Product"],values=["UnitPrice", "Quantity"])
cetak (pivot_tble)

Menerapkan Fungsi Agregasi dalam tabel Pivot

Dalam tabel pivot, aggfunc dapat diterapkan untuk nilai fitur yang berbeda different. Tabel yang dihasilkan adalah ringkasan dari data fitur. Fungsi agregat berlaku untuk data grup Anda di pivot_table. Secara default fungsi agregat adalah np.berarti(). Namun, berdasarkan kebutuhan pengguna, fungsi agregat yang berbeda dapat diterapkan untuk fitur data yang berbeda.

Contoh:

Kami telah menerapkan fungsi agregat dalam contoh ini. np.fungsi sum() digunakan untuk fitur 'Kuantitas' dan np.mean() fungsi untuk fitur 'UnitPrice'.

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Produk"], aggfunc='Kuantitas': np.jumlah,'Harga Satuan': np.berarti)
cetak (pivot_tble)

Setelah menerapkan fungsi agregasi untuk fitur yang berbeda, Anda akan mendapatkan output berikut:

Menggunakan parameter nilai, Anda juga dapat menerapkan fungsi agregat untuk fitur tertentu. Jika Anda tidak akan menentukan nilai fitur, itu akan menggabungkan fitur numerik database Anda. Dengan mengikuti kode sumber yang diberikan, Anda dapat menerapkan fungsi agregat untuk fitur tertentu:

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe, indeks=['Produk'], nilai=['Harga Satuan'], aggfunc=np.berarti)
cetak (pivot_tble)

Perbedaan antara Nilai vs. Kolom dalam Tabel Pivot

Nilai dan kolom adalah titik membingungkan utama di pivot_table. Penting untuk dicatat bahwa kolom adalah bidang opsional, menampilkan nilai tabel yang dihasilkan secara horizontal di atas. Fungsi agregasi aggfunc berlaku untuk bidang nilai yang Anda daftarkan.

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=['Category','Product', 'City'],values=['UnitPrice', 'Quantity'],
kolom=['Wilayah'],aggfunc=[np.jumlah])
cetak (pivot_tble)

Menangani Data yang Hilang di Pivot Table

Anda juga bisa menangani nilai yang hilang dalam tabel Pivot dengan menggunakan 'isi_nilai' Parameter. Ini memungkinkan Anda untuk mengganti nilai NaN dengan beberapa nilai baru yang Anda sediakan untuk diisi.

Misalnya, kami menghapus semua nilai nol dari tabel hasil di atas dengan menjalankan kode berikut dan mengganti nilai NaN dengan 0 di seluruh tabel hasil.

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx')
pivot_tble=pd.pivot_table(dataframe,index=['Category','Product', 'City'],values=['UnitPrice', 'Quantity'],
kolom=['Wilayah'],aggfunc=[np.jumlah], isi_nilai=0)
cetak (pivot_tble)

Memfilter dalam Tabel Pivot

Setelah hasilnya dihasilkan, Anda dapat menerapkan filter dengan menggunakan fungsi kerangka data standar. Mari kita ambil contoh. Filter produk-produk yang UnitPrice-nya kurang dari 60. Ini menampilkan produk-produk yang harganya kurang dari 60.

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', indeks_kol=0)
pivot_tble=pd.pivot_table(dataframe, index='Product', values='UnitPrice', aggfunc='sum')
low_price=pivot_tble[pivot_tble['UnitPrice'] < 60]
cetak (harga_rendah)

Dengan menggunakan metode kueri lain, Anda dapat memfilter hasil. Misalnya, Misalnya, kami telah memfilter kategori cookie berdasarkan fitur berikut:

impor panda sebagai pd
impor numpy sebagai np
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', indeks_kol=0)
pivot_tble=pd.pivot_table(dataframe,index=["Kategori","Kota","Wilayah"],nilai=["Harga Satuan", "Kuantitas"],aggfunc=np.jumlah)
pt=pivot_tble.query('Kategori == ["Cookie"]')
cetak (pt)

Keluaran:

Visualisasikan Data Tabel Pivot

Untuk memvisualisasikan data tabel pivot, ikuti metode berikut:

impor panda sebagai pd
impor numpy sebagai np
impor matplotlib.pyplot sebagai plt
kerangka data = pd.read_excel('C:/Users/DELL/Desktop/foodsalesdata.xlsx', indeks_kol=0)
pivot_tble=pd.pivot_table(dataframe,index=["Category","Product"],values=["UnitPrice"])
pivot_tble.plot(kind='bar');
plt.menunjukkan()

Dalam visualisasi di atas, kami telah menunjukkan harga satuan produk yang berbeda beserta kategorinya.

Kesimpulan

Kami menjelajahi bagaimana Anda dapat membuat tabel pivot dari kerangka data menggunakan Pandas python. Tabel pivot memungkinkan Anda menghasilkan wawasan mendalam tentang kumpulan data Anda. Kami telah melihat cara membuat tabel pivot sederhana menggunakan multi-indeks dan menerapkan filter pada tabel pivot. Selain itu, kami juga telah menunjukkan untuk memplot data tabel pivot dan mengisi data yang hilang.

Instal Dolphin Emulator terbaru untuk Gamecube & Wii di Linux
Dolphin Emulator memungkinkan Anda memainkan game Gamecube & Wii pilihan Anda di Komputer Pribadi (PC) Linux. Menjadi emulator game sumber terbuka da...
Cara Menggunakan Cheat Engine GameConqueror di Linux
Artikel ini mencakup panduan tentang menggunakan mesin cheat GameConqueror di Linux. Banyak pengguna yang bermain game di Windows sering menggunakan a...
Emulator Konsol Game Terbaik untuk Linux
Artikel ini akan mencantumkan perangkat lunak emulasi konsol game populer yang tersedia untuk Linux. Emulasi adalah lapisan kompatibilitas perangkat l...