Kaedah untuk Menghimpunkan Baris DataFrame untuk Mencipta Senarai dalam GroupBy
Dalam bidang manipulasi data menggunakan panda, selalunya perlu untuk memanipulasi baris DataFrame ke dalam format tertentu. Satu keperluan biasa ialah mengumpulkan baris berdasarkan lajur tertentu dan mendapatkan semula nilai daripada lajur lain sebagai senarai.
Pertimbangkan DataFrame dengan lajur 'a' dan 'b', seperti ditunjukkan di bawah:
a b A 1 A 2 B 5 B 5 B 4 C 6
Matlamatnya adalah untuk mengubah DataFrame ini kepada yang baharu di mana baris dikumpulkan mengikut lajur 'a' dan nilai daripada lajur 'b' ialah ditukar kepada senarai untuk setiap kumpulan. Output yang diingini akan kelihatan seperti:
A [1, 2] B [5, 5, 4] C [6]
Untuk mencapai ini, kita boleh memanfaatkan fungsi 'groupby' dan 'apply' panda, seperti yang ditunjukkan di bawah:
# Import the pandas library import pandas as pd # Create a DataFrame from the provided data df = pd.DataFrame( {'a':['A','A','B','B','B','C'], 'b':[1,2,5,5,4,6]}) # Group the DataFrame by column 'a' grouped = df.groupby('a') # Apply the list function to each group to get the 'b' values as lists group_b_lists = grouped['b'].apply(list) # Reset the index of the resulting Series to obtain a DataFrame df_result = group_b_lists.reset_index(name='b_lists') # Print the transformed DataFrame print(df_result)
Kod ini dengan berkesan mengumpulkan DataFrame asal mengikut lajur 'a', menggunakan fungsi senarai pada setiap kumpulan dan memberikan senarai yang terhasil kepada lajur baharu yang dipanggil 'b_lists'. DataFrame yang terhasil kemudiannya dicetak untuk memaparkan output yang diingini.
Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Baris DataFrame Pandas dan Mengubah Nilai Lajur kepada Senarai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!