Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Fungsi `cair` Pandas Boleh Membentuk Semula Data dengan Lajur Tarikh menjadi Baris?

Bagaimanakah Fungsi `cair` Pandas Boleh Membentuk Semula Data dengan Lajur Tarikh menjadi Baris?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-30 11:02:14470semak imbas

How Can Pandas' `melt` Function Reshape Data with Date Columns into Rows?

Tukar Lajur kepada Baris dengan Panda

Apabila data jadual mengandungi tarikh sebagai pengepala lajur, menukar lajur tersebut kepada baris dengan nilai yang sepadan boleh menjadi tugas yang berharga. Untuk mencapai transformasi ini, pustaka Pandas Python menawarkan penyelesaian yang mudah.

Masalah

Data data yang disediakan mempamerkan struktur di mana maklumat dikumpulkan mengikut lokasi untuk pelbagai tarikh, setiap satu diwakili oleh pengepala lajur yang berbeza. Matlamatnya adalah untuk membentuk semula data ini ke dalam format yang setiap baris mewakili lokasi, tarikh dan nilai yang berkaitan.

Penyelesaian

Untuk menukar lajur kepada baris, Pandas menyediakan fungsi cair. Fungsi ini membolehkan kami menentukan lajur yang harus berfungsi sebagai pengepala lajur dan yang harus berfungsi sebagai pengepala baris. Dalam konteks ini, nama dan lokasi ditetapkan sebagai pengepala baris dan pengepala tarikh dileburkan ke dalam satu lajur Tarikh, manakala nilainya menjadi lajur Nilai.

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

DataFrame yang terhasil akan serupa dengan output dijangka:

  location  name        Date  Value
0        A  "test"    Jan-2010     12
1        B   "foo"    Jan-2010     18
2        A  "test"    Feb-2010     20
3        B   "foo"    Feb-2010     20
4        A  "test"  March-2010     30
5        B   "foo"  March-2010     25

Untuk versi lama Panda (<0.20), gabungan pd.melt dan pengisihan boleh mencapai hasil yang diingini:

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

Atas ialah kandungan terperinci Bagaimanakah Fungsi `cair` Pandas Boleh Membentuk Semula Data dengan Lajur Tarikh menjadi Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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