{"id":171170,"date":"2026-01-28T13:01:56","date_gmt":"2026-01-28T12:01:56","guid":{"rendered":"https:\/\/liora.io\/de\/?p=171170"},"modified":"2026-02-06T04:30:09","modified_gmt":"2026-02-06T03:30:09","slug":"data-cleaning-python-programmierung-teil-3","status":"publish","type":"post","link":"https:\/\/liora.io\/de\/data-cleaning-python-programmierung-teil-3","title":{"rendered":"Data Cleaning: Python Programmierung Teil 3"},"content":{"rendered":"<style><br \/>\n.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}<\/style>\n<p><strong>Willkommen zur dritten Episode unserer Einf\u00fchrung in die Programmierung mit Python zum Thema Data Cleaning. In der vorherigen Folge hast Du die verschiedenen Operatoren in Python kennengelernt, sowie die Funktionsweise von Schleifen und verschiedenen n\u00fctzlichen Funktionen in Python. In diesem Teil lernst du zwei Schritte kennen, die f\u00fcr jedes Machine-Learning-Projekt unerl\u00e4sslich sind: Data Cleaning und Data Processing.<\/strong><\/p>\n<style><br \/>\nbody.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}<\/style>\n<h2 class=\"wp-block-heading\" id=\"h-dataimport-im-datacleaning\">Dataimport im DataCleaning<\/h2>\nBevor Du in <a href=\"https:\/\/liora.io\/de\/python-schulung\">Python<\/a> mit Daten arbeiten kannst, wie z. B. Bereinigung, Umwandlung und Visualisierung, musst du sie importieren.\n\nDazu verwenden wir das<a href=\"https:\/\/pandas.pydata.org\/docs\/\"> Pandas-Modul.<\/a> Es wurde entwickelt, um Python die Tools zu geben, die es braucht, um mit gro\u00dfen Datenmengen umzugehen. Dieses Modul hat das Ziel, das beste Werkzeug zur Datenmanipulation zu werden: leistungsstark, benutzerfreundlich und flexibel zugleich. Pandas ist heute das am h\u00e4ufigsten verwendete Modul zur Verwaltung von Datenbanken in den Formaten: CSV, Excel, &#8230;\n\ncsv Datei:&nbsp;\n\nEiner der h\u00e4ufigsten Datentypen ist das CSV-Format, ein Akronym f\u00fcr comma separated value (kommagetrennte Werte).\n\nDie allgemeine Struktur von CSV-Dateien verwendet Zeilen als Beobachtungen und Spalten als Attribute.\n\nHier ist die Vorgehensweise, um CSV-Dateien zu lesen:\n\nEs ist auch m\u00f6glich, der Funktion <strong>pd.read_csv<\/strong> weitere Argumente hinzuzuf\u00fcgen:&nbsp;\n\n&#8211; Das <strong>sep-Argument<\/strong> in der Funktion, mit dem die Art der Trennung f\u00fcr das Lesen unserer Daten angegeben werden kann (z. B. , \/ ; \/ &#8211; &#8230;).\n\n&#8211; Das Argument header bestimmt die Nummer der Zeile, die die Namen der Variablen enth\u00e4lt; standardm\u00e4\u00dfig ist <strong>header = 0.<\/strong>\n\n&#8211; Mit dem Argument<strong> index_col<\/strong> wird eine Spalte des DataFrame als Index festgelegt.\n\nExcel-Dateien:\n\n<a href=\"https:\/\/liora.io\/de\/zur-excel-zeile-gehen\">Excel-Dateien<\/a> sind zusammen mit CSV-Dateien die am h\u00e4ufigsten verwendeten Dateien.\n\n&nbsp;Hier ist die Vorgehensweise mit der Funktion pd.ExcelFile():\n\nWenn wir keinen Blattnamen angeben, wird standardm\u00e4\u00dfig das erste Blatt angezeigt. Wenn wir ein bestimmtes Blatt anzeigen wollen, k\u00f6nnen wir dies mit der letzten Zeile des Codes oben tun, indem wir den Namen des Blattes angeben.\n\nBevor wir mit der<strong> Datenmodellierung<\/strong> beginnen, m\u00fcssen wir eine Reihe von vorbereitenden Schritten durchlaufen, die f\u00fcr ein Machine-Learning-Projekt unerl\u00e4sslich sind. Obwohl sie m\u00fchsam sind, sollten sie nicht au\u00dfer Acht gelassen werden, da sie die Qualit\u00e4t unserer Modellierung garantieren. Es wird oft von <strong>&#8222;garbage in &#8211; garbage out&#8220;<\/strong> gesprochen. Ein Modell, dessen Datenqualit\u00e4t nicht optimal ist, wird keine guten Vorhersagen machen k\u00f6nnen.&nbsp;\n\nDie Vorstufen, auch <strong>Data-Pre-Processing-Schritte<\/strong> genannt, umfassen daher die Schritte der Status\u00fcberpr\u00fcfung, der Datenbereinigung und der Datenvorbereitung.&nbsp;\n<h2 class=\"wp-block-heading\" id=\"h-verifizierung\">Verifizierung:<\/h2>\nZuallererst ist es wichtig, sich einen <strong>\u00dcberblick \u00fcber die Daten zu verschaffen.<\/strong> Zum Beispiel h\u00e4ngt die Aufbereitung unserer Daten von der Art der Variablen ab. Bei numerischen Daten ist es interessant, den Wertebereich, den Mittelwert, die Standardabweichung und andere grundlegende<a href=\"https:\/\/liora.io\/de\/statistischen-test\"> Statistiken<\/a> zu kennen. Dieser \u00dcberpr\u00fcfungsschritt beinhaltet auch die \u00dcberpr\u00fcfung, ob es Duplikate gibt.&nbsp;\n<h2 class=\"wp-block-heading\" id=\"h-data-cleaning\">Data Cleaning<\/h2>\n<h3 class=\"wp-block-heading\" id=\"h-umgang-mit-fehlenden-daten\">Umgang mit fehlenden Daten<\/h3>\nDie<a href=\"https:\/\/liora.io\/de\/datenbank-data-management-weiterbildung\"> Datenbanken<\/a>, mit denen wir t\u00e4glich zu tun haben, enthalten sehr oft fehlende Daten. Es gibt viele Gr\u00fcnde f\u00fcr diese Problematik: Tippfehler, die zu Datenentfernungen gef\u00fchrt haben, urspr\u00fcnglich nicht vorhandene Daten usw. Die meisten Datenbanken sind in der Lage, die Daten zu l\u00f6schen.&nbsp;\n\nDas<strong> L\u00f6schen von Daten<\/strong> ist der letzte Ausweg, da es zu einem gro\u00dfen Verlust an Informationen f\u00fchrt. Je mehr Informationen wir haben, desto besser ist die Vorhersagequalit\u00e4t unseres Modells.&nbsp;\n\nIn manchen F\u00e4llen wird diese Strategie jedoch trotzdem gew\u00e4hlt. In der Regel wird man sich daf\u00fcr entscheiden, eine Datenreihe zu l\u00f6schen, wenn sie voller fehlender Daten ist, insbesondere wenn die wichtigsten Variablen fehlen, wie z. B. die Target.\n\nWenn die meisten Daten fehlen und die Variable nur eine geringe <strong>Bedeutung f\u00fcr die vorhergesagte Variable<\/strong> hat, kann man sich daf\u00fcr entscheiden, eine ganze Variable zu l\u00f6schen.&nbsp;\n\nAnstatt diese Daten zu l\u00f6schen, sollte man die Imputation von Werten bevorzugen. Diese [cm_tooltip_parse] Methode [\/cm_tooltip_parse] hilft, den Informationsverlust zu reduzieren. Es gibt verschiedene Methoden, die wir anwenden k\u00f6nnen. Man kann z. B. bei numerischen Variablen den <strong>Median- oder Mittelwert<\/strong> dieser Variable imputieren (bei der Imputation des Mittelwerts ist auf Extremwerte zu achten). Bei kategorialen Variablen kann man den Mehrheitswert innerhalb der Variable imputieren, indem man den Modus verwendet.&nbsp;\n\nEine feinere Imputationsmethode ist die<strong> Imputation unter Ber\u00fccksichtigung der Werte in den anderen Variablen<\/strong>. Du kannst den Mittelwert, den Median und den Modus f\u00fcr Gruppen von Individuen innerhalb des <a href=\"https:\/\/liora.io\/de\/dataframe\">DataFrame<\/a> berechnen, um den zu imputierenden Wert zu verfeinern.\n<h2 class=\"wp-block-heading\" id=\"h-ausrei-er-outlier\">Ausrei\u00dfer \/Outlier<\/h2>\nEin <strong>Ausrei\u00dfer<\/strong> ist ein Wert, der von der Verteilung der Variable abweicht. Dies kann auf einen Tippfehler oder einen Messfehler zur\u00fcckzuf\u00fchren sein, kann aber auch ein extremer Wert sein. Ein <strong>Extremwert<\/strong> ist ein Wert, der nicht fehlerhaft ist, aber dennoch stark von den \u00fcbrigen Werten der Variable abweicht.&nbsp;\n\nEine recht einfache M\u00f6glichkeit, solche Werte zu erkennen, ist die Erstellung eines Box-Plots f\u00fcr jede der Variablen. Ein Boxplot ist ein rechteckiges Diagramm, in dem die <strong>Statistiken der Variablen (Quartile (Q1, Median, Q3))<\/strong> beschrieben werden. Die Grenzen des Diagramms begrenzen die Werte gem\u00e4\u00df der Verteilung der Variablen. \u00dcber diese Grenzen hinaus werden diese Werte als Ausrei\u00dfer betrachtet.\n\nIm Rahmen eines <a href=\"https:\/\/liora.io\/de\/machine-learning-definition-funktionsweise-anwendungen\">Machine-Learning-Projekts<\/a> wird h\u00e4ufig die Entscheidung getroffen, einen Ausrei\u00dfer zu entfernen. Um eine bessere Vorhersagequalit\u00e4t zu erreichen, m\u00fcssen diese Daten verarbeitet werden, da ein Modell sehr empfindlich auf extreme Daten reagieren kann, was die Vorhersagen verzerrt.\n<h2 class=\"wp-block-heading\" id=\"h-data-processing\">Data processing<\/h2>\n<h3 class=\"wp-block-heading\" id=\"h-binare-verschlusselung\">Bin\u00e4re Verschl\u00fcsselung<\/h3>\nWenn wir es mit <strong>textuellen kategorialen Daten<\/strong> zu tun haben, m\u00fcssen wir unsere Variablen kodieren. Wir sprechen von <strong>bin\u00e4rer Kodierung,<\/strong> wenn wir eine Variable in zwei Kategorien kodieren, normalerweise in 0, 1. Zum Beispiel kann eine Variable, die das Geschlecht einer Person beschreibt, in 0, 1 kodiert werden. Eine kategoriale Variable (mit mehr als zwei Kategorien) kann ebenfalls kodiert werden, abh\u00e4ngig von der Anzahl der Kategorien, aus denen sie besteht.&nbsp;\n\nDie \u00fcbliche Strategie ist jedoch die <strong>Erstellung von Dummies.<\/strong> Ausgehend von einer Variablen werden f\u00fcr die n-Kategorien, aus denen sie besteht, n-1 bin\u00e4r codierte Spalten (0-1) erstellt, die jeweils einer der Kategorien in der Variablen entsprechen. Eine Spalte wird entfernt, da diese Spalte von den anderen abgeleitet werden kann. Es ist wichtig, dass die Variablen f\u00fcr die Qualit\u00e4t der Vorhersage nicht korreliert sind.\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/python-schulung\">Python Schulung<\/a><\/div><\/div>\n\n<h2 class=\"wp-block-heading\" id=\"h-feature-scaling-normalisierung-und-standardisierung\">Feature Scaling: Normalisierung und Standardisierung<\/h2>\nDie Variablen, aus denen sich ein <strong>DataFrame<\/strong> zusammensetzt, haben nicht immer denselben Ma\u00dfstab. Das Alter und die K\u00f6rpergr\u00f6\u00dfe werden zum Beispiel unterschiedlich gemessen. Um die Gewichtung der einzelnen Variablen im DataFrame auszugleichen, m\u00fcssen die Variablen &#8222;skaliert&#8220; werden, d. h. sie m\u00fcssen auf die gleiche Skala gesetzt werden. Dieser Schritt ist sehr wichtig, insbesondere in Modellen, die lineare Distanzma\u00dfe verwenden, die von dieser Art von Ungleichgewicht stark beeinflusst werden.\n\nEs gibt zwei F\u00e4lle: wenn die Verteilung einer Variablen einer Normalverteilung folgt und wenn sie nicht einer <strong>Normalverteilung<\/strong> folgt.&nbsp;\n\nWenn die Verteilung nicht normalverteilt ist, sollte ein &#8222;min-max scaling&#8220; angewendet werden, wobei die Werte in einem Intervall von [0,1] liegen.\n<p style=\"text-align: center;\">X&#8217;=(X-X_min)\/(X_max&nbsp; &#8211; X_min)<\/p>\nWenn die Variable einer Normalverteilung folgt, spricht man von Standardisierung. Dazu subtrahiert man den <strong>Mittelwert und dividiert durch die Standardabweichung.<\/strong>\n<p style=\"text-align: center;\">X&#8217;=(X &#8211; \u03bc)\/\u03c3<\/p>\nDabei sind \u00b5 oder \u03c3 der Mittelwert und die Standardabweichung der Verteilung.\n<h2 class=\"wp-block-heading\" id=\"h-data-cleaning-fazit\">Data Cleaning Fazit<\/h2>\nDies sind die wichtigsten Meilensteine des Data Pre-Processing. Es gibt nat\u00fcrlich noch weitere Verfahren, die du auf deine Datenbanken in spezifischerer Weise anwenden kannst! Je besser die Variablen in unserem DataFrame verarbeitet sind, desto einfacher werden die Schritte der Variablenerstellung und Modellierung.\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\"><div class=\"wp-block-button \"><a class=\"wp-block-button__link wp-element-button \" href=\"https:\/\/liora.io\/de\/unsere-aus-und-weiterbildungen\">Unsere Weiterbildungen entdecken<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Willkommen zur dritten Episode unserer Einf\u00fchrung in die Programmierung mit Python zum Thema Data Cleaning. In der vorherigen Folge hast Du die verschiedenen Operatoren in Python kennengelernt, sowie die Funktionsweise von Schleifen und verschiedenen n\u00fctzlichen Funktionen in Python. In diesem Teil lernst du zwei Schritte kennen, die f\u00fcr jedes Machine-Learning-Projekt unerl\u00e4sslich sind: Data Cleaning und Data Processing.<\/p>\n","protected":false},"author":47,"featured_media":171171,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_theme","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2472],"class_list":["post-171170","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\/171170","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=171170"}],"version-history":[{"count":3,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/171170\/revisions"}],"predecessor-version":[{"id":216444,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/posts\/171170\/revisions\/216444"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media\/171171"}],"wp:attachment":[{"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/media?parent=171170"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/de\/wp-json\/wp\/v2\/categories?post=171170"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}