Styling von Pandas-DataFrames für anpassbare Tabellenfärbung
Im Bereich der Datenanalyse hat sich Pandas zu einem Eckpfeiler für seine umfassenden Datenmanipulationsfähigkeiten entwickelt . Die neuesten Versionen haben eine leistungsstarke neue Funktion eingeführt: das DataFrame-Styling. Mit dieser Funktionalität können Benutzer die visuelle Darstellung ihrer Datenrahmen verbessern und durch Farbanpassung visuelle Hinweise und Klarheit bieten.
Um diese neu entdeckte Leistungsfähigkeit zu demonstrieren, betrachten Sie das Problem der Umwandlung eines Standard-Pandas-Datenrahmens in eine Tabelle mit einer bestimmten Farbe. codierte Elemente:
Problem:
Bei einem gegebenen Datenrahmen, der sowohl Daten als auch Indexinformationen enthält, besteht die Aufgabe darin, das Erscheinungsbild der Tabelle durch Anwenden von Farben auf bestimmte Zeilen zu ändern. Indexwerte und Header. In diesem Fall ist es wünschenswert, alle Werte in Zeilen, die „MOS“ entsprechen, in einer bestimmten Farbe hervorzuheben und gleichzeitig die Kopfzeile, die Indexspalten ganz links und die übrigen Tabellenzellen durch unterschiedliche Hintergrundfarben zu unterscheiden.
Lösung:
Um diesem Bedarf gerecht zu werden, kommt die neue Styling-Funktionalität von Pandas ins Spiel. Die Methode DataFrame.style.apply() bietet eine flexible Schnittstelle zum Anwenden benutzerdefinierter Stilregeln auf den Datenrahmen. Durch die Definition einer Stilfunktion können wir das visuelle Erscheinungsbild einzelner Zellen basierend auf ihrem Inhalt oder ihren Metadaten manipulieren.
In diesem Fall erstellen wir eine benutzerdefinierte Stilfunktion, die prüft, ob der Indexwert einer Zelle für die zweite Ebene ist 'MOS'. Wenn ja, wenden wir die Farbe „Dunkelorange“ auf den Text an. Andernfalls verwenden wir „darkblue“.
<code class="python">import pandas as pd # Create dataframe arrays = [['Midland', 'Midland', 'Hereford', 'Hereford', 'Hobbs','Hobbs', 'Childress', 'Childress', 'Reese', 'Reese', 'San Angelo', 'San Angelo'], ['WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS']] tuples = list(zip(*arrays)) index = pd.MultiIndex.from_tuples(tuples) df = pd.DataFrame(np.random.randn(12, 4), index=arrays, columns=['00 UTC', '06 UTC', '12 UTC', '18 UTC']) # Define custom style function def highlight_MOS(s): is_mos = s.index.get_level_values(1) == 'MOS' return ['color: darkorange' if v else 'color: darkblue' for v in is_mos] # Apply style function s = df.style.apply(highlight_MOS)</code>
Der resultierende gestylte Datenrahmen (verfügbar am Ende des style.apply()-Aufrufs) ergibt eine Tabelle mit dunkelorange gefärbten „MOS“-Zeilen, während die Die Kopfzeile, die Indexspalten ganz links und die übrigen Zellen behalten ihre ursprünglichen Farben. Diese Anpassung fügt der Tabelle eine visuelle Unterscheidung hinzu und erleichtert so die Identifizierung und Analyse bestimmter Datenpunkte.
Das obige ist der detaillierte Inhalt vonWie können Sie den Pandas DataFrame-Stil verwenden, um bestimmte Elemente einer Tabelle farblich zu kennzeichnen und die Datenvisualisierung zu verbessern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!