Data Camp - Introduction
PYTHON GRUNDLAGEN
# Rechnen
2 + 3
5 - 2
4 * 3
10 / 2
2 ** 3
# Variable
x = 5
print(x)
# Typ prüfen
type(x)DATENTYPEN
int
float
str
bool
x = 5
y = 3.14
z = "Hallo"
b = TrueLISTEN
# Liste erstellen
fam = [1.73, 1.68, 1.71]
# Zugriff
fam[0]
fam[-1]
# Slicing
fam[0:2]
fam[:2]
fam[1:]
# Element ändern
fam[1] = 1.75
# Hinzufügen
fam + [1.80]
# Löschen
del fam[1]
# Kopieren (wichtig!)
y = fam[:]FUNCTIONS - METHODS - PACKAGES
# ----------------
# BUILT-IN FUNCTIONS
# ----------------
fam = [1.73, 1.68, 1.71, 1.89]
max(fam) # größtes Element
len(fam) # Länge
type(fam) # Datentyp
round(1.68, 1) # runden mit Nachkommastellen
round(1.68) # runden ohne ndigits
help(round) # Hilfe anzeigen
sorted(fam) # sortiert aufsteigend (neue Liste)
sorted(fam, reverse=True) # sortiert absteigend
# ----------------
# METHODS (gehören zu Objekten)
# Struktur: objekt.methode()
# ----------------
# LIST METHODS
fam.index(1.71) # Position eines Elements
fam.count(1.73) # Wie oft kommt Wert vor?
fam.append(1.80) # Element anhängen
fam.remove(1.68) # bestimmtes Element löschen
fam.reverse() # Reihenfolge umdrehen
fam.sort() # Liste sortieren (verändert Liste)
# STRING METHODS
name = "liz"
name.upper() # alles groß
name.lower() # alles klein
name.capitalize() # erster Buchstabe groß
name.title() # jedes Wort groß
name.replace("z", "sa") # ersetzen
name.index("z") # Position im String
name.count("z") # wie oft kommt Zeichen vor?
# ----------------
# PACKAGES
# ----------------
# Standard Import
import numpy
numpy.array([1, 2, 3])
# Import mit Abkürzung (Best Practice)
import numpy as np
np.array([1, 2, 3])
# Einzelne Funktion importieren
from numpy import array
array([1, 2, 3])
# Funktion aus Subpackage importieren
from package.subpackage import function
# Funktion mit Alias importieren
from package.subpackage import function as aliasNumPy
import numpy as np
# -----------------------------------------
# ARRAY ERSTELLEN
# -----------------------------------------
height = np.array([1.73, 1.68, 1.71, 1.89])
weight = np.array([65.4, 59.2, 63.6, 88.4])
type(height) # numpy.ndarray
# -----------------------------------------
# RECHNEN (elementweise!)
# -----------------------------------------
bmi = weight / height ** 2
height + height # elementweise Addition
height * 2 # Skalarmultiplikation
# -----------------------------------------
# LIST vs NUMPY (Unterschied!)
# -----------------------------------------
python_list = [1, 2, 3]
numpy_array = np.array([1, 2, 3])
python_list + python_list # [1,2,3,1,2,3]
numpy_array + numpy_array # array([2,4,6])
# -----------------------------------------
# SUBSETTING (1D)
# -----------------------------------------
bmi[1] # einzelnes Element
bmi > 23 # Boolean Array
bmi[bmi > 23] # Filtern
# -----------------------------------------
# 2D ARRAYS
# -----------------------------------------
np_2d = np.array([ [1.73, 1.68, 1.71],
[65.4, 59.2, 63.6] ])
np_2d.shape # (Zeilen, Spalten)
np_2d[0] # erste Zeile
np_2d[0, 2] # Element (Zeile 0, Spalte 2)
np_2d[:, 1:3] # alle Zeilen, Spalten 1-2
np_2d[1, :] # zweite Zeile
# -----------------------------------------
# STATISTIK (SEHR WICHTIG)
# -----------------------------------------
np.mean(height)
np.median(height)
np.std(height)
np.corrcoef(height, weight)
# -----------------------------------------
# ZUFALLSDATEN
# -----------------------------------------
height = np.round(np.random.normal(1.75, 0.20, 5000), 2)
# -----------------------------------------
# ARRAYS KOMBINIEREN
# -----------------------------------------
np.column_stack((height, weight))
# -----------------------------------------
# DATENTYP KONVERTIEREN (ARRAY)
# -----------------------------------------
arr = np.array([1.7, 1.8, 1.6])
arr.astype(int) # alle Elemente zu int
arr.astype(float) # zu float