
Data Science: Definition und Praxisbeispiele
Data Science ist ein noch junges, rasant wachsendes und vielseitiges Fachgebiet, das in vielen Bereichen eingesetzt wird. Mit fortgeschrittenen Analysetechniken und prädiktiven Modellierungsalgorithmen werden aus Daten aussagekräftige Erkenntnisse gewonnen, die bei strategischen Geschäfts- oder Forschungsfragen helfen. Data Science vereint ein breites Kompetenzspektrum: von technischen Fähigkeiten (Programmierung, Lineare Algebra, Statistik und Modellierung) bis hin zu nichttechnischen Kompetenzen (prägnante Darstellung und Kommunikation der Ergebnisse). Zudem ist je nach Einsatzgebiet fundiertes Domänenwissen nötig, um Informationen und Erkenntnisse korrekt zu interpretieren.
Data-Science-Algorithmen lassen sich in unterschiedlichsten Kontexten mit großen Datenmengen einsetzen: Finanzen, Handel, Marketing, Projektmanagement, Versicherungen, Medizin, Bildung, Fertigung, HR, Linguistik, Soziologie und mehr. Praktisch jede Branche und jede Wissenschaft profitiert davon, Daten systematisch zu erheben, zu sammeln, zu analysieren und zu modellieren.
Was ist ein Data-Science-Use-Case?
Ein Data-Science-Use-Case ist eine konkrete, reale Aufgabe, die mithilfe verfügbarer Daten gelöst wird. Im Kontext eines Unternehmens werden zahlreiche Variablen mit Data-Science-Methoden in Verbindung mit der jeweiligen Branche analysiert. Ein Use Case kann ein zu lösendes Problem, eine zu prüfende Hypothese oder eine zu beantwortende Frage sein. Kurz gesagt: Data Science bedeutet, reale Use Cases zu lösen.
Auch wenn die Inhalte einzelner Use Cases stark variieren, gibt es ein paar Konstanten, die du immer im Blick behalten solltest:
- Planung eines Data-Science-Use-Cases heißt: ein klares Ziel und erwartete Ergebnisse definieren, den Umfang verstehen, verfügbare Ressourcen bewerten, benötigte Daten bereitstellen, Risiken einschätzen und KPIs als Erfolgsmaß definieren.
- Typische Lösungsansätze sind: Forecasting, Klassifikation, Muster- und Anomalieerkennung, Empfehlungen und Bilderkennung.
- Viele Use Cases sind branchenübergreifend, sodass sich ähnliche Herangehensweisen anbieten, z. B. Churn-Analyse, Kundensegmentierung, Betrugserkennung, Empfehlungssysteme und Preisoptimierung.
Wie löse ich eine Data-Science-Case-Study?
Die Antwort ist sehr fallabhängig, wird von der Geschäftsstrategie bestimmt und hängt vom Kern der Case Study ab. Hilfreich ist dennoch ein allgemeiner Lernplan, der sich auf jeden Use Case anwenden lässt:
- Die richtige Frage formulieren. Dieser Schritt ist entscheidend und umfasst die Sichtung vorhandener Literatur und Case Studies, Best Practices, relevante Theorien und Arbeitshypothesen sowie das Schließen möglicher Wissenslücken im Fachgebiet. Ergebnis ist eine klar formulierte Fragestellung für die Case Study.
- Datenerhebung. Zunächst erfasst und sammelt man verfügbare Daten. In der Praxis sind Daten oft nicht repräsentativ, unvollständig, fehlerhaft oder unstrukturiert – weit entfernt von einer sauberen, analysierfähigen Tabelle. Daher gilt es, alle potenziell hilfreichen Quellen zu identifizieren: Unternehmensarchive, Webscraping, Daten von Partnern/Sponsoren usw.
- Datenaufbereitung. Das ist meist der zeit- und ressourcenintensivste Teil. Datenqualität und -repräsentativität werden bewertet und eine erste Exploration durchgeführt. Rohdaten werden bereinigt, vorverarbeitet, transformiert, angereichert und in ein geeignetes Format überführt.
- Datenanalyse und Modellierung. Die bereinigten Daten werden zunächst beschrieben und anschließend in ein passendes prädiktives Modell gefasst. Die Modellgüte wird bewertet und bei Bedarf alternative Modelle getestet – iterativ, bis die bestmögliche Prognosegenauigkeit erreicht ist.
- Ergebnisse kommunizieren. Hier zählen Kommunikation und Soft Skills mehr als Programmierung. Die wichtigsten Erkenntnisse und Schlussfolgerungen werden mit Management, Stakeholdern und weiteren Beteiligten geteilt – meist in Form von Reports, Artikeln oder Präsentationen – inklusive Handlungsempfehlungen.
Data-Science-Use-Cases nach Branche
Use Cases finden sich praktisch in jeder Branche mit großen Datenmengen. Im Folgenden betrachten wir typische Beispiele aus drei besonders gefragten Bereichen: Logistik, Gesundheitswesen und Telekommunikation. Einige Use Cases sind interdisziplinär und kommen in vielen Feldern vor. Das macht sie universell einsetzbar – es lohnt sich, den generellen Lösungsweg zu kennen. Zusätzlich nennen wir je Branche weitere Themen, die sich gut mit Data-Science-Methoden modellieren lassen.
Data Science im Gesundheitswesen
In den vorherigen Abschnitten haben wir gesehen, wie Data-Science-Methoden Unternehmen helfen, ihren Umsatz zu steigern. Im Gesundheitswesen geht es um mehr: Richtig genutzte und interpretierte Daten unterstützen nicht nur Marketingteams, sie ermöglichen rechtzeitige Diagnosen schwerer Erkrankungen – und können Leben retten.
Medizin und Gesundheitsanbieter erfassen enorme Datenmengen aus vielen Quellen: elektronische Gesundheitsakten (EHR), Wearables, medizinische Studien und Abrechnungsdaten. Der Einsatz innovativer Data-Science- und Analyseverfahren revolutioniert das gesamte Gesundheitswesen und ebnet den Weg für wirksame Lösungen. Besonders spezialisierte Bereiche wie Genetik, Reproduktionsmedizin, Onkologie, Biotechnologie, Radiologie, prädiktive Diagnostik und Pharmazie heben sich dank besserer Datennutzung auf ein neues Niveau.
Um den Nutzen von Data Science in der Medizin greifbarer zu machen, schauen wir uns einen klassischen Use Case an.
Use Case im Gesundheitswesen: Brustkrebs vorhersagen
Laut dem World Cancer Research Fund International ist Brustkrebs die häufigste Krebsart bei Frauen und insgesamt die zweithäufigste. Eine rechtzeitige Diagnose – ob gutartig oder bösartig – ist entscheidend, weil sie die Chancen auf erfolgreiche Behandlung und Überleben deutlich erhöht. Hier kommt Data Science ins Spiel.
Fortschritte im Data Mining kombiniert mit Machine-Learning-Algorithmen ermöglichen, das Risiko von Brustkrebs zu prognostizieren, Anomalien früh zu erkennen, ihre Entwicklung einzuschätzen und so optimale Behandlungspläne zu entwickeln. Technisch ist das ein typisches Klassifikationsproblem. Da diese Krebsart weltweit häufig vorkommt, gibt es viele gründliche Untersuchungen und entsprechend große Datenmengen aus aller Welt.
Die größte Herausforderung solcher Datensätze ist oft Klassenungleichgewicht. Wenn das Ergebnis „Krebs/kein Krebs“ lautet, ist die Wahrscheinlichkeit für eine Pathologie (Minderheitsklasse) deutlich geringer als für keine Pathologie (Mehrheitsklasse). Der Algorithmus neigt dann dazu, neue Fälle als unauffällig zu klassifizieren. Zur Bewertung eignet sich daher der F1-Score besser als die reine Accuracy, weil er falsch Positive (Typ-I-Fehler) und falsch Negative (Typ-II-Fehler) berücksichtigt.
Wir betrachten einen realen Brustkrebs-Datensatz aus einem US-Bundesstaat. Die Merkmale sind in der Doku beschrieben; kurz gesagt handelt es sich um Mittelwerte, Standardfehler und maximale Werte von Attributen aus digitalisierten Bildern der Zellkerne einer Brustmasse. Jeder Eintrag gehört zu einer Frau mit einem bösartigen oder gutartigen Tumor (alle Betroffenen haben also einen Tumor). Attribute sind u. a. Zellradius, Textur, Glätte, Kompaktheit, Konkavität, Symmetrie usw.
import pandas as pd
cancer_data = pd.read_csv('data.csv')
pd.options.display.max_columns = len(cancer_data)
print(f'Number of entries: {cancer_data.shape[0]:,}\n'
f'Number of features: {cancer_data.shape[1]:,}\n\n'
f'Number of missing values: {cancer_data.isnull().sum().sum()}\n\n'
f'{cancer_data.head(2)}')
Number of entries: 569
Number of features: 33
Number of missing values: 569
id diagnosis radius_mean texture_mean perimeter_mean area_mean \
0 842302 M 17.99 10.38 122.8 1001.0
1 842517 M 20.57 17.77 132.9 1326.0
smoothness_mean compactness_mean concavity_mean concave points_mean \
0 0.11840 0.27760 0.3001 0.14710
1 0.08474 0.07864 0.0869 0.07017
symmetry_mean fractal_dimension_mean radius_se texture_se perimeter_se \
0 0.2419 0.07871 1.0950 0.9053 8.589
1 0.1812 0.05667 0.5435 0.7339 3.398
area_se smoothness_se compactness_se concavity_se concave points_se \
0 153.40 0.006399 0.04904 0.05373 0.01587
1 74.08 0.005225 0.01308 0.01860 0.01340
symmetry_se fractal_dimension_se radius_worst texture_worst \
0 0.03003 0.006193 25.38 17.33
1 0.01389 0.003532 24.99 23.41
perimeter_worst area_worst smoothness_worst compactness_worst \
0 184.6 2019.0 0.1622 0.6656
1 158.8 1956.0 0.1238 0.1866
concavity_worst concave points_worst symmetry_worst \
0 0.7119 0.2654 0.4601
1 0.2416 0.1860 0.2750
fractal_dimension_worst Unnamed: 32
0 0.11890 NaN
1 0.08902 NaN
Die letzte Spalte enthält nur fehlende Werte – wir entfernen sie:
cancer_data = cancer_data.drop('Unnamed: 32', axis=1)
Wie viele Frauen haben in % eine bestätigte Krebserkrankung (bösartiger Tumor)?
round(cancer_data['diagnosis'].value_counts()*100/len(cancer_data)).convert_dtypes()
B 63
M 37
Name: diagnosis, dtype: Int64
37% der Befragten haben Brustkrebs – der Datensatz ist also relativ ausgewogen.
Da die Zielvariable kategorisch ist, müssen wir sie für das Machine Learning numerisch kodieren. Zuvor trennen wir Prädiktoren und Zielvariable:
X = cancer_data.iloc[:, 2:32].values
y = cancer_data.iloc[:, 1].values
# Encoding categorical data
from sklearn.preprocessing import LabelEncoder
labelencoder_y = LabelEncoder()
y = labelencoder_y.fit_transform(y)
Nun erzeugen wir Train- und Testdaten und skalieren die Features:
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1)
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
Zur Modellierung nutzen wir zwei Algorithmen mit Standardparametern: k-Nearest Neighbors (KNN) und Logistische Regression:
from sklearn.neighbors import KNeighborsClassifier
from sklearn.linear_model import LogisticRegression
# KNN
knn = KNeighborsClassifier()
knn.fit(X_train, y_train)
knn_predictions = knn.predict(X_test)
# Logistic regression
lr = LogisticRegression()
lr.fit(X_train, y_train)
lr_predictions = lr.predict(X_test)
Da unser Datensatz recht ausgewogen ist, können wir die Accuracy als Metrik zum Modellvergleich verwenden:
from sklearn.metrics import accuracy_score
print(f'Accuracy scores:\n'
f'KNN model:\t\t {accuracy_score(y_test, knn_predictions):.3f}\n'
f'Logistic regression model: {accuracy_score(y_test, lr_predictions):.3f}')
Accuracy scores:
KNN model: 0.956
Logistic regression model: 0.974
In unseren Daten schneidet die Logistische Regression am besten ab, um bösartige/gutartige Tumoren bei Patientinnen mit festgestellter Brustpathologie zu unterscheiden.
Als nächste Schritte bieten sich alternative Train/Test-Splits und weitere Modellierungsansätze an, da die Logistische Regression kaum kritische Hyperparameter besitzt.
Weitere gängige Use Cases im Gesundheitswesen:
- Echtzeit-Monitoring von Wearables
- Prädiktive Analytik
- Medizinische Bildanalyse
- Wirkstoffforschung
- Genetikforschung
- Virtuelle Assistenten
- Kundendatenmanagement
Data Science in Transport und Logistik
Logistik organisiert die Lieferung von Produkten von A nach B, Transport bezeichnet den eigentlichen Personen- oder Gütertransport. Je nach Geschäftsmodell (z. B. Essenslieferung, Postdienst, internationale Spedition, Airline, Taxi- oder Busbetrieb) stammen Daten aus Fahrplänen, Zeitnachweisen, Routeninfos, Lagerbeständen, Berichten, Verträgen, rechtlichen Dokumenten und Kundenfeedback. Sie sind strukturiert oder unstrukturiert und enthalten u. a. Zeiten, Strecken, Koordinaten, Kundendaten, Wareninformationen, Kosten und Preise.
Die Leistungsfähigkeit in Lieferkette und Transport hängt von vielen Faktoren ab: Verkehrslage, Streckenqualität, Wetter, Notfälle, Schwankungen der Treibstoffpreise, Lagerengpässe, technische Defekte, sicherheitsbedingte Verzögerungen, Regularien und mehr. Dazu kommt wachsende Konkurrenz. Um mitzuhalten und Abläufe zu verbessern, müssen Logistik- und Transportunternehmen Big Data analysieren und in verwertbare Insights übersetzen.
Wie hilft Data Science konkret? Eine unvollständige Auswahl:
- End-to-End-Tracking des gesamten Transportprozesses,
- vollständige Automatisierung und Transparenz,
- termingerechte Zustellung,
- Routenoptimierung,
- dynamische Preisgestaltung,
- Bestandsmanagement,
- Schutz verderblicher Waren,
- Zustandsüberwachung von Fahrzeugen,
- Optimierung von Produktionsnetzwerken,
- besserer Kundenservice.
Use Case in Transport und Logistik: Optimale Taxipositionierung
Uber Technologies Inc. bietet verschiedene Logistik- und Transportdienste an. In dieser Case Study clustern wir GPS-Daten von Uber-Fahrten, um optimale Standorte für Taxis zu bestimmen. Das ist nützlich für:
- Neue Fahrtanfragen werden dem nächstgelegenen Cluster zugeordnet – Uber schickt das nächstgelegene Fahrzeug dorthin.
- Analysiert man die Cluster nach Auslastung, etwa stunden- oder tagesweise, können Fahrzeuge proaktiv in besonders gefragte Gebiete verteilt werden.
- Je nach Verhältnis von Nachfrage und Angebot in den Clustern lassen sich Preise dynamisch anpassen.
Wir nutzen einen Datensatz von FiveThirtyEight zu Uber-Fahrten in New York im April 2014:
import pandas as pd
uber_data = pd.read_csv('uber-raw-data-apr14.csv')
print(f'Number of trips: {uber_data.shape[0]:,}\n\n'
f'{uber_data.head()}')
Number of trips: 564,516
Date/Time Lat Lon Base
0 4/1/2014 0:11:00 40.7690 -73.9549 B02512
1 4/1/2014 0:17:00 40.7267 -74.0345 B02512
2 4/1/2014 0:21:00 40.7316 -73.9873 B02512
3 4/1/2014 0:28:00 40.7588 -73.9776 B02512
4 4/1/2014 0:33:00 40.7594 -73.9722 B02512
Wir visualisieren schematisch alle Abholpunkte – Längengrad auf der x- und Breitengrad auf der y-Achse:
import matplotlib.pyplot as plt
plt.scatter(uber_data.iloc[:, 2], uber_data.iloc[:, 1])
plt.show()
Zum Clustern nutzen wir k-Means, einen unüberwachten Algorithmus. Ziel ist, die Daten in Gruppen mit ähnlicher Varianz zu teilen. Der Parameter n_clusters (Standard: 8) gibt die Clusteranzahl vor. Zur Bestimmung der optimalen Clusterzahl verwenden wir die Elbow-Methode:
- Mehrere Modelle mit variierender Clusterzahl trainieren und die WCSS-Werte (Within-Cluster Sum of Squares) sammeln, also die Summe der quadrierten Abstände zur jeweiligen Cluster-Schwerpunktlage.
- WCSS gegen die Clusteranzahl auftragen.
- Die kleinste Clusterzahl wählen, bei der der WCSS deutlich abfällt.
from sklearn.cluster import KMeans
wcss = []
for i in range(1, 11):
kmeans = KMeans(n_clusters=i, random_state=1)
kmeans.fit(uber_data[['Lat', 'Lon']])
wcss.append(kmeans.inertia_)
plt.figure(figsize=(12, 5))
plt.plot(range(1, 11), wcss)
plt.title('Elbow Method', fontsize=25)
plt.xlabel('Number of clusters', fontsize=18)
plt.ylabel('WCSS', fontsize=18)
plt.xticks(ticks=list(range(1, 11)),
labels=['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'])
plt.show()

Hier wirken 7 Cluster am sinnvollsten. Wir trainieren damit ein Modell, sagen für jeden Abholpunkt den Cluster vorher und visualisieren erneut – diesmal mit den sieben Zentroiden:
kmeans = KMeans(n_clusters=7, random_state=1)
kmeans.fit_predict(df[['Lat', 'Lon']])
plt.scatter(uber_data.iloc[:, 2], uber_data.iloc[:, 1])
plt.scatter(kmeans.cluster_centers_[:, 1], kmeans.cluster_centers_[:, 0], s=100, c='lime')
plt.show()
Anschließend extrahieren wir die Koordinaten der Zentroiden und zeigen sie separat:
centroids = pd.DataFrame(kmeans.cluster_centers_)
centroids.columns = ['Lat', 'Lon']
print(centroids)
plt.scatter(centroids['Lon'], centroids['Lat'])
plt.show()
Lat Lon
0 40.688588 -73.965694
1 40.765423 -73.973165
2 40.788001 -73.879858
3 40.656997 -73.780035
4 40.731074 -73.998644
5 40.700541 -74.201673
6 40.971229 -73.611288
Noch anschaulicher ist die Darstellung auf einer New-York-Karte:
import folium
centroids_values = centroids.values.tolist()
nyc_map = folium.Map(location=[40.79659011772687, -73.87341741832425], zoom_start=50000)
for point in range(0, len(centroids_values)):
folium.Marker(centroids_values[point], popup=centroids_values[point]).add_to(nyc_map)
nyc_map

Mit dem Modell lässt sich für jeden Ort in New York (per Koordinaten) der nächste Cluster bestimmen. Praktisch bedeutet das: Uber schickt das nächstgelegene verfügbare Taxi – Kundinnen und Kunden werden schneller bedient.
Beispiel: Nächstgelegener Cluster für das Lincoln Center for the Performing Arts in Manhattan:
lincoln_center = [(40.7725, -73.9835)]
kmeans.predict(lincoln_center)
array([1])
Und für Howard Beach in Queens:
howard_beach = [(40.6571, -73.8430)]
kmeans.predict(howard_beach)
array([3])
Als nächste Schritte lassen sich alternative Clustering-Algorithmen testen, Zeitschnitte analysieren (Stunde/Tag/Monat), die am stärksten bzw. geringsten ausgelasteten Cluster identifizieren oder Zusammenhänge zwischen Clustern und der Variablen Base untersuchen.
Weitere gängige Use Cases in Transport und Logistik:
- Dynamische Preise passend zu Angebot und Nachfrage
- Nachfrageprognosen
- Automatisierung manueller Prozesse
- Autonomes Fahren
- Transparenz in der Lieferkette
- Schadensdetektion
- Lagerverwaltung
- Sentiment-Analyse von Kundenfeedback
- Chatbots für den Kundenservice
Data Science in der Telekommunikation
Telekommunikation hat in den letzten Jahrzehnten enorm an Fahrt aufgenommen. Heute sind wir von digitalen Geräten umgeben, und viele Menschen sind auf das Internet – vor allem soziale Netzwerke und Messenger – angewiesen. Manchmal wird kritisiert, dass Geräte echte Gespräche ersetzen. Unbestritten ist jedoch: Telekommunikation hat unser Leben stark vereinfacht und vernetzt uns in Sekunden weltweit.
Das zeigte sich besonders in der COVID-19-Pandemie, als viele Unternehmen und Schulen auf Remote-Modelle umstellten. In dieser Umbruchphase waren Qualität und Stabilität der digitalen Verbindung geschäftskritisch. Das führte zu massiv steigenden Kommunikationsvolumina – und damit zu riesigen Datenmengen in der Branche.
Mit Data-Science-Methoden lassen sich diese Datenbestände vielfältig nutzen:
- Abläufe straffen,
- Netze optimieren,
- Spam filtern,
- Datenübertragung verbessern,
- Echtzeit-Analysen durchführen,
- wirksame Geschäftsstrategien entwickeln,
- erfolgreiche Marketingkampagnen gestalten,
- Umsätze steigern.
Schauen wir uns eine typische Aufgabe an: das Erkennen und Filtern unerwünschter Nachrichten.
Use Case in der Telekom: Aufbau eines Spamfilters
Spamfilter sind essenziell für moderne Textkommunikation, weil sie uns vor Betrugs- und Werbeflut schützen. Technisch ist das wieder eine Klassifikation: Anhand historischer Daten werden neue Nachrichten als „ham“ (normale Nachricht) direkt zugestellt oder als „spam“ blockiert bzw. in den Spam-Ordner verschoben.
Beliebt ist hier der Naive-Bayes-Klassifikator. Er basiert auf dem gleichnamigen Satz der Wahrscheinlichkeitsrechnung; „naiv“ verweist auf die Annahme, dass alle Wörter einer Nachricht unabhängig sind. Das ist zwar nicht ganz korrekt (Kontext und Wortbeziehungen fehlen), funktioniert in vielen Low-Data-Textklassifikationen aber erstaunlich gut.
Es gibt mehrere Varianten: Multinomial, Bernoulli, Gaussian und Flexible Bayes. Für Spam-Erkennung eignet sich der Multinomial-Ansatz am besten, der auf diskreten Worthäufigkeiten beruht.
Wir wenden den multinomialen Naive Bayes auf den SMS Spam Collection Data Set aus dem UCI Machine Learning Repository an.
import pandas as pd
sms_data = pd.read_csv('SMSSpamCollection', sep='\t', header=None, names=['Label', 'SMS'])
print(f'Number of messages: {sms_data.shape[0]:,}\n\n'
f'{sms_data.head()}')
Number of messages: 5,572
Label SMS
0 ham Go until jurong point, crazy.. Available only ...
1 ham Ok lar... Joking wif u oni...
2 spam Free entry in 2 a wkly comp to win FA Cup fina...
3 ham U dun say so early hor... U c already then say...
4 ham Nah I don't think he goes to usf, he lives aro...
Es gibt 5.572 manuell klassifizierte Nachrichten. Wie viel Prozent sind Spam?
round(sms_data['Label'].value_counts()*100/len(sms_data)).convert_dtypes()
ham 87
spam 13
Name: Label, dtype: Int64
13% der SMS wurden als Spam markiert.
Zur Vorbereitung für den multinomialen Naive Bayes führen wir folgende Schritte aus:
- Labels von String in numerisches Format kodieren (binär 0/1).
- Prädiktor- und Zielvariablen trennen.
- Train-/Test-Split erstellen.
- Texte aus der Spalte SMS der Prädiktoren vektorisieren, sodass CSR-Matrizen entstehen.
Zum 4. Schritt: Wir erstellen ein Matrixobjekt, fitten es mit dem Vokabular (alle einzigartigen Wörter im Train-Set samt Häufigkeit) und transformieren danach Train- und Test-Prädiktoren. Ergebnis sind zwei Matrizen, deren Spalten die Wörter des Train-Sets repräsentieren, deren Zeilen die Nachrichten sind und deren Zellen die Worthäufigkeiten enthalten.
from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import CountVectorizer
# Encoding labels
sms_data = sms_data.replace('ham', 0).replace('spam', 1)
X = sms_data['SMS'].values
y = sms_data['Label'].values
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1)
# Vectorizing strings from the 'SMS' column
cv = CountVectorizer(max_df=0.95)
cv.fit(X_train)
X_train_csr_matrix = cv.transform(X_train)
X_test_csr_matrix = cv.transform(X_test)
Anschließend trainieren wir den multinomialen Naive Bayes mit Standardparametern und prüfen die Güte:
from sklearn.naive_bayes import MultinomialNB
from sklearn.metrics import accuracy_score, f1_score
clf = MultinomialNB()
clf.fit(X_train_csr_matrix, y_train)
predictions = clf.predict(X_test_csr_matrix)
print(f'Model accuracy:\n'
f'Accuracy score: {accuracy_score(y_test, predictions):.3f}\n'
f'F1-score: {f1_score(y_test, predictions):.3f}\n')
Model accuracy:
Accuracy score: 0.990
F1-score: 0.962
Das Ergebnis ist ein sehr treffsicherer Spamfilter.
Als nächste Schritte lassen sich alternative Train/Test-Splits ausprobieren, die Vektorisierung über ihre vielen Parameter feiner einstellen (z. B. Cut-off für sehr häufige Wörter in Spam und Ham), Fehlklassifikationen analysieren und verstehen, Wortwolken der häufigsten Begriffe nach Klassen visualisieren (nach vorheriger Bereinigung, Stopwörter entfernen). Zudem können andere ML- oder Deep-Learning-Modelle (SVM, Entscheidungsbäume, Neuronale Netze) getestet und mit Naive Bayes verglichen werden.
Weitere gängige Use Cases in der Telekommunikation:
- Kundensegmentierung
- Produktentwicklung
- Analyse von Verbindungsdaten (Call Detail Records)
- Empfehlungssysteme
- Kündigerwahrscheinlichkeit (Churn) vorhersagen
- Zielgerichtetes Marketing
- Betrugserkennung
- Netzwerkmanagement und -optimierung
- Erhöhte Netzwerksicherheit
- Preisoptimierung
- Customer-Lifetime-Value vorhersagen
Data-Science-Case-Studies: Kurse
Wir haben zahlreiche Anwendungen von Data Science in verschiedenen Bereichen erkundet. Wenn du jetzt Lust bekommen hast, weitere Use Cases mit realen Datensätzen kennenzulernen und dein Wissen praktisch in deinem Umfeld einzusetzen, sind diese einsteigerfreundlichen Kurzkurse zu Case Studies ein guter Start:
- Case Study: School Budgeting with Machine Learning in Python. In diesem kursbegleitenden Wettbewerb von DrivenData geht es um Budgetierung in Schulbezirken und darum, Vergleiche zu vereinfachen und zu beschleunigen. Mit Methoden der natürlichen Sprachverarbeitung bereitest du Budgetdaten auf und baust ein Modell zur automatischen Klassifikation der Posten – von einfach bis fortgeschritten. Außerdem siehst du die Gewinnerlösung und andere Einreichungen.
- Analyzing Marketing Campaigns with pandas. Pandas ist die populärste Python-Bibliothek – fundierte Kenntnisse sind Pflicht. In diesem praxisnahen Kurs arbeitest du mit einem fiktiven Marketingdatensatz eines Abo-Geschäfts und vertiefst Python- und pandas-Grundlagen (Spalten hinzufügen, Datasets mergen/slicen, Datumsangaben, Visualisierung mit matplotlib). Du übersetzt typische Marketingfragen in messbare Kennzahlen, etwa: „Wie hat die Kampagne performt?“, „Warum unterperformt ein Kanal?“, „Welcher Kanal bringt die meisten Abos?“
- Analyzing US Census Data in Python. Du lernst, dich in der Volkszählung und dem American Community Survey zurechtzufinden und demografische sowie sozioökonomische Daten (Einkommen, Pendeln, Ethnien, Familienstrukturen) zu extrahieren. Mit Python fragst du Daten für verschiedene Regionen über die Census API ab und nutzt pandas zur Aufbereitung – inklusive Mapping mit geopandas.
- Case Study: Exploratory Data Analysis in R. Ideal, wenn du bereits Grundkenntnisse in Datenmanipulation und -visualisierung in R hast. Anhand realer Daten analysierst du historische Abstimmungen der UN-Generalversammlung: Muster zwischen Ländern, über die Zeit und entlang von Themen. Du führst eine EDA von Anfang bis Ende durch, übst dplyr und ggplot2 und lernst neue Tricks.
- Human Resources Analytics: Exploring Employee Data in R. R ist besonders stark in Statistik. In diesem Kurs nutzt du R, um eine Reihe von HR-Case-Studies zu bearbeiten: Daten manipulieren, visualisieren und statistisch testen. Data Science ist im HR-Bereich noch relativ neu, gewinnt aber rasant an Bedeutung, da Unternehmen von HR umsetzbare Empfehlungen basierend auf Mitarbeiterdaten erwarten.
- Data-Driven Decision Making in SQL. Lerne, wie du mit SQL Entscheidungen fundierst und Ergebnisse fürs Management aufbereitest. Die Case Study dreht sich um einen Online-Filmanbieter mit Kundendaten, Bewertungen, Infos zu Schauspielenden usw. Aufgaben sind u. a. SQL-Abfragen zu Vorlieben, Engagement und Umsatzentwicklung. Du lernst zudem OLAP-Erweiterungen von SQL für Einblicke in komplexe, multidimensionale Daten.
Egal, ob du zur Data-Science-Expertin bzw. zum -Experten werden willst oder dir einfach nützliche Coding-Skills aneignen möchtest, um datenbasierte Insights in deinem Fachgebiet zu gewinnen – die obigen Ressourcen sind ein guter Startpunkt.
Fazit
Zusammengefasst haben wir betrachtet, was Data Science ist, wie sie sich von Data Analytics unterscheidet, in welchen Bereichen sie zum Einsatz kommt, was einen Use Case ausmacht und welchem allgemeinen Lernplan du folgen kannst. Wir haben gezeigt, wie Data Science reale Aufgaben in gefragten Branchen löst, und die gängigsten Use Cases vorgestellt – inklusive exemplarischer Lösungswege mit Data-Science- und Analysealgorithmen. Wenn du mehr über weitere Branchen erfahren möchtest, wirf einen Blick auf unsere Artikel zu Banking, Marketing und Sales. Abschließend haben wir hilfreiche Online-Kurse für den tieferen Einstieg in weitere Case Studies empfohlen.
Eine letzte Beobachtung: Keine der betrachteten Branchen ist neu – manche wie Medizin oder Vertrieb gibt es seit Jahrhunderten. Daten wurden schon immer erfasst, in Büchern und Dokumenten festgehalten und in Archiven bewahrt. Was sich mit neuen Technologien grundlegend verändert hat, ist das Verständnis für das enorme Potenzial in Daten – und die Bedeutung, sie konsequent zu erfassen, zu sammeln und zu speichern. Durch diese Anstrengungen und stetig verbesserte Datenmanagementsysteme konnten in allen Branchen große Datenbestände aufgebaut werden, die Analysen und Vorhersagen ermöglichen.




