{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.12","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"### Creating a binary \"target\" column (`awake`)","metadata":{}},{"cell_type":"code","source":"import pandas as pd\nimport matplotlib.pyplot as plt\nimport seaborn as sns\nfrom IPython.display import Markdown\nimport gc","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2023-09-06T08:06:39.284297Z","iopub.execute_input":"2023-09-06T08:06:39.284697Z","iopub.status.idle":"2023-09-06T08:06:39.289713Z","shell.execute_reply.started":"2023-09-06T08:06:39.284643Z","shell.execute_reply":"2023-09-06T08:06:39.288444Z"},"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"def get_train_series(series):\n    train_series = pd.read_parquet(\"/kaggle/input/child-mind-institute-detect-sleep-states/train_series.parquet\", filters=[('series_id','=',series)])\n    train_events = pd.read_csv(\"/kaggle/input/child-mind-institute-detect-sleep-states/train_events.csv\").query('series_id == @series')\n    \n    # cleaning etc.\n    train_events = train_events.dropna()\n    train_events[\"step\"]  = train_events[\"step\"].astype(\"int\")\n    train_events[\"awake\"] = train_events[\"event\"].replace({\"onset\":1,\"wakeup\":0})\n\n    train = pd.merge(train_series, train_events[['step','awake']], on='step', how='left')\n    train[\"awake\"] = train[\"awake\"].bfill(axis ='rows')\n    # final section:\n    # train_events.groupby('series_id').tail(1)[\"event\"].unique()\n    # Result: the last event is always a \"wakeup\"\n    train['awake'] = train['awake'].fillna(1) # awake\n    train[\"awake\"] = train[\"awake\"].astype(\"int\")\n    return(train)","metadata":{"execution":{"iopub.status.busy":"2023-09-06T08:01:57.059322Z","iopub.execute_input":"2023-09-06T08:01:57.059778Z","iopub.status.idle":"2023-09-06T08:01:57.071616Z","shell.execute_reply.started":"2023-09-06T08:01:57.059738Z","shell.execute_reply":"2023-09-06T08:01:57.070741Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# create a list of all the series_id\ntmp = pd.read_parquet(\"/kaggle/input/child-mind-institute-detect-sleep-states/train_series.parquet\", columns=[\"series_id\"])\nseries_id_list = tmp['series_id'].unique().tolist()","metadata":{"execution":{"iopub.status.busy":"2023-09-06T08:01:57.072899Z","iopub.execute_input":"2023-09-06T08:01:57.073234Z","iopub.status.idle":"2023-09-06T08:02:11.481956Z","shell.execute_reply.started":"2023-09-06T08:01:57.073204Z","shell.execute_reply":"2023-09-06T08:02:11.480821Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"#### Vizualize all of the series","metadata":{}},{"cell_type":"code","source":"for series_id in series_id_list:\n    train = get_train_series(series_id)\n    display(Markdown('###  anglez for series ' + series_id))\n    fig, ax = plt.subplots(figsize=(20, 3))\n    sns.lineplot(data=train, x=\"step\", y=\"anglez\",hue=\"awake\", linewidth = 0.5)\n    plt.show();\n    display(Markdown('###  enmo for series ' + series_id))\n    fig, ax = plt.subplots(figsize=(20, 3))\n    sns.lineplot(data=train, x=\"step\", y=\"enmo\",hue=\"awake\", linewidth = 0.5)\n    plt.show();\n    del train\n    gc.collect();\n","metadata":{"execution":{"iopub.status.busy":"2023-09-06T08:08:04.323334Z","iopub.execute_input":"2023-09-06T08:08:04.323960Z","iopub.status.idle":"2023-09-06T08:08:39.152964Z","shell.execute_reply.started":"2023-09-06T08:08:04.323924Z","shell.execute_reply":"2023-09-06T08:08:39.151828Z"},"trusted":true},"execution_count":null,"outputs":[]}],"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}}