{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "4dec4a0c-28ff-4b3d-a3ba-ef68fcdb8642",
"metadata": {
"tags": [
"remove-cell"
]
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"---------------------------------\n",
"Working on the host: Joachims-MacBook-Pro.local\n",
"\n",
"---------------------------------\n",
"Python version: 3.10.2 | packaged by conda-forge | (main, Feb 1 2022, 19:30:18) [Clang 11.1.0 ]\n",
"\n",
"---------------------------------\n",
"Python interpreter: /opt/miniconda3/envs/srh/bin/python\n"
]
}
],
"source": [
"%matplotlib inline\n",
"# Load the \"autoreload\" extension\n",
"%load_ext autoreload\n",
"# always reload modules\n",
"%autoreload 2\n",
"# black formatter for jupyter notebooks\n",
"#%load_ext nb_black\n",
"# black formatter for jupyter lab\n",
"%load_ext lab_black\n",
"\n",
"%run ../../src/notebook_env.py"
]
},
{
"cell_type": "markdown",
"id": "87f0009a-548b-425b-9dfa-c1b5434f0284",
"metadata": {},
"source": [
"# Deskriptive Statistik"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "c58a8c58-d7b0-4899-a269-b7180c809c1e",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "markdown",
"id": "24218dfd-fc4b-4dc3-ba9f-6a7bf7556917",
"metadata": {},
"source": [
"Angewandte Statistik lässt sich in zwei Bereiche unterteilen: deskriptive Statistik und Inferenzstatistik. Die deskriptive Statistik umfasst Methoden zur Organisation, Darstellung und Beschreibung von Daten mit Hilfe von Tabellen, Diagrammen und Streuungsmaße. Im Gegensatz dazu besteht die inferentielle Statistik aus Methoden, die Stichprobenergebnisse verwenden, um Entscheidungen oder Vorhersagen über eine Grundgesamtheit zu treffen ({cite:t}`Cramer2008` s.1–151, 231–312, {cite:t}`fahrmeirstatistik` s.10, 12 ).\n",
"\n",
"Das Wort [univariat](https://de.wikipedia.org/wiki/Univariat) bezieht sich auf die Tatsache, dass nur eine Variable betrachtet wird. Der Hauptzweck der univariaten Statistik besteht darin, die Daten zu beschreiben und zusammenzufassen. Wenn zwei oder mehr Variablen analysiert werden, spricht man von [bivariater](https://de.wikipedia.org/wiki/Univariat#Verwendung_in_der_Mathematik) oder [multivariater Analyse](https://de.wikipedia.org/wiki/Multivariate_Verfahren) bzw. Statistik. In diesem Fall sind wir in erster Linie an den Beziehungen zwischen und unter einer Reihe von Variablen interessiert.\n"
]
},
{
"cell_type": "markdown",
"id": "46520a39-b35a-4691-9907-b6da35d6f64a",
"metadata": {
"tags": []
},
"source": [
"## Strukturierte Datensätze"
]
},
{
"cell_type": "markdown",
"id": "bdf5a290-ef61-4ee8-8c38-f328f20a1794",
"metadata": {},
"source": [
"### Strukturierte Daten\n",
"Bei Data Science geht es um die Gewinnung von Wissen aus \n",
"Daten. Daten sind eine spezifische Form von Informationen und weisen verschiedene Abstraktions- und Strukturniveaus auf (strukturiert, halbstrukturiert oder unstrukturiert).
Eine sehr verbreitete Datenstruktur ist ein Array. In verschiedenen Bereichen gibt es andere Bezeichnungen für einen solchen Datentyp, die synonym verwendet werden, z. B. Matrix ({cite:t}`Lang2016`) in der Mathematik, Tabelle in Datenbanken, Tabellenkalkulation und Dataframe , der eine grundlegende Python-Objektklasse ist zB : (Pandas `DataFrame`).
Daten eines solchen Typs bestehen aus Beobachtungen und entsprechenden Variablen, die oft als Merkmale bezeichnet werden."
]
},
{
"cell_type": "markdown",
"id": "5da619ec-2f1b-4d48-905e-36893d6cf0dd",
"metadata": {},
"source": [
"|id|Name|Age|\n",
"|---|---|---|\n",
"|1|John|26|\n",
"|2|Alice|20|\n",
"|3|Mike|21|\n",
"|4|Anne|25|"
]
},
{
"cell_type": "markdown",
"id": "7e422762-97cb-4c3f-8639-532253b3d901",
"metadata": {},
"source": [
"In diesem Beispiel entsprechen die **Beobachtungen** (*Stichprobe* genannt) einer Anzahl von Personen. Jede beobachtete Person wird durch eine Reihe von **Variablen** (so genannte *Merkmale*) charakterisiert: durch eine Identifikationsnummer (id), durch einen Namen und durch ein Alter. In unserem Beispiel ist es sehr einfach, sich durch einen Blick auf die Tabelle einen Gesamteindruck von den Daten selbst zu verschaffen. Wir erkennen sofort, dass es in unserer Stichprobe $4$ Personen gibt, zwei Frauen und zwei Männer. Außerdem sehen wir sofort, dass die jüngste Person $20$ Jahre alt ist und Alice heißt und die älteste Person $26$ Jahre alt ist und John heißt; perfekt!\n",
"\n",
"Anwendungen in der realen Welt enthalten jedoch oft eine große Menge an Daten. Hunderte, Tausende, Millionen oder sogar Milliarden von Beobachtungen, kombiniert mit Tausenden von Variablen, können einen Datensatz bilden. Für den Menschen ist es unmöglich, allein durch die Betrachtung solcher Datensätze irgendwelche Schlussfolgerungen über die Daten zu ziehen. Daher reduzieren wir die Daten auf eine überschaubare Größe, indem wir Tabellen erstellen, Diagramme zeichnen oder zusammenfassende Maße wie Durchschnittswerte berechnen. Diese Art von statistischen Methoden wird als **deskriptive Statistik** bezeichnet ({cite:p}`fahrmeirstatistik` s.10)."
]
},
{
"cell_type": "markdown",
"id": "a7cfd4a2-70e4-4b29-9fce-b6bf06181e22",
"metadata": {},
"source": [
"### Der `students` Datensatz\n",
"In diesem Abschnitt werden wir einen Datensatz namens `students` untersuchen. Zunächst laden wir den Datensatz, geben ihm einen geeigneten Namen und verschaffen uns einen Eindruck von seiner Struktur und Größe, indem wir die Methode `info()` auf den Datensatz anwenden."
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "08748c48-758d-46f2-bdf2-818c0bedd9d3",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 8239 entries, 0 to 8238\n",
"Data columns (total 16 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 stud_id 8239 non-null int64 \n",
" 1 name 8239 non-null object \n",
" 2 gender 8239 non-null object \n",
" 3 age 8239 non-null int64 \n",
" 4 height 8239 non-null int64 \n",
" 5 weight 8239 non-null float64\n",
" 6 religion 8239 non-null object \n",
" 7 nc_score 8239 non-null float64\n",
" 8 semester 8239 non-null object \n",
" 9 major 8239 non-null object \n",
" 10 minor 8239 non-null object \n",
" 11 score1 4892 non-null float64\n",
" 12 score2 4892 non-null float64\n",
" 13 online_tutorial 8239 non-null int64 \n",
" 14 graduated 8239 non-null int64 \n",
" 15 salary 1753 non-null float64\n",
"dtypes: float64(5), int64(5), object(6)\n",
"memory usage: 1.0+ MB\n"
]
}
],
"source": [
"# Lese Datei students.csv als Dataframe ein\n",
"df = pd.read_csv(\"../../data/students.csv\")\n",
"df.info()"
]
},
{
"cell_type": "markdown",
"id": "7e396bde-058a-48bf-a62b-5022b76a7ef7",
"metadata": {},
"source": [
"Der Studentendatensatz besteht aus $8239$ Zeilen, von denen jede einen bestimmten Studenten repräsentiert, und $16$ Spalten, von denen jede einer Variable/einem Merkmal entspricht, das sich auf diesen bestimmten Studenten bezieht. Diese selbsterklärenden Variablen sind: *stud_id, name, gender, age, height, weight, religion, nc_score, semester, major, minor, score1, score2, online_tutorial, graduated, salary*. Neben dem jeweiligen Variablennamen listet die Methode `info()` die `Klasse` jeder einzelnen Variablen auf. Alle Objekte in Python haben eine Klasse, z. B. `numerische` Datentypen , die in die Unterklassen `(int)` Ganzzahlen , `(float)` Gleitkommazahlen und `(imag)` komplexe Zahlen, eingeteilt werden.\n",
"\n",
"In den nächsten Abschnitten werden wir die deskriptiven Statistiken des `students` Datensatzes genauer untersuchen.\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.2"
},
"vscode": {
"interpreter": {
"hash": "a36818faf5a63422d892f0834edc6414f1b25ba9b5d6bbe87802a22f3b883f5c"
}
}
},
"nbformat": 4,
"nbformat_minor": 5
}