Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Fungsi Pandas `melt()` Menstrukturkan Semula Data Jadual daripada Lajur kepada Baris?

Bagaimanakah Fungsi Pandas `melt()` Menstrukturkan Semula Data Jadual daripada Lajur kepada Baris?

Susan Sarandon
Lepaskan: 2024-12-30 18:49:16
asal
835 orang telah melayarinya

How Can Pandas' `melt()` Function Restructure Tabular Data from Columns to Rows?

Menstrukturkan Semula Data Jadual dengan Panda: Menukar Lajur kepada Baris

Berurusan dengan data yang disusun dalam lajur untuk tarikh atau kategori yang berbeza boleh menyusahkan. Pandas menyediakan penyelesaian yang berkuasa untuk menukar lajur tersebut kepada baris yang mudah dibaca. Artikel ini menangani cabaran khusus untuk mengubah CSV dengan maklumat lokasi dan berbilang lajur tarikh kepada format yang diingini.

Pernyataan Masalah:

Pertimbangkan set data dengan maklumat yang disusun oleh lokasi, setiap satu dengan berbilang tarikh sebagai pengepala lajur. Matlamatnya adalah untuk menstruktur semula data ke dalam format yang setiap baris mewakili lokasi unik, nama, tarikh dan nilai yang sepadan dengannya.

Penyelesaian Pandas:

Tawaran Pandas kaedah yang sangat cekap untuk mencapai transformasi ini menggunakan leburannya fungsi.

Kod:

df.melt(id_vars=["location", "name"],
        var_name="Date",
        value_name="Value")
Salin selepas log masuk

Penjelasan:

  • id_vars: Menentukan lajur yang kekal tidak berubah sebagai baris.
  • var_name: Berikan nama lajur baharu untuk tarikh cair.
  • value_name: Menyediakan nama untuk lajur yang mengandungi yang asal nilai.

Hasil:

Menggunakan fungsi cair pada set data yang disediakan menghasilkan output yang diingini:

location name Date Value
A "test" Jan-2010 12
B "foo" Jan-2010 18
A "test" Feb-2010 20
B "foo" Feb-2010 20
A "test" March-2010 30
B "foo" March-2010 25

Susunan baharu ini memudahkan untuk menganalisis data mengikut lokasi, nama dan tarikh.

Nota:

Untuk versi lama Panda (0.20 atau lebih awal), pendekatan alternatif berikut boleh digunakan:

df2 = pd.melt(df,
                  id_vars=["location", "name"], 
                  var_name="Date",
                  value_name="Value")
df2 = df2.sort(["location", "name"])
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Fungsi Pandas `melt()` Menstrukturkan Semula Data Jadual daripada Lajur kepada Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan