{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", " \n", " \n", " \n", " \n", "
Datenanalyse mit PythonManfred Hammerl
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 9) Variablen berechnen\n", "\n", "Thema dieses Kapitels sind div. Möglichkeiten, neue Werte bzw. neue Variablen aus bestehenden Werten bzw. Variablen zu berechnen. Dabei wird auf in den Sozialwissenschaften besonders häufige Verfahren (bspw. das Bilden eines Mittelwert- bzw. Summenindex) eingegangen. Die gezeigten Berechnungsmethoden sollten sich aber in weiterer Folge problemlos auf andere unterschiedlichste Bedürfnisse übertragen lassen." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sexagewohnortvolksmusikhardrock
015022.673.67
115711.003.33
226632.004.33
\n", "
" ], "text/plain": [ " sex age wohnort volksmusik hardrock\n", "0 1 50 2 2.67 3.67\n", "1 1 57 1 1.00 3.33\n", "2 2 66 3 2.00 4.33" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "\n", "daten = pd.read_csv(\"C:\\\\Datenfiles\\\\daten.csv\")\n", "\n", "daten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.1) Neue Variable berechnen\n", "\n", "Beginnen wir mit einem einfachen Beispiel: Es soll im Folgenden aus den beiden Variablen *volksmusik* und *hardrock* ein einfacher Index gebildet werden, welcher angibt, ob man lieber Volksmusik, lieber Hardrock oder beides in etwa gleich gerne hört. Dazu müssen wir nur die Werte einer Variable von den Werten der anderen Variable abziehen und in einer neuen Variable speichern.\n", "\n", "Die berechneten Indexwerte werden zwischen -4 und +4 liegen. Wenn wir die Werte von *hardrock* von *volksmusik* abziehen bedeutet dies: Je niedriger die Werte, desto eher präferiert jemand Volksmusik gegenüber Hardrock (je höher: umgekehrt. 0 = völlig ausgeglichen). Die neue Variable heißt *Volksm-Hardr*." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sexagewohnortvolksmusikhardrockVolksm-Hardr
015022.673.67-1.00
115711.003.33-2.33
226632.004.33-2.33
315022.332.67-0.33
416032.333.00-0.67
\n", "
" ], "text/plain": [ " sex age wohnort volksmusik hardrock Volksm-Hardr\n", "0 1 50 2 2.67 3.67 -1.00\n", "1 1 57 1 1.00 3.33 -2.33\n", "2 2 66 3 2.00 4.33 -2.33\n", "3 1 50 2 2.33 2.67 -0.33\n", "4 1 60 3 2.33 3.00 -0.67" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daten[\"Volksm-Hardr\"] = (daten[\"volksmusik\"]-daten['hardrock']) # Werte von -4 bis +4 sind möglich, 0 = Mittelwert\n", "\n", "daten.head().round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Grafische Darstellung\n", "\n", "Es bietet sich an, neu berechnete Variablen gleich anzusehen bzw. zu prüfen, bspw. mittels Häufigkeitsanalyse oder mit grafischen Verfahren. Sehen wir uns nach einer ersten deskriptiven Auswertungen einige Grafiken mit der neuen Variable *Volksm-Hardr* an. Den Anfang macht ein Histogramm, welches mit der Funktion **plot.hist()** aufgerufen wird. Dies weist Ähnlichkeiten mit einem Säulendiagramm auf, jedoch wird nicht jede Ausprägung der Variable mit einer Säule dargestellt sondern die Säulen repräsentieren - je nach Einstellung - meist mehrere Werte der Variablen. Die Säulen stehen für zusammengefasste Kategorien gleicher Breite (Spannweite) - die Anzahl der darzustellenden Kategorien kann mit dem Parameter *bins* beliebig eingestellt werden. Je höher die Anzahl der Kategorien, desto detaillierter die Darstellung." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-4.000000 2\n", "-3.333333 3\n", "-3.000000 4\n", "-2.666667 3\n", "-2.500000 1\n", " ..\n", " 3.333333 2\n", " 3.333333 2\n", " 3.666667 4\n", " 3.666667 6\n", " 4.000000 10\n", "Name: Volksm-Hardr, Length: 67, dtype: int64" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "daten[\"Volksm-Hardr\"].value_counts().sort_index() # um zu prüfen, ob die berechneten Werte tatsächlich nur von -4 bis +4 gehen" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = daten['Volksm-Hardr'].plot.hist(bins = 10) # In diesem Fall sollen zehn Kategorien angezeigt werden." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Wir können uns auch den Zusammenhang unserer neu berechneten Variable mit dem Alter der Befragten ansehen. Es zeigt sich, dass ältere Personen eher Volksmusik präferieren, jüngere eher Hardrock." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = daten.plot.scatter(x = 'age', y = 'Volksm-Hardr', rot = 0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In diese Grafik können wir auch noch das Geschlecht als dritte Variable einfügen. Violett sind hier die Frauen (1), gelb die Männer (2) dargestellt. Es ist rein optisch kein besonderer Unterschied zwischen den Geschlechtern zu erkennen. Der zuvor postulierte Zusammenhang zwischen unserer neuen Variable und dem Alter zeigt sich für beide Geschlechter in ähnlicher Weise." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = daten.plot.scatter(x = 'age', y = 'Volksm-Hardr', c = 'sex', colormap = 'viridis', rot = 0)\n", "\n", "# sex: 1 = weiblich, 2 = männlich" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.2) Mittelwertindex berechnen\n", "\n", "Für diesen Abschnitt laden wir nun einen neuen Datensatz. Darin sind Variablen enthalten, aus denen wir einen sinnvollen Mittelwertindex bilden können." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexage
05.05.05.02.055.0
15.05.05.01.048.0
25.05.05.02.060.0
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age\n", "0 5.0 5.0 5.0 2.0 55.0\n", "1 5.0 5.0 5.0 1.0 48.0\n", "2 5.0 5.0 5.0 2.0 60.0" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pyreadstat as prs\n", "\n", "neuedaten, meta = prs.read_sav(\"C:\\\\Datenfiles\\\\neue daten.sav\")\n", "\n", "neuedaten.head(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Überprüfung des neuen Datenfiles" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'rock': {1.0: '(1) Sehr gerne',\n", " 2.0: '(2)',\n", " 3.0: '(3)',\n", " 4.0: '(4)',\n", " 5.0: '(5) Überhaupt nicht gerne',\n", " 6.0: 'Kenne ich nicht'},\n", " 'metal': {1.0: '(1) Sehr gerne',\n", " 2.0: '(2)',\n", " 3.0: '(3)',\n", " 4.0: '(4)',\n", " 5.0: '(5) Überhaupt nicht gerne',\n", " 6.0: 'Kenne ich nicht'},\n", " 'hard_rock': {1.0: '(1) Sehr gerne',\n", " 2.0: '(2)',\n", " 3.0: '(3)',\n", " 4.0: '(4)',\n", " 5.0: '(5) Überhaupt nicht gerne',\n", " 6.0: 'Kenne ich nicht'},\n", " 'sex': {1.0: 'weiblich', 2.0: 'männlich'}}" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "meta.variable_value_labels" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(rock 1.0\n", " metal 1.0\n", " hard_rock 1.0\n", " sex 1.0\n", " age 18.0\n", " dtype: float64,\n", " rock 5.0\n", " metal 5.0\n", " hard_rock 5.0\n", " sex 2.0\n", " age 92.0\n", " dtype: float64,\n", " rock 5\n", " metal 5\n", " hard_rock 5\n", " sex 2\n", " age 52\n", " dtype: int64)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten.min(), neuedaten.max(), neuedaten.nunique()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### MW-Index Möglichkeit 1\n", "\n", "Diese funktioniert im Gegensatz zu Möglichkeit 2 und 3 nur, wenn alle Spalten Werte enthalten. Sollte eine Spalte *NaN* enthalten, ist auch das Ergebnis für diese Zeile *NaN*!" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1
05.05.05.02.055.05.0
15.05.05.01.048.05.0
25.05.05.02.060.05.0
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1\n", "0 5.0 5.0 5.0 2.0 55.0 5.0\n", "1 5.0 5.0 5.0 1.0 48.0 5.0\n", "2 5.0 5.0 5.0 2.0 60.0 5.0" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['MI1'] = (neuedaten['rock']+neuedaten['metal']+neuedaten['hard_rock'])/3\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### MW-Index Möglichkeit 2\n", "\n", "\n", "**iloc** bietet die Möglichkeit, bestimmte Zeilen für die Berechnung auszuwählen.\n", "\n", "[pandas.DataFrame.iloc](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2
05.05.05.02.055.05.05.0
15.05.05.01.048.05.05.0
25.05.05.02.060.05.05.0
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0\n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0\n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['MI2'] = neuedaten[['rock', 'metal', 'hard_rock']].iloc[::].mean(axis = 1)\n", "\n", "# 'iloc[::]' bezieht sich auf alle zeilen\n", "# 'iloc[0:10:2]' würde bspw. bedeuten, dass jede 2. Zeile von Zeile 0 bis zu Zeile 9 (also die 10. Zeile) einbezogen wird\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### MW-Index Möglichkeit 3\n", "\n", "Berechnet den Mittelwertindex für alle Zeilen. Wie auch bei Möglichkeit 2 können 'NaN' in Spalten vorkommen, im Gegensatz zu Möglichkeit 1 oben ist dies hier aber kein Problem - diese Spalten werden nicht berücksichtigt, der Mittelwert wird aus den übrigen Spalten mit gültigen Werten gebildet.\n", "\n", "Vgl. Buch von Jake VanderPlas, S. 160" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3
05.05.05.02.055.05.05.05.0
15.05.05.01.048.05.05.05.0
25.05.05.02.060.05.05.05.0
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0\n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0\n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['MI3'] = neuedaten[['rock', 'metal', 'hard_rock']].mean(axis = 1) # oder '(axis = 'columns')', das wäre das Gleiche\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.3) Summenindex berechnen\n", "\n", "Wieder wie oben mit **iloc**, wenn man bestimmte Zeilen auswählen möchte, oder ohne **iloc**, wenn man den Summenindex für alle Zeilen berechnen möchte." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SI
05.05.05.02.055.05.05.05.015.0
15.05.05.01.048.05.05.05.015.0
25.05.05.02.060.05.05.05.015.0
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0\n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0\n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['SI'] = neuedaten[['rock', 'metal', 'hard_rock']].sum(axis = 1)\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.4) Werte in Fällen zählen\n", "\n", "Z.B. bei 1 / 0 Variablen über die Spalten den 1er zählen...\n", "\n", "[count the frequency that a value occurs in a dataframe column](https://stackoverflow.com/questions/22391433/count-the-frequency-that-a-value-occurs-in-a-dataframe-column)\n", "\n", "[pandas.DataFrame.count](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.count.html)\n", "\n", "[Python Pandas: Counting the frequency of a specific value in each row of dataframe?](https://stackoverflow.com/questions/33823091/python-pandas-counting-the-frequency-of-a-specific-value-in-each-row-of-datafra)\n" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISumme
05.05.05.02.055.05.05.05.015.00
15.05.05.01.048.05.05.05.015.00
25.05.05.02.060.05.05.05.015.00
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0\n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0\n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['Summe'] = (neuedaten[['rock','metal', 'hard_rock']] == 1).sum(axis = 1)\n", "\n", "neuedaten.head(3)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISumme
2971.01.01.01.035.01.01.01.03.03
2981.01.01.02.023.01.01.01.03.03
2991.01.01.01.031.01.01.01.03.03
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe\n", "297 1.0 1.0 1.0 1.0 35.0 1.0 1.0 1.0 3.0 3\n", "298 1.0 1.0 1.0 2.0 23.0 1.0 1.0 1.0 3.0 3\n", "299 1.0 1.0 1.0 1.0 31.0 1.0 1.0 1.0 3.0 3" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten.tail(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.5) Variable standardisieren\n", "\n", "Standardisiert man eine Variable, so dividiert man die Standardabweichung durch den Mittelwert. Die neu berechnet Variable weist sodann einen Mittelwert von 0 und eine Standardabweichung von 1 auf." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-age
05.05.05.02.055.05.05.05.015.001.28
15.05.05.01.048.05.05.05.015.000.77
25.05.05.02.060.05.05.05.015.001.64
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0 1.28\n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0 0.77\n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0 1.64" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x = neuedaten.age\n", "\n", "neuedaten['z-age'] = (x-x.mean())/x.std()\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(-2.562764815176403e-16, 0.9999999999999993)" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten[\"z-age\"].mean(), neuedaten[\"z-age\"].std() # Mittelwert liegt bei 0, Standardabweichung liegt bei 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Korreliert man die Originalvariable mit der standardisierten Variable, sollte der Korrelationskoeffizient bei 1 liegen." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
agez-age
age1.01.0
z-age1.01.0
\n", "
" ], "text/plain": [ " age z-age\n", "age 1.0 1.0\n", "z-age 1.0 1.0" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten[['age', 'z-age']].corr()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[Standardize columns of a dataframe](https://github.com/pandas-dev/pandas/issues/18028)\n", "\n", "[pandas.DataFrame.apply](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Man kann auch mehrere Variablen gleichzeitig standardisieren. Dazu stellt man vorher eine **lambda** Funktion auf, welche man danach auf die ausgewählten Variablen mit **apply()** anwendet." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhr
05.05.05.02.055.05.05.05.015.001.282.860.961.34
15.05.05.01.048.05.05.05.015.000.772.860.961.34
25.05.05.02.060.05.05.05.015.001.642.860.961.34
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age zr \\\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0 1.28 2.86 \n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0 0.77 2.86 \n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0 1.64 2.86 \n", "\n", " zm zhr \n", "0 0.96 1.34 \n", "1 0.96 1.34 \n", "2 0.96 1.34 " ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "st = lambda x: (x-x.mean()) / x.std()\n", "\n", "neuedaten[['zr', 'zm', 'zhr']] = neuedaten[['rock', 'metal', 'hard_rock']].apply(st)\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.6) Variablen zentrieren\n", "\n", "Bereits aus Kapitel 6 bekannt und mit der Methode der Standardisierung von Variablen (siehe vorhin) verwandt ist die Methode der Zentrierung bzw. Mittelwertzentrierung. Dazu wird von jeder Ausprägung eine Variable jeweils der Mittelwert dieser Variable abgezogen. Im Folgenden werden 3 Möglichkeiten gezeigt: Beim ersten Bsp. kommt die Funktion **transform()** zusammen mit einer **lambda** Funktion zum Einsatz, beim 2. Bsp. wird die Funktion **subtract()** herangezogen und beim 3. Bsp. wird die Funktion **apply()** eingesetzt (man beachte dabei, dass die ausgewählte Variable in doppelter eckiger Klammer anzuführen ist!)." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhrage_zentr
05.05.05.02.055.05.05.05.015.001.282.860.961.3417.6
15.05.05.01.048.05.05.05.015.000.772.860.961.3410.6
25.05.05.02.060.05.05.05.015.001.642.860.961.3422.6
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age zr \\\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0 1.28 2.86 \n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0 0.77 2.86 \n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0 1.64 2.86 \n", "\n", " zm zhr age_zentr \n", "0 0.96 1.34 17.6 \n", "1 0.96 1.34 10.6 \n", "2 0.96 1.34 22.6 " ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['age_zentr'] = neuedaten['age'].transform(lambda x: x-x.mean())\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhrage_zentrage_zentr2
05.05.05.02.055.05.05.05.015.001.282.860.961.3417.617.6
15.05.05.01.048.05.05.05.015.000.772.860.961.3410.610.6
25.05.05.02.060.05.05.05.015.001.642.860.961.3422.622.6
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age zr \\\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0 1.28 2.86 \n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0 0.77 2.86 \n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0 1.64 2.86 \n", "\n", " zm zhr age_zentr age_zentr2 \n", "0 0.96 1.34 17.6 17.6 \n", "1 0.96 1.34 10.6 10.6 \n", "2 0.96 1.34 22.6 22.6 " ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten['age_zentr2'] = neuedaten['age'].subtract(neuedaten['age'].mean())\n", "\n", "neuedaten.head(3).round(2)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhrage_zentrage_zentr2age_zentr3
05.05.05.02.055.05.05.05.015.001.282.860.961.3417.617.617.6
15.05.05.01.048.05.05.05.015.000.772.860.961.3410.610.610.6
25.05.05.02.060.05.05.05.015.001.642.860.961.3422.622.622.6
35.05.05.01.056.05.05.05.015.001.352.860.961.3418.618.618.6
45.05.05.02.072.05.05.05.015.002.512.860.961.3434.634.634.6
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age zr \\\n", "0 5.0 5.0 5.0 2.0 55.0 5.0 5.0 5.0 15.0 0 1.28 2.86 \n", "1 5.0 5.0 5.0 1.0 48.0 5.0 5.0 5.0 15.0 0 0.77 2.86 \n", "2 5.0 5.0 5.0 2.0 60.0 5.0 5.0 5.0 15.0 0 1.64 2.86 \n", "3 5.0 5.0 5.0 1.0 56.0 5.0 5.0 5.0 15.0 0 1.35 2.86 \n", "4 5.0 5.0 5.0 2.0 72.0 5.0 5.0 5.0 15.0 0 2.51 2.86 \n", "\n", " zm zhr age_zentr age_zentr2 age_zentr3 \n", "0 0.96 1.34 17.6 17.6 17.6 \n", "1 0.96 1.34 10.6 10.6 10.6 \n", "2 0.96 1.34 22.6 22.6 22.6 \n", "3 0.96 1.34 18.6 18.6 18.6 \n", "4 0.96 1.34 34.6 34.6 34.6 " ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "zentrieren=(lambda x: x-x.mean())\n", "\n", "neuedaten['age_zentr3'] = neuedaten[['age']].apply(zentrieren)\n", "\n", "neuedaten.head().round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.7) Variablen normalisieren\n", "\n", "D.h. die Werte einer Variable werden auf Werte zwischen 0 und 1 transformiert - dies kann man durch Multipliktation mit 100 dann auch in Prozent ausdrücken.\n", "\n", "Die Formel dafür ist etwas komplexer (daher auch etwas übersichtlicher aufgeteilt), man sollte sich diese genau anschauen und versuchen, alles nach zu vollziehen.\n", "\n", "[How to normalize dataframe pandas](https://www.kaggle.com/parasjindal96/how-to-normalize-dataframe-pandas)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhrage_zentrage_zentr2age_zentr3agen
1014.04.04.01.092.04.004.004.0012.003.971.900.250.6254.654.654.6100.0
561.05.05.02.075.03.673.673.6711.012.73-0.960.961.3437.637.637.677.0
65.05.05.01.075.05.005.005.0015.002.732.860.961.3437.637.637.677.0
45.05.05.02.072.05.005.005.0015.002.512.860.961.3434.634.634.673.0
323.05.05.01.069.04.334.334.3313.002.300.950.961.3431.631.631.668.9
\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age \\\n", "101 4.0 4.0 4.0 1.0 92.0 4.00 4.00 4.00 12.0 0 3.97 \n", "56 1.0 5.0 5.0 2.0 75.0 3.67 3.67 3.67 11.0 1 2.73 \n", "6 5.0 5.0 5.0 1.0 75.0 5.00 5.00 5.00 15.0 0 2.73 \n", "4 5.0 5.0 5.0 2.0 72.0 5.00 5.00 5.00 15.0 0 2.51 \n", "32 3.0 5.0 5.0 1.0 69.0 4.33 4.33 4.33 13.0 0 2.30 \n", "\n", " zr zm zhr age_zentr age_zentr2 age_zentr3 agen \n", "101 1.90 0.25 0.62 54.6 54.6 54.6 100.0 \n", "56 -0.96 0.96 1.34 37.6 37.6 37.6 77.0 \n", "6 2.86 0.96 1.34 37.6 37.6 37.6 77.0 \n", "4 2.86 0.96 1.34 34.6 34.6 34.6 73.0 \n", "32 0.95 0.96 1.34 31.6 31.6 31.6 68.9 " ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten[\"agen\"] = (\n", " (neuedaten[\"age\"]-neuedaten[\"age\"].min())\n", " /\n", " (neuedaten[\"age\"].max()-neuedaten[\"age\"].min())\n", " ).round(3)*100\n", "\n", "neuedaten.round(2).sort_values('age', ascending = False).head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Nachfolgend kann man die Werte der Originalvariable *age* (aufsteigend sortiert) mit jenen der normalisierten Variable *agen* vergleichen (diese geht von 0 bis 100)." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISummez-agezrzmzhrage_zentrage_zentr2age_zentr3agen
511.05.05.01.018.03.673.673.6711.01-1.41-0.960.961.34-19.4-19.4-19.40.0
1671.04.03.01.019.02.672.672.678.01-1.34-0.960.25-0.11-18.4-18.4-18.41.4
2541.01.02.01.019.01.331.331.334.02-1.34-0.96-1.89-0.83-18.4-18.4-18.41.4
2401.02.02.01.019.01.671.671.675.01-1.34-0.96-1.18-0.83-18.4-18.4-18.41.4
1821.03.03.01.019.02.332.332.337.01-1.34-0.96-0.46-0.11-18.4-18.4-18.41.4
.........................................................
323.05.05.01.069.04.334.334.3313.002.300.950.961.3431.631.631.668.9
45.05.05.02.072.05.005.005.0015.002.512.860.961.3434.634.634.673.0
65.05.05.01.075.05.005.005.0015.002.732.860.961.3437.637.637.677.0
561.05.05.02.075.03.673.673.6711.012.73-0.960.961.3437.637.637.677.0
1014.04.04.01.092.04.004.004.0012.003.971.900.250.6254.654.654.6100.0
\n", "

300 rows × 18 columns

\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe z-age \\\n", "51 1.0 5.0 5.0 1.0 18.0 3.67 3.67 3.67 11.0 1 -1.41 \n", "167 1.0 4.0 3.0 1.0 19.0 2.67 2.67 2.67 8.0 1 -1.34 \n", "254 1.0 1.0 2.0 1.0 19.0 1.33 1.33 1.33 4.0 2 -1.34 \n", "240 1.0 2.0 2.0 1.0 19.0 1.67 1.67 1.67 5.0 1 -1.34 \n", "182 1.0 3.0 3.0 1.0 19.0 2.33 2.33 2.33 7.0 1 -1.34 \n", ".. ... ... ... ... ... ... ... ... ... ... ... \n", "32 3.0 5.0 5.0 1.0 69.0 4.33 4.33 4.33 13.0 0 2.30 \n", "4 5.0 5.0 5.0 2.0 72.0 5.00 5.00 5.00 15.0 0 2.51 \n", "6 5.0 5.0 5.0 1.0 75.0 5.00 5.00 5.00 15.0 0 2.73 \n", "56 1.0 5.0 5.0 2.0 75.0 3.67 3.67 3.67 11.0 1 2.73 \n", "101 4.0 4.0 4.0 1.0 92.0 4.00 4.00 4.00 12.0 0 3.97 \n", "\n", " zr zm zhr age_zentr age_zentr2 age_zentr3 agen \n", "51 -0.96 0.96 1.34 -19.4 -19.4 -19.4 0.0 \n", "167 -0.96 0.25 -0.11 -18.4 -18.4 -18.4 1.4 \n", "254 -0.96 -1.89 -0.83 -18.4 -18.4 -18.4 1.4 \n", "240 -0.96 -1.18 -0.83 -18.4 -18.4 -18.4 1.4 \n", "182 -0.96 -0.46 -0.11 -18.4 -18.4 -18.4 1.4 \n", ".. ... ... ... ... ... ... ... \n", "32 0.95 0.96 1.34 31.6 31.6 31.6 68.9 \n", "4 2.86 0.96 1.34 34.6 34.6 34.6 73.0 \n", "6 2.86 0.96 1.34 37.6 37.6 37.6 77.0 \n", "56 -0.96 0.96 1.34 37.6 37.6 37.6 77.0 \n", "101 1.90 0.25 0.62 54.6 54.6 54.6 100.0 \n", "\n", "[300 rows x 18 columns]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "neuedaten.sort_values('age').round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Möchte man mehrere Variablen gleichzeitig normalisieren, bietet sich wiederum eine **lambda** Funktion an." ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
rockmetalhard_rocksexageMI1MI2MI3SISumme...zrzmzhrage_zentrage_zentr2age_zentr3agenrnmnhrn
2991.01.01.01.031.01.001.001.003.03...-0.96-1.89-1.56-6.4-6.4-6.417.60.00.00.0
1961.05.02.02.040.02.672.672.678.01...-0.960.96-0.832.62.62.629.70.0100.025.0
1971.05.02.01.050.02.672.672.678.01...-0.960.96-0.8312.612.612.643.20.0100.025.0
2041.04.02.01.023.02.332.332.337.01...-0.960.25-0.83-14.4-14.4-14.46.80.075.025.0
2051.04.02.01.026.02.332.332.337.01...-0.960.25-0.83-11.4-11.4-11.410.80.075.025.0
\n", "

5 rows × 21 columns

\n", "
" ], "text/plain": [ " rock metal hard_rock sex age MI1 MI2 MI3 SI Summe ... \\\n", "299 1.0 1.0 1.0 1.0 31.0 1.00 1.00 1.00 3.0 3 ... \n", "196 1.0 5.0 2.0 2.0 40.0 2.67 2.67 2.67 8.0 1 ... \n", "197 1.0 5.0 2.0 1.0 50.0 2.67 2.67 2.67 8.0 1 ... \n", "204 1.0 4.0 2.0 1.0 23.0 2.33 2.33 2.33 7.0 1 ... \n", "205 1.0 4.0 2.0 1.0 26.0 2.33 2.33 2.33 7.0 1 ... \n", "\n", " zr zm zhr age_zentr age_zentr2 age_zentr3 agen rn mn \\\n", "299 -0.96 -1.89 -1.56 -6.4 -6.4 -6.4 17.6 0.0 0.0 \n", "196 -0.96 0.96 -0.83 2.6 2.6 2.6 29.7 0.0 100.0 \n", "197 -0.96 0.96 -0.83 12.6 12.6 12.6 43.2 0.0 100.0 \n", "204 -0.96 0.25 -0.83 -14.4 -14.4 -14.4 6.8 0.0 75.0 \n", "205 -0.96 0.25 -0.83 -11.4 -11.4 -11.4 10.8 0.0 75.0 \n", "\n", " hrn \n", "299 0.0 \n", "196 25.0 \n", "197 25.0 \n", "204 25.0 \n", "205 25.0 \n", "\n", "[5 rows x 21 columns]" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "nor = lambda x: (x-x.min()) / (x.max()-x.min())\n", "\n", "neuedaten[['rn', 'mn', 'hrn']] = neuedaten[['rock', 'metal', 'hard_rock']].apply(nor).round(3)*100\n", "\n", "neuedaten.sort_values('rock', ascending = True).head().round(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", " \n", " \n", " \n", "
https://github.com/manfred2020/DA_mit_Python
" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.7.9" } }, "nbformat": 4, "nbformat_minor": 2 }