Bagaimanakah cara saya mencairkan bingkai data panda?
Mencairkan bingkai data melibatkan pemindahan data daripada format lebar kepada format panjang, di mana berbilang lajur digabungkan dan menjadi satu.
Bagaimana cara saya menggunakan cair?
Untuk menggunakan melt pada bingkai data, anda boleh menggunakan fungsi pd.melt(). Fungsi ini mengambil hujah berikut:
Bilakah saya boleh menggunakan cair?
Mencairkan bingkai data berguna apabila anda ingin:
Bagaimanakah saya boleh menyelesaikan masalah berkaitan lelehan tertentu?
Masalah 1: Memindahkan bingkai data
Untuk menukar bingkai data (cth., menukar lajur kepada baris), gunakan yang berikut kod:
df.melt(id_vars=['Name', 'Age'], var_name='Subject', value_name='Grades')
Masalah 2: Memilih lajur khusus untuk lebur
Untuk mencairkan lajur tertentu sahaja, gunakan argumen value_vars, seperti ini:
df.melt(id_vars=['Name', 'Age'], value_vars=['Math'], var_name='Subject', value_name='Grades')
Masalah 3: Pengelompokan dan penyusunan cair data
Untuk mengumpulkan dan memesan data cair, anda boleh menggunakan fungsi groupby() dan sort_values():
df.melt(id_vars=['Name', 'Age']) \ .groupby('Grades') \ .agg(', '.join) \ .sort_values('Grades')
Masalah 4: Menyahcairkan bingkai data yang cair
Untuk menukar bingkai data cair kembali kepada format asalnya, gunakan fungsi pivot_table():
df.pivot_table("Grades", ['Name', 'Age'], 'Subject', aggfunc='first')
Masalah 5: Pengumpulan mengikut nama dan mengasingkan mata pelajaran dan gred
Untuk mengumpulkan mengikut nama dan memisahkan mata pelajaran dan gred, gabungkan lajur menggunakan melt() dan kemudian gunakan groupby():
df.melt(id_vars=['Name', 'Age']) \ .groupby('Name') \ .agg(', '.join)
Masalah 6: Mencairkan keseluruhan kerangka data
Untuk mencairkan keseluruhan kerangka data, tinggalkan argumen value_vars:
df.melt(var_name='Column', value_name='Value')
Atas ialah kandungan terperinci Cara Mencairkan dan Mencairkan DataFrames Panda: Panduan Komprehensif?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!