{"id":163395,"date":"2026-01-28T11:24:55","date_gmt":"2026-01-28T10:24:55","guid":{"rendered":"https:\/\/liora.io\/de\/?p=163395"},"modified":"2026-02-25T09:45:22","modified_gmt":"2026-02-25T08:45:22","slug":"dataframe","status":"publish","type":"post","link":"https:\/\/liora.io\/de\/dataframe","title":{"rendered":"Was ist ein Data Frame?"},"content":{"rendered":"<p><strong>Data Frame: Panda ist aus den Bibliotheken von Python nicht mehr wegzudenken. Es handelt sich um eine objektorientierte, sehr leistungsf\u00e4hige Programmiersprache, die bei Data Scientists sehr beliebt ist. Die am h\u00e4ufigsten verwendeten Strukturen dieser Programmbibliothek sind Series und DataFrames. Bei Series handelt es sich um Objekte, die eindimensionalen Arrays entsprechen. Bei DataFrames hingegen entsprechen die Objekte zweidimensionalen Arrays, die aus Zeilen und Spalten bestehen, wodurch die Beziehungen zwischen den verschiedenen Variablen des Datensatzes hervorgehoben werden k\u00f6nnen.&nbsp;<\/strong><\/p>\n<blockquote><p>Ein Data Frame ist eine Reihe von <a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.Series.html\">Pandas Series<\/a>, die durch einen Wert indiziert sind. In diesem Artikel werden wir dann die Struktur von DataFrames vorstellen, ihre verschiedenen Attribute und grundlegenden Methoden betrachten, indem wir ihre N\u00fctzlichkeit und ihre Funktionsweise erl\u00e4utern.<\/p><\/blockquote>\n<h2 class=\"wp-block-heading\" id=\"h-1-wie-sieht-ein-data-frame-aus\">1) Wie sieht ein Data Frame aus ?<\/h2>\n<p>Das Format von DataFrame kann mit Python-W\u00f6rterb\u00fcchern verglichen werden. Tats\u00e4chlich sind die Schl\u00fcssel die Spaltennamen und die Werte die Serien.<\/p>\n<p>Die Struktur von DataFrame ist einer Excel-Tabelle \u00e4hnlich.<\/p>\n<blockquote><p>Jede Zeile enth\u00e4lt Daten, die f\u00fcr verschiedene Spalten spezifisch sind. Diese Spalten sind die Variablen. Der Name der Zeilen eines DataFrames hei\u00dft \u201eIndex\u201c, der standardm\u00e4\u00dfig immer mit 0 beginnt.<\/p><\/blockquote>\n<p>Es ist jedoch m\u00f6glich, die Zeilen eines DataFrames nach jedem m\u00f6glichen Wert zu indizieren: Kundenkennung oder Zeiteinheit. Die Namen der Spalten sind mit dem Namen einer bestimmten Variablen gekennzeichnet, der verschiedene Werte zugewiesen werden.<\/p>\n<p>Die Werte dieser Variablen k\u00f6nnen viele Datenformate annehmen. Jede Spalte ist einem Datentyp zugeordnet, beispielsweise einer Zeichenfolge (Objekt), die sich auf qualitative Daten bezieht, oder einer Spalte mit einem ganzzahligen Typ, der ganzen Zahlen entspricht.<\/p>\n<p>Es ist m\u00f6glich, den Typ der Variablen mit der Methode <b>astype()<\/b> nach Bedarf zu \u00e4ndern.<\/p>\n<figure>\n\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"768\" height=\"843\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/8\/2022\/09\/Sans-titre-2-02.webp\" alt=\"\" loading=\"lazy\"><figcaption>Data Frame<\/figcaption><\/figure>\n<h2 class=\"wp-block-heading\" id=\"h-2-wichtige-attribute-und-methoden\">2) Wichtige Attribute und Methoden<\/h2>\n<p>Es gibt viele M\u00f6glichkeiten, DataFrames zu verwenden. Die Attribute und Methoden dieser Daten-Struktur sind sehr zahlreich. Dieser Artikel konzentriert sich haupts\u00e4chlich auf die grundlegenden Methoden zum Erlernen des Umgangs mit DataFrames.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-a-import-und-beobachtung-des-datensatzes\">A- Import und Beobachtung des Datensatzes<\/h3>\n<h5>Import und Information von Variablen<\/h5>\n<p>Um einen Datensatz zu importieren, bietet die Pandas-Bibliothek eine sehr praktische Methode, n\u00e4mlich <b>pd.read_csv()<\/b>. Wenn die Datei, die den Datensatz enth\u00e4lt, in einem anderen Format als <i>Comma Separated Value<\/i> vorliegt, muss der richtige Dateityp gew\u00e4hlt werden.<\/p>\n<p>Beispielsweise wird eine Excel-Datei wie folgt importiert: <b>pd.read_excel()<\/b>.<\/p>\n<p>Diese Methode importiert das Dataset in eine DataFrame-Struktur.<\/p>\n<p>Dann muss die Methode<b> info()<\/b> verwendet werden, um die Informationen \u00fcber den DataFrame zu erhalten. Diese Methode gibt den Variablentyp, die Anzahl der Spalten, die Anzahl der Nicht-Null-Zeilen, den Indextyp, die Speichergr\u00f6\u00dfe des Datensatzes usw. zur\u00fcck.<\/p>\n<p>Es wird auch empfohlen, die Methode <b>describe() <\/b>zu verwenden, die Dir einige beschreibende Statistiken \u00fcber den DataFrame mitteilt.<\/p>\n<p>Es erm\u00f6glicht beispielsweise, den Mindest- und H\u00f6chstwert jeder Variablen, die Quartile oder die Standardabweichung der Spalten zu kennen.<\/p>\n<p>Diese Methode ist n\u00fctzlich, um sich ein Bild von der Verteilung von Variablen zu machen.<\/p>\n<p>?Auch interessant:<\/p>\n<table dir=\"ltr\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<colgroup>\n<col width=\"1116\"><\/colgroup>\n<tbody>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Xplenty: Die wichtigsten Punkte dieses Datenintegrationssystems &quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/xplenty-die-wichtigsten-punkte-dieses-datenintegrationssystems\"><a href=\"https:\/\/liora.io\/de\/xplenty-die-wichtigsten-punkte-dieses-datenintegrationssystems\" target=\"_blank\" rel=\"noopener\">Xplenty: Die wichtigsten Punkte dieses Datenintegrationssystems <\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Was ist Technologiebeobachtung? Definition und Herausforderungen&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/was-ist-technologiebeobachtung-definition-und-herausforderungen\"><a href=\"https:\/\/liora.io\/de\/was-ist-technologiebeobachtung-definition-und-herausforderungen\" target=\"_blank\" rel=\"noopener\">Was ist Technologiebeobachtung? Definition und Herausforderungen<\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Aurora GenAI: Der neue Supercomputer mit einer Billion Parametern von Intel &quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/aurora-genai-der-neue-supercomputer-mit-einer-billion-parametern-von-intel\"><a href=\"https:\/\/liora.io\/de\/aurora-genai-der-neue-supercomputer-mit-einer-billion-parametern-von-intel\" target=\"_blank\" rel=\"noopener\">Aurora GenAI: Der neue Supercomputer mit einer Billion Parametern von Intel <\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Computational Resource: Definition, Funktionsweise und Rolle &quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/computational-resource-definition-funktionsweise-und-rolle\"><a href=\"https:\/\/liora.io\/de\/computational-resource-definition-funktionsweise-und-rolle\" target=\"_blank\" rel=\"noopener\">Computational Resource: Definition, Funktionsweise und Rolle <\/a><\/td>\n<\/tr>\n<tr>\n<td data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;Cloudera: Wie kann man sich auf dieser Plattform weiterbilden?&quot;}\" data-sheets-hyperlink=\"https:\/\/liora.io\/de\/cloudera-wie-kann-man-sich-auf-dieser-plattform-weiterbilden\"><a href=\"https:\/\/liora.io\/de\/cloudera-wie-kann-man-sich-auf-dieser-plattform-weiterbilden\" target=\"_blank\" rel=\"noopener\">Cloudera: Wie kann man sich auf dieser Plattform weiterbilden?<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h5>Erster Blick auf den DataFrame<\/h5>\n<p>Wenn der Datensatz importiert wird, ist es notwendig, einen \u00dcberblick \u00fcber den DataFrame zu haben.<\/p>\n<p>Der erste Schritt besteht darin, das Attribut <b>shape<\/b> zu verwenden, das Dich \u00fcber die Dimension des DataFrame informiert, indem es ein Tupel zur\u00fcckgibt (<i>number_of_rows, number_of_columns<\/i>).<\/p>\n<p>In Bezug auf das Verst\u00e4ndnis des Datensatzes sind drei Methoden sehr n\u00fctzlich, um die Zeilen des DataFrame zu visualisieren:<\/p>\n<ul>\n<li style=\"font-weight: 400\">Die Methode <b>head()<\/b> gibt die ersten f\u00fcnf Zeilen des DataFrame zur\u00fcck, wenn keine Zahl in Klammern angegeben ist.<\/li>\n<li style=\"font-weight: 400\">Hingegen kannst Du mit der Methode<b> tail()<\/b> die letzten f\u00fcnf Zeilen des DataFrame anzeigen.<\/li>\n<\/ul>\n<p>Diese beiden Methoden erm\u00f6glichen eine Visualisierung des Beginns und des Endes des Datensatzes. Dies hat einen echten Vorteil f\u00fcr Daten vom Typ Times Series, um eine einfache Vorstellung von der Entwicklung der Daten im Laufe der Zeit zu haben.<\/p>\n<p>Es erm\u00f6glicht \u00fcberhaupt zu sehen, ob die Daten eine bestimmte Bedeutung behalten: Wenn der Beginn der DataFrame sich erheblich vom Ende des letzteren unterscheidet, ist es notwendig, die Ursache zu verstehen und zu versuchen, dieses Problem zu l\u00f6sen, bevor Daten manipuliert werden.<\/p>\n<ul>\n<li style=\"font-weight: 400\">Wenn eine eher zuf\u00e4llige Visualisierung von Zeilen gew\u00fcnscht wird, sollte die Methode <b>sample() <\/b>bevorzugt werden. Es gibt Zeilen zuf\u00e4llig zur\u00fcck. Standardm\u00e4\u00dfig gibt das Ergebnis nur eine Zeile des DataFrame zur\u00fcck.<\/li>\n<li style=\"font-weight: 400\">Es ist also besser, eine Ganzzahl in die Klammer zu schreiben, um eine gr\u00f6\u00dfere Anzahl von Zeilen anzuzeigen und somit eine bessere Vorstellung vom Inhalt des DataFrame zu bekommen.<\/li>\n<\/ul>\n<h5>Slicing<\/h5>\n<p>Wir k\u00f6nnen unsere Daten mit <b>Slice<\/b> filtern. Beispielsweise gibt <b>df[:2] <\/b>die ersten beiden Zeilen unseres DataFrame zur\u00fcck.<\/p>\n<p>Sei aber vorsichtig: Wir d\u00fcrfen nicht vergessen, dass die letzte Zahl exogen ist.<\/p>\n<p>Dies bedeutet, dass das Slicing in unserem Beispiel die Zeilen bei Index 0 und 1 zur\u00fcckgibt.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-b-datenmanipulation\">B- Datenmanipulation<\/h3>\n<h5>Daten hinzuf\u00fcgen und \u00e4ndern<\/h5>\n<p>Wie in der Einleitung erkl\u00e4rt, sind DataFrames zweidimensionale Arrays, die den Achsen von Zeilen (Achse = 0) und Spalten (Achse = 1) entsprechen.<\/p>\n<p>Es ist m\u00f6glich, so viele Zeilen oder Spalten wie n\u00f6tig hinzuzuf\u00fcgen, indem Du die Achse angibst, in der wir diese neuen Werte hinzuf\u00fcgen m\u00f6chten.<\/p>\n<p>Das Interessante an DataFrames ist, dass es sehr einfach ist, Daten in dieser Struktur abzurufen, zu \u00e4ndern, zu laden oder zu suchen. Stellen wir uns einen nach Zeit indizierten DataFrame vor.<\/p>\n<p>Wir m\u00f6chten alle Daten vom 18. Dezember 2020 abrufen. Mit der Funktion <b>iloc<\/b> ist es m\u00f6glich, alle variablen Daten an diesem Datum abzurufen.<\/p>\n<p>Au\u00dferdem ist es m\u00f6glich, mit dieser Funktion einen Wert einer der Spalten zu ersetzen, indem der Index und der Name der Spalte angegeben werden.<\/p>\n<p>Beispielsweise fehlt der Wert am 18. Dezember 2020 ; wir aber wissen, dass der tats\u00e4chliche Wert 25 ist. Du kannst einfach <b>df.iloc[Index_der_Zeile, \u201ecolumns\u201c] = 25<\/b> eingeben.<\/p>\n<h5>Boolean Indexing<\/h5>\n<p>Es ist m\u00f6glich, die Daten nach einer oder mehreren Bedingungen zu filtern. Damit kann man spezifische Daten und\/oder bestimmte Daten f\u00fcr einen bestimmten Bedarf abrufen und alle n\u00fctzlichen und notwendigen Informationen anzeigen.<\/p>\n<p>Dies wird als <b>Boolean Indexing<\/b> bezeichnet. Mit dieser Technik kann man wissen, ob der Wert eines Tests wahr oder falsch ist. Das Ergebnis wird in Form eines Vektors zur\u00fcckgegeben. Beispielsweise haben wir einen Datensatz, in dem jede Spalte ein Monat des Jahres ist. Der Typ des DataFrame ist DateTimeIndex.<\/p>\n<p>Wir m\u00f6chten die Zeilen abrufen, in denen der Monat Januar streng gr\u00f6\u00dfer als 25 ist. So schreiben wir den Code: <b>df[df[&#8222;Januar&#8220;] &gt; 25]<\/b>.<\/p>\n<p>Diese Methode des <b>Boolean Indexing<\/b> filtert die Daten, um nur die Zeilen zur\u00fcckzugeben, die die Bedingung \u201eWerte gr\u00f6\u00dfer als 25 f\u00fcr den Monat Januar\u201c erf\u00fcllen. Im Allgemeinen wird <b>Boolean Indexing<\/b> in folgendem Format geschrieben: <b>df[\u201eBedingung\u201c].<\/b><\/p>\n<h5>Die Spalten<\/h5>\n<p>DataFrames werden verwendet, um gro\u00dfe Datenmengen zu bearbeiten und zu speichern. In einem professionellen Umfeld werden jedoch regelm\u00e4\u00dfig riesige Datenmengen mit sehr vielen Variablen verarbeitet.<\/p>\n<p>Die Erh\u00f6hung der Anzahl der Variablen wirkt sich insbesondere auf die Organisation von DataFrames aus.<\/p>\n<p>Je h\u00f6her die Anzahl der Spalten, desto weniger einfach ist es, die Namen der Variablen zu visualisieren.<\/p>\n<p>Um dieses Problem zu l\u00f6sen, gibt es mehrere m\u00f6gliche Manipulationen.<\/p>\n<p>Wenn der DataFrame zehn verschiedene Variablen hat, ist es m\u00f6glich, ihre Namen mit dem Attribut <b>df.columns<\/b> herauszufinden.<\/p>\n<p>Wenn der Datensatz jedoch achthundert Spalten hat, wird die Anzeige der Variablennamen nicht vollst\u00e4ndig sein.<\/p>\n<p>Um dieses Problem zu l\u00f6sen, ist es m\u00f6glich, die Methode <b>df.columns.toList()<\/b> zu verwenden, mit der Du die Spaltennamen in einer Python-Liste speichern kannst.<\/p>\n<p>Um herauszufinden, ob es Zeilen gibt, die nicht eindeutig und m\u00f6glicherweise Duplikate sind, ist die Methode <b>df[&#8222;columns&#8220;].value_counts() <\/b>eine einfache M\u00f6glichkeit, dies zu \u00fcberpr\u00fcfen.<\/p>\n<p>Wenn wir es gewohnt sind, mit Tabellen zu arbeiten, ist es zur besseren Lesbarkeit m\u00f6glich, <b>to_frame()<\/b> am Ende des Codes hinzuzuf\u00fcgen, um die Ergebnisse im Format eines DataFrame anzuzeigen.<\/p>\n<p>Diese Methode von <b>value_counts()<\/b> erm\u00f6glicht es, das Auftreten der Modalit\u00e4ten einer Variablen zu erfahren.<\/p>\n<h5>Fehlende Werte<\/h5>\n<p>Bei der Arbeit an einem Data-Science-Projekt kommt es h\u00e4ufig vor, dass man sich mit fehlenden und\/oder falschen Werten befasst.<\/p>\n<p>DataFrames l\u00f6sen dieses Problem sehr einfach. Beispielsweise besteht bei qualitativen Daten eine der Methoden zum Ersetzen fehlender Werte darin, Daten nach dem Kategoriemodus zu verarbeiten.<\/p>\n<p>Verwende einfach den folgenden Code, um diese Manipulation zu erreichen: <b>df[column].fillna(df[columns].mode()[0]).<\/b> Man kann zum Beispiel auch quantitative Werte durch den Mittelwert ersetzen.<\/p>\n<p>So erm\u00f6glichen DataFrames, Korrelationen und Beziehungen zwischen Daten dank der verschiedenen m\u00f6glichen Manipulationen zu verbessern, Filter f\u00fcr die den Teams pr\u00e4sentierten Daten zu definieren, riesige Datenmengen zu speichern und zu manipulieren.<\/p>\n<p>Zusammenfassend l\u00e4sst sich sagen, dass DataFrames es Data Scientists erm\u00f6glichen, die Bedeutung von ihren Daten zu verstehen, indem sie \u00fcber die durchzuf\u00fchrenden Bedingungen und Verwendungen entscheiden.<\/p>\n<p>Wenn Du lernen m\u00f6chtest, welche Bedeutung Daten haben, sind unsere Data Science&nbsp; Ausbildungen genau das Richtige f\u00fcr Dich!<\/p>\n<p><a href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\"><br \/>\nEntdecke unsere Programme<br \/>\n<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Data Frame: Panda ist aus den Bibliotheken von Python nicht mehr wegzudenken. Es handelt sich um eine objektorientierte, sehr leistungsf\u00e4hige Programmiersprache, die bei Data Scientists sehr beliebt ist. Die am h\u00e4ufigsten verwendeten Strukturen dieser Programmbibliothek sind Series und DataFrames. Bei Series handelt es sich um Objekte, die eindimensionalen Arrays entsprechen. Bei DataFrames hingegen entsprechen die Objekte zweidimensionalen Arrays, die aus Zeilen und Spalten bestehen, wodurch die Beziehungen zwischen den verschiedenen Variablen des Datensatzes hervorgehoben werden k\u00f6nnen.<\/p>\n","protected":false},"author":47,"featured_media":219710,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2472],"class_list":["post-163395","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-ki"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/163395","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/comments?post=163395"}],"version-history":[{"count":3,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/163395\/revisions"}],"predecessor-version":[{"id":219711,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/163395\/revisions\/219711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media\/219710"}],"wp:attachment":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media?parent=163395"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/categories?post=163395"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}