diff --git a/2024-Wrapped.ipynb b/2024-Wrapped.ipynb
new file mode 100644
index 0000000..dd89032
--- /dev/null
+++ b/2024-Wrapped.ipynb
@@ -0,0 +1,882 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Binärgewitter 2024\n",
+ "\n",
+ "Tagline?\n",
+ "Let's take a look:\n",
+ "Zuerst müssen wir alle librarys importieren und Daten laden."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import calmap"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "podcasts = pd.read_csv(\"data/2024.csv\", sep=\",\", index_col=1)\n",
+ "podcasts.index = pd.to_datetime(podcasts.index, format=\"%Y-%m-%d\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Übersicht\n",
+ "\n",
+ "Diese Jahr habe wir einige Sendungen veröffentlicht:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Talk: 22\n",
+ "Westcoast: 0\n",
+ "Total: 22\n"
+ ]
+ }
+ ],
+ "source": [
+ "total_count = len(podcasts.index)\n",
+ "talk_count = len(podcasts[podcasts.Type == \"Talk\"].index)\n",
+ "westcoast_count = len(podcasts[podcasts.Type == \"Westcoast\"].index)\n",
+ "\n",
+ "print(f\"Talk: {talk_count}\")\n",
+ "print(f\"Westcoast: {westcoast_count}\")\n",
+ "print(f\"Total: {total_count}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "2024 haben wir 22 Sendungen gemacht! Das letzte mal als wir so viele Sendungen hatten war 2020."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Binärgewitter Talk"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Für Binärgewitter Talk sind das alle 2.3636363636363638 Wochen eine Sendung.\n"
+ ]
+ }
+ ],
+ "source": [
+ "distance_between_recordings = 52 / talk_count\n",
+ "print(f\"Für Binärgewitter Talk sind das alle {distance_between_recordings} Wochen eine Sendung.\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Wir machen ein Kopie und schauen uns nur die BGT Talk Sendungen genauer an."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Name | \n",
+ " Record Date | \n",
+ " Type | \n",
+ " Duration | \n",
+ " ingo | \n",
+ " l33tname | \n",
+ " madmas | \n",
+ " makefu | \n",
+ "
\n",
+ " \n",
+ " Release Date | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 2024-12-28 | \n",
+ " Binärgewitter Talk #350: Wir haben doch keine ... | \n",
+ " 2024-12-28 | \n",
+ " Talk | \n",
+ " 01:02:24 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-12-11 | \n",
+ " Binärgewitter Talk #349: Blauhelm Browser | \n",
+ " 2024-11-10 | \n",
+ " Talk | \n",
+ " 02:23:12 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-11-20 | \n",
+ " Binärgewitter Talk #348: Nicht mehr ganz Knusper | \n",
+ " 2024-11-19 | \n",
+ " Talk | \n",
+ " 02:02:42 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " 2024-11-09 | \n",
+ " Binärgewitter Talk #347: DRM Brennstäbe | \n",
+ " 2024-11-08 | \n",
+ " Talk | \n",
+ " 01:15:08 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-10-26 | \n",
+ " Binärgewitter Talk #346: Duoingo | \n",
+ " 2024-10-25 | \n",
+ " Talk | \n",
+ " 02:07:34 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-10-14 | \n",
+ " Binärgewitter Talk #345: zu Ingos Studienzeiten | \n",
+ " 2024-10-13 | \n",
+ " Talk | \n",
+ " 02:35:36 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-10-01 | \n",
+ " Binärgewitter Talk #344: Das Internet ist rund | \n",
+ " 2024-09-30 | \n",
+ " Talk | \n",
+ " 02:24:53 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-09-12 | \n",
+ " Binärgewitter Talk #343: Alle 10 Jahre updaten | \n",
+ " 2024-09-10 | \n",
+ " Talk | \n",
+ " 02:26:24 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-08-21 | \n",
+ " Binärgewitter Talk #342: Doppeldiskettenbrief | \n",
+ " 2024-08-19 | \n",
+ " Talk | \n",
+ " 02:24:04 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-08-03 | \n",
+ " Binärgewitter Talk #341: Meister Aider | \n",
+ " 2024-08-02 | \n",
+ " Talk | \n",
+ " 02:29:47 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-06-28 | \n",
+ " Binärgewitter Talk #340: the crowd strikes back | \n",
+ " 2024-07-19 | \n",
+ " Talk | \n",
+ " 02:06:02 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-06-28 | \n",
+ " Binärgewitter Talk #339: Extention Blast | \n",
+ " 2024-06-27 | \n",
+ " Talk | \n",
+ " 02:02:11 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " 2024-06-12 | \n",
+ " Binärgewitter Talk #338: neu in eurem apt store | \n",
+ " 2024-06-11 | \n",
+ " Talk | \n",
+ " 02:36:13 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-05-21 | \n",
+ " Binärgewitter Talk #337: Saubere Studenten | \n",
+ " 2024-05-20 | \n",
+ " Talk | \n",
+ " 02:38:20 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-05-10 | \n",
+ " Binärgewitter Talk #336: 18 Euro Mediathek | \n",
+ " 2024-05-09 | \n",
+ " Talk | \n",
+ " 03:21:20 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-04-20 | \n",
+ " Binärgewitter Talk #335: KaPutty | \n",
+ " 2024-04-19 | \n",
+ " Talk | \n",
+ " 02:51:26 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-03-29 | \n",
+ " Binärgewitter Talk #334: Die Adobe Lightroom D... | \n",
+ " 2024-03-28 | \n",
+ " Talk | \n",
+ " 02:45:18 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-03-07 | \n",
+ " Binärgewitter Talk #333: systemd expansion pack | \n",
+ " 2024-03-05 | \n",
+ " Talk | \n",
+ " 02:06:30 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-02-17 | \n",
+ " Binärgewitter Talk #332: Der kleine Felix möch... | \n",
+ " 2024-02-16 | \n",
+ " Talk | \n",
+ " 01:57:37 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-02-03 | \n",
+ " Binärgewitter Talk #331: Atlassian Klaut Leben... | \n",
+ " 2024-02-02 | \n",
+ " Talk | \n",
+ " 02:16:48 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-01-20 | \n",
+ " Binärgewitter Talk #330: OpenSource Plus | \n",
+ " 2024-01-19 | \n",
+ " Talk | \n",
+ " 02:30:16 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " 2024-01-05 | \n",
+ " Binärgewitter Talk #329: Turbo Niklaus | \n",
+ " 2024-01-04 | \n",
+ " Talk | \n",
+ " 02:25:06 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Name Record Date \\\n",
+ "Release Date \n",
+ "2024-12-28 Binärgewitter Talk #350: Wir haben doch keine ... 2024-12-28 \n",
+ "2024-12-11 Binärgewitter Talk #349: Blauhelm Browser 2024-11-10 \n",
+ "2024-11-20 Binärgewitter Talk #348: Nicht mehr ganz Knusper 2024-11-19 \n",
+ "2024-11-09 Binärgewitter Talk #347: DRM Brennstäbe 2024-11-08 \n",
+ "2024-10-26 Binärgewitter Talk #346: Duoingo 2024-10-25 \n",
+ "2024-10-14 Binärgewitter Talk #345: zu Ingos Studienzeiten 2024-10-13 \n",
+ "2024-10-01 Binärgewitter Talk #344: Das Internet ist rund 2024-09-30 \n",
+ "2024-09-12 Binärgewitter Talk #343: Alle 10 Jahre updaten 2024-09-10 \n",
+ "2024-08-21 Binärgewitter Talk #342: Doppeldiskettenbrief 2024-08-19 \n",
+ "2024-08-03 Binärgewitter Talk #341: Meister Aider 2024-08-02 \n",
+ "2024-06-28 Binärgewitter Talk #340: the crowd strikes back 2024-07-19 \n",
+ "2024-06-28 Binärgewitter Talk #339: Extention Blast 2024-06-27 \n",
+ "2024-06-12 Binärgewitter Talk #338: neu in eurem apt store 2024-06-11 \n",
+ "2024-05-21 Binärgewitter Talk #337: Saubere Studenten 2024-05-20 \n",
+ "2024-05-10 Binärgewitter Talk #336: 18 Euro Mediathek 2024-05-09 \n",
+ "2024-04-20 Binärgewitter Talk #335: KaPutty 2024-04-19 \n",
+ "2024-03-29 Binärgewitter Talk #334: Die Adobe Lightroom D... 2024-03-28 \n",
+ "2024-03-07 Binärgewitter Talk #333: systemd expansion pack 2024-03-05 \n",
+ "2024-02-17 Binärgewitter Talk #332: Der kleine Felix möch... 2024-02-16 \n",
+ "2024-02-03 Binärgewitter Talk #331: Atlassian Klaut Leben... 2024-02-02 \n",
+ "2024-01-20 Binärgewitter Talk #330: OpenSource Plus 2024-01-19 \n",
+ "2024-01-05 Binärgewitter Talk #329: Turbo Niklaus 2024-01-04 \n",
+ "\n",
+ " Type Duration ingo l33tname madmas makefu \n",
+ "Release Date \n",
+ "2024-12-28 Talk 01:02:24 1 0 1 1 \n",
+ "2024-12-11 Talk 02:23:12 1 1 1 1 \n",
+ "2024-11-20 Talk 02:02:42 1 1 1 0 \n",
+ "2024-11-09 Talk 01:15:08 1 0 1 1 \n",
+ "2024-10-26 Talk 02:07:34 1 1 0 1 \n",
+ "2024-10-14 Talk 02:35:36 1 1 1 1 \n",
+ "2024-10-01 Talk 02:24:53 1 1 1 1 \n",
+ "2024-09-12 Talk 02:26:24 1 1 1 1 \n",
+ "2024-08-21 Talk 02:24:04 0 1 1 1 \n",
+ "2024-08-03 Talk 02:29:47 1 1 1 1 \n",
+ "2024-06-28 Talk 02:06:02 1 0 0 1 \n",
+ "2024-06-28 Talk 02:02:11 1 1 1 0 \n",
+ "2024-06-12 Talk 02:36:13 1 1 1 1 \n",
+ "2024-05-21 Talk 02:38:20 1 1 0 1 \n",
+ "2024-05-10 Talk 03:21:20 1 1 1 1 \n",
+ "2024-04-20 Talk 02:51:26 1 0 1 1 \n",
+ "2024-03-29 Talk 02:45:18 1 1 1 1 \n",
+ "2024-03-07 Talk 02:06:30 1 1 0 1 \n",
+ "2024-02-17 Talk 01:57:37 1 1 0 1 \n",
+ "2024-02-03 Talk 02:16:48 0 1 1 1 \n",
+ "2024-01-20 Talk 02:30:16 1 1 1 1 \n",
+ "2024-01-05 Talk 02:25:06 1 1 1 1 "
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "talk = podcasts[podcasts.Type == \"Talk\"]\n",
+ "talk.drop(columns=['pfleidi', 'marc'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Sendungen pro Host:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "ingo: 20\n",
+ "l33tname: 18\n",
+ "madmas: 17\n",
+ "makefu: 20\n"
+ ]
+ }
+ ],
+ "source": [
+ "ingo_count = talk[\"ingo\"].sum()\n",
+ "l33tname_count = talk[\"l33tname\"].sum()\n",
+ "madmas_count = talk[\"madmas\"].sum()\n",
+ "makefu_count = talk[\"makefu\"].sum()\n",
+ "\n",
+ "\n",
+ "print(f\"ingo: {ingo_count}\")\n",
+ "print(f\"l33tname: {l33tname_count}\")\n",
+ "print(f\"madmas: {madmas_count}\")\n",
+ "print(f\"makefu: {makefu_count}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In Prozen sind das:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "ingo: 91%\n",
+ "makefu: 91%\n",
+ "l33tname: 82%\n",
+ "madmas: 77%\n"
+ ]
+ }
+ ],
+ "source": [
+ "print(f\"ingo: {ingo_count/talk_count:.0%}\")\n",
+ "print(f\"makefu: {makefu_count/talk_count:.0%}\")\n",
+ "print(f\"l33tname: {l33tname_count/talk_count:.0%}\")\n",
+ "print(f\"madmas: {madmas_count/talk_count:.0%}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Niemand war fuer alle Sendungen hier, alle haben die eine oder andere Sendung verpasst."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Duration"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Da der feed jetzt eine duration pro Sendung angibt kann man jetzt auch interessante Auswertungen machen."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import datetime\n",
+ "\n",
+ "convert_duration_to_sec = lambda v: (int(v.split(\":\")[0]) * 60*60) + (int(v.split(\":\")[1]) * 60) + int(v.split(\":\")[2])\n",
+ "talk['Duration_sec'] = talk['Duration'].transform(convert_duration_to_sec)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Unsere totale Sendezeit war diese Jahr:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "'2 days, 2:48:51'"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "total_sec = int(talk['Duration_sec'].sum())\n",
+ "str(datetime.timedelta(seconds=total_sec))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Im Durchschnitt ist eine Sendung:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "'2:18:35'"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "avg_sec = int(talk['Duration_sec'].mean())\n",
+ "str(datetime.timedelta(seconds=avg_sec))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Die kürzeste Sendung die wir diese Jahr gemacht haben:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Name | \n",
+ " Record Date | \n",
+ " Type | \n",
+ " Duration | \n",
+ " ingo | \n",
+ " l33tname | \n",
+ " madmas | \n",
+ " makefu | \n",
+ " pfleidi | \n",
+ " marc | \n",
+ " Duration_sec | \n",
+ "
\n",
+ " \n",
+ " Release Date | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 2024-12-28 | \n",
+ " Binärgewitter Talk #350: Wir haben doch keine ... | \n",
+ " 2024-12-28 | \n",
+ " Talk | \n",
+ " 01:02:24 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 3744 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Name Record Date \\\n",
+ "Release Date \n",
+ "2024-12-28 Binärgewitter Talk #350: Wir haben doch keine ... 2024-12-28 \n",
+ "\n",
+ " Type Duration ingo l33tname madmas makefu pfleidi marc \\\n",
+ "Release Date \n",
+ "2024-12-28 Talk 01:02:24 1 0 1 1 0 0 \n",
+ "\n",
+ " Duration_sec \n",
+ "Release Date \n",
+ "2024-12-28 3744 "
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "shortes_episode = talk[talk['Duration_sec'] == talk['Duration_sec'].min()]\n",
+ "shortes_episode"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Und nicht zuletzt die längste Sendung:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Name | \n",
+ " Record Date | \n",
+ " Type | \n",
+ " Duration | \n",
+ " ingo | \n",
+ " l33tname | \n",
+ " madmas | \n",
+ " makefu | \n",
+ " pfleidi | \n",
+ " marc | \n",
+ " Duration_sec | \n",
+ "
\n",
+ " \n",
+ " Release Date | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 2024-05-10 | \n",
+ " Binärgewitter Talk #336: 18 Euro Mediathek | \n",
+ " 2024-05-09 | \n",
+ " Talk | \n",
+ " 03:21:20 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 12080 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Name Record Date Type \\\n",
+ "Release Date \n",
+ "2024-05-10 Binärgewitter Talk #336: 18 Euro Mediathek 2024-05-09 Talk \n",
+ "\n",
+ " Duration ingo l33tname madmas makefu pfleidi marc \\\n",
+ "Release Date \n",
+ "2024-05-10 03:21:20 1 1 1 1 0 0 \n",
+ "\n",
+ " Duration_sec \n",
+ "Release Date \n",
+ "2024-05-10 12080 "
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "longest_episode = talk[talk['Duration_sec'] == talk['Duration_sec'].max()]\n",
+ "longest_episode"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Recording datum\n",
+ "\n",
+ "Hier sehen wir, an welchen Tagen wir aufnehmen."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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rrgiBx98cPbaa69MmDAhp59+eq688sr069cv3/jGNzJ16tTstddeueGGGzJlypR66xg8eHDGjRuX448/Ph06dMi0adMapLaqBlkLAAAAAABAktatW2fKlCmbNDo2du655+bcc8+tN3bSSSfVu33VVVflqquuatDaHCkCAAAAAABUBE0RAAAAAACgImiKAAAAAAAAFUFTBAAAAAAAqAiaIgAAAAAAQEXQFAEAAAAAACqCpggAAAAAAFARNEUAAAAAAICKUCgWi8VyFwEAAAAAANDYHCkCAAAAAABUBE0RAAAAAACgIlRt7h1Wr17dOJW8Rdu2bSsis1y5Mptfrszmlyuz+eXKbH65Mptfrszmlyuz+eXKbH65Mptf7saZf+63R5Nkdn7k/ytNe0wbN3PVkfs3SWbNTx4oTXtMZW5NmeXK3TiTd+ZIEQAAAAAAoCJoigAAAAAAABVBUwQAAAAAAKgImiIAAAAAAEBF0BQBAAAAAAAqgqYIAAAAAABQETRFAAAAAACABvXSSy/ljDPOSJcuXdK6det07NgxI0aMyIIFC8paV1VZ0wEAAAAAgGbnmGOOybp16zJnzpx07949f/nLXzJv3rysWLGirHU5UgQAAAAAAGgwL7/8cu69995MnTo1tbW16dq1a/bbb79ccMEF+cQnPpFly5alUChk8eLF9e5TKBRSV1eXJKmrq0uhUMi8efMycODAtG3bNoMHD87SpUs/UG2aIgAAAAAAQIOpqalJTU1N5s6dm9dee+0Dreuiiy7K9OnTs2jRolRVVWXMmDEfaH2aIgAAAAAAQIOpqqrK7NmzM2fOnGy//fY58MADc+GFF+bRRx/d7HVddtllGTJkSPr06ZPx48fnvvvuy9q1a993bZoiAAAAAABAgzrmmGPy/PPP54477sjIkSNTV1eXAQMGZPbs2Zu1nr59+5amO3XqlCR58cUX33ddmiIAAAAAAECDq66uzvDhwzNhwoTcd999GT16dCZOnJgWLf6vNVEsFkvLrl+//m3Xsc0225SmC4VCkmTDhg3vuyZNEQAAAAAAoNH16dMnr776ajp06JAkWb58eWnexhddb0xVTZICAAAAAABUhBUrVuTTn/50xowZk759+2bbbbfNokWLMm3atBx11FFp06ZN9t9//1x++eXp1q1bXnzxxXzlK19pkto0RQAAAAAAgAZTU1OT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d+6c2267LUmydOnSLF++PP/5n/9Zpi2iZcuW+drXvpZvfetbee655zaZ/9BDD+W4447LCSeckMceeyyTJk3KhAkTSl+Qjxo1Kg8++GC9H0E98cQTefTRR/OZz3ymSbeFxjFs2LD069ev9OO4d9vn/+xnP8snP/nJHHbYYXn44Yczb9687LfffmXeCppEkffklFNOKR511FFvO++ll14qJik+9thjxWKxWHz66aeLSYrXXnttaZknnniimKS4ZMmSJquZt3fKKacUW7ZsWWzXrl3p79hjjy0ecsghxa997Wv1lv3e975X7NSpU+l2kuK4cePqLTNo0KDiGWec0WT1U9+br80XX3yx2Lp16+KyZcuKy5YtK1ZXVxdfeuml4lFHHVU85ZRT3va+/+y1+81vfrOJt4ItxeDBg0uP//r164s777xzcf78+cVisVicP39+MUnx5ptvLi2/YsWKYps2bYq33HJLsVgsFmfNmlVMUly8eHGZtoBiA+8X1qxZU9xhhx1Kj3GxWCz27du3OGnSpCbbHja18eeyrl27Fq+44op68/v161ecOHFi6XaS4le+8pXS7VWrVhWTFO+6664mrJot1ft5Pv3oRz9q8jr5597p/XvWrFnF7bbbrt7yP/rRj4ob/1d40KBBxbPOOqveMgceeGCxX79+TVI/DevWW28t7rDDDsXq6uri4MGDixdccEHxkUceKRaLxeK9995bbN++fXHt2rX17tOjR4/i1VdfXSwWi8WJEycWW7ZsWXzuuedK8++6665iixYtisuXL2/ireGDeOCBB95xn/2Nb3yjmKT429/+tpik+Mtf/vJtl3vz/wErV65s5Ip5Jxu/X++///7FMWPGFItv2ad/5jOfKQ4fPrze/c4///xinz59Srf79etXvOSSS0q3L7jgguKgQYOaaCtoKO/0Pe3xxx9f3HPPPd/TPv+AAw4ojho1qklqZsviSJH34cknn8yJJ56Y7t27p3379tl9992TZJNTpPTt27c03alTpyTJiy++2MTV8nZqa2uzePHi0t+MGTPyyCOP5JJLLin9uqimpiann356li9fntWrV5fue8ABB9Rb1wEHHOBIkS1Ahw4dSqdLmDVrVg4//PDsvPPO9ZZ5r6/dgQMHNmntbBmWLl2aBx98MCeeeGKSpKqqKscff3yuu+66esttvA/Ycccd07t373r7gFatWtXb/1M+DbFfqK6uzkknnZTrr78+SfK73/0ujz/+uNMmbIU2fl22a9cu7du397kMmoH3+v79but4669C/Up063XMMcfk+eefzx133JGRI0emrq4uAwYMyOzZs/PII49k1apV2Wmnner9v+/pp5+u98vxLl26ZLfddivdPuCAA7Jhw4YsXbq0TFvFB/FuR44tW7YsLVu2zJAhQ5qsJj6YqVOnZs6cOZt8F7NkyZIceOCB9cYOPPDAPPnkk3njjTeSfxwtcuONNyb/eG7cdNNNGTVqVBNWT2MrFospFArvaZ+/ePHiHHLIIeUumTKoKncBW6MjjzwyXbt2zTXXXJNdd901GzZsyF577ZV169bVW26bbbYpTb95zloX3N0ytGvXLj179qw3tmrVqkyePDmf+tSnNlm+urq6Cavj/RozZkzp3P/f/va3N5n/Xl+77dq1a7Ka2XJcd911ef3117PrrruWxorFYlq3bp0rr7zyPa+nTZs2m5ynnPJpiP3C2LFj079//zz33HOZNWtWhg0blq5duzbpdvDPtWjRYpMvOzY+pd2bNv5cln98NvO5jLd6r88nthzv9v7tMa1M1dXVGT58eIYPH54JEyZk7NixmThxYs4888x06tQpdXV1m9znrdeeYevXs2fPFAqFLFmy5G2vEbBkyZLssMMOm5xaiy3fwQcfnBEjRuSCCy7Y7B8rnXjiifnyl7+c3/3ud1mzZk3+/Oc/5/jjj2+0Wml6S5YsSbdu3bJq1ap33ed7/VcuTZHNtGLFiixdujTXXHNN/vVf/zVJ8pvf/KbcZdEABgwYkKVLl27SLHmrBx54ICeffHK92xtftJfyGTlyZNatW5dCobDJtUC8dnknr7/+er773e9m+vTp+djHPlZv3tFHH52bbrope+yxR/KP13yXLl2SJCtXrswf/vCH7LnnnmWpm3fXEPuFvffeOwMHDsw111yTG2+8cbOaZDS+Dh06ZPny5aXbf//73/P000+XtSa2Xp5PW5f38v7dtWvXvPLKK3n11VdLP3xZvHhxvWV79+6dhQsX1vuMv3DhwibaCppCnz59Mnfu3AwYMCAvvPBCqqqqSkeHvp1nn302zz//fKnZ9sADD6RFixbp3bt3E1bNB7XTTjtl+PDh+c53vpNzzz233pefL7zwQm644YacfPLJ2XvvvbNhw4b8+te/zqGHHrrJelq1apUkpSMN2DJcfvnl6d+/f73X5Z577pkFCxbUW27BggXp1atXWrZsmST58Ic/nCFDhuSGG27ImjVrMnz4cNeBbEZ+9atf5bHHHsu5556bD3/4w++6z+/bt2/mzZu3ybUnaf40RTbTDjvskJ122in/9V//lU6dOuXZZ5/N+PHjy10WDeDiiy/OEUcckS5duuTYY49NixYt8sgjj+Txxx/PpZdeWlruhz/8YQYOHJiDDjooN9xwQx588MHNOjyfxtOyZcvS4bNvfuB5k9cu7+SnP/1pVq5cmdNOOy3bbbddvXnHHHNMrrvuunz9619PklxyySXZaaedsssuu+Siiy7KzjvvnKOPPrpMlfNuGmq/MHbs2Jx99tlp167d2/7SkPIZNmxYZs+enSOPPDLbb799Lr744k0ea3ivPJ+2Lu/l/fvnP/952rZtmwsvvDCf//zn89vf/rZ0wd03fe5zn8vpp5+egQMHZvDgwbnlllvy6KOPpnv37k28RXxQK1asyKc//emMGTMmffv2zbbbbptFixZl2rRpOeqoo3LooYfmgAMOyNFHH51p06alV69eef7550sX2n3zNLrV1dU55ZRT8h//8R/5+9//ns9//vM57rjj0rFjx3JvIpvpyiuvzODBgzNixIhceuml6datW5544omcf/752W233XLZZZdlxx13zCmnnJIxY8ZkxowZ6devX5555pm8+OKLOe6449K1a9cUCoX89Kc/zWGHHZY2bdqkpqam3JtW8fbee++MGjUqM2bMKI39+7//e/bdd9989atfzfHHH5/7778/V155Zb7zne/Uu++oUaMyceLErFu3LldccUUZqqchvPbaa3nhhRfyxhtv5C9/+UvuvvvuTJkyJUcccUROPvnktGjR4l33+RMnTswhhxySHj165IQTTsjrr7+eO++8M1/+8pfLvXk0MtcUeY82bNiQqqqqtGjRIjfffHMeeuih7LXXXjn33HNLX5SxdRsxYkR++tOf5he/+EX23Xff7L///rniiis2OUXK5MmTc/PNN6dv37757ne/m5tuuil9+vQpW93U1759+7Rv336Tca9d3sl1112XQw89dJMvVPKPL1UWLVqURx99NPnHL5LOOeecfPSjH80LL7yQn/zkJ6Vfj7Flaoj9woknnpiqqqqceOKJTqm4BXjzc1mSXHDBBRkyZEiOOOKIHH744Tn66KPTo0ePcpfIVsTzaev1Xt6/n3vuuXz/+9/PnXfemb333js33XRTJk2aVG/ZUaNG5YILLsh5552XAQMG5Omnn87o0aPt77dCNTU1GTRoUK644oocfPDB2WuvvTJhwoScfvrpufLKK1MoFHLnnXfm4IMPzqmnnppevXrlhBNOyDPPPJNddtmltJ6ePXvmU5/6VA477LB87GMfS9++fTf5UpWtw0c+8pEsWrQo3bt3z3HHHZcePXrk3/7t31JbW5v7778/O+64Y5LkqquuyrHHHpszzzwze+yxR04//fS8+uqrSZLddtstkydPzvjx47PLLruUTs1K+V1yySX1Toc6YMCA/OAHP8jNN9+cvfbaKxdffHEuueSSTU6xdeyxx2bFihVZvXq1H7htxe6+++506tQpu+++e0aOHJn58+dnxowZ+fGPf5yWLVu+p33+0KFD88Mf/jB33HFH+vfvn2HDhuXBBx8s96bRBArFd7viFMk/Tr/Rs2dPp8wAqFB1dXWpra3NypUrnXO6Ai1btiw9evTIwoULM2DAgHKXU/F8LqMheT7xdoYPH56OHTvme9/7XrlLoYlNmjQpc+fO3eQ0awBA8+H0We9i5cqVWbBgQerq6jJu3LhylwMANKH169dnxYoV+cpXvpL9999fQ6TMfC6jIXk+8abVq1dn5syZGTFiRFq2bJmbbrop99xzT375y1+WuzQAABqBpsi7GDNmTBYuXJh///d/z1FHHVXucgCAJrRgwYLU1tamV69eufXWW8tdTsXzuYyG5PnEm948vcZll12WtWvXpnfv3rntttve9oLLAABs/Zw+CwAAAAAAqAgutA4AAAAAAFQETREAAAAAAKAiaIoAAAAAAAAVQVMEAAAAAACoCJoiAAAAAABARdAUAQAAAAAAKoKmCAAAAAAAUBE0RQAAAAAAgIrw/wOV1Dpg8KUgpQAAAABJRU5ErkJggg==",
+ "text/plain": [
+ "