Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk mewarna sel tertentu yang diberi indeks baris dan nama lajur dalam panda?
Saya mempunyai df bingkai data dengan bentuk (100,10) dan lajur_ke_warna kamus untuk setiap baris.
columns_to_color = { 0: ['col1', 'col2', 'col9'], # Columns 1, 2 and 9 should be colored for row 0 1: ['col1', 'col5', 'col8'], # Columns 1, 5 and 8 should be colored for row 1 2: ['col3', 'col4', 'col7'], # Columns 3, 4 and 7 should be colored for row 2 .......
Bagaimana untuk mewarnakan sel khusus untuk setiap baris lajur ini? Dan kemudian simpan untuk cemerlang?
Anda boleh menggunakan 。 style.apply()
seperti ini:
df.style.apply( lambda row: [ 'font-weight: bold' if col in columns_to_color[row.name] else '' for col in row.index], axis=1)
(Saya guna bold sahaja untuk kemudahan.)
Kemudian untuk menukar kepada excel, gunakan .to_excel()
.
Contoh:
df = pd.DataFrame({f'col{n}': range(10*n, 10*n + 3) for n in range(10)})
Selepas apply
(dalam idea saya):
Atas ialah kandungan terperinci Bagaimana untuk mewarna sel tertentu yang diberi indeks baris dan nama lajur dalam panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!