신호생성 repo (24. 1. 5 ~).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

16564 lines
561 KiB

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import os\n",
"import sumolib\n",
"import random\n",
"from tqdm import tqdm\n",
"from datetime import datetime"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# A. 이동류 매칭"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"100%|██████████| 17280/17280 [00:18<00:00, 924.90it/s] \n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>phas_A</th>\n",
" <th>phas_B</th>\n",
" <th>move_A</th>\n",
" <th>move_B</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>8</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>7</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>6</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>4</td>\n",
" <td>6</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>5</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>8</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>176</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>8</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>5</td>\n",
" <td>18</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>8</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>7</td>\n",
" <td>3</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no phas_A phas_B move_A move_B\n",
"0 175 1 1 8 4\n",
"1 175 2 2 7 3\n",
"2 175 3 3 6 1\n",
"3 175 3 4 6 2\n",
"4 175 4 4 5 2\n",
"5 176 1 1 8 4\n",
"6 176 2 2 8 3\n",
"7 176 3 3 5 18\n",
"8 177 1 1 8 4\n",
"9 177 2 2 7 3"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# [이동류번호] 불러오기 (약 1분의 소요시간)\n",
"path_moves = '../../Data/tables/moves/'\n",
"csv_moves = os.listdir('../../Data/tables/moves/')\n",
"moves = [pd.read_csv(path_moves + csv_move, index_col=0) for csv_move in tqdm(csv_moves)]\n",
"match1 = pd.concat(moves).drop_duplicates().sort_values(by=['inter_no','phas_A','phas_B']).reset_index(drop=True)\n",
"match1.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>phase_no</th>\n",
" <th>ring_type</th>\n",
" <th>move_no</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no phase_no ring_type move_no\n",
"0 175 1 A 8\n",
"0 175 1 B 4\n",
"1 175 2 A 7\n",
"1 175 2 B 3\n",
"2 175 3 A 6\n",
"2 175 3 B 1\n",
"4 175 4 A 5\n",
"3 175 4 B 2\n",
"5 176 1 A 8\n",
"5 176 1 B 4"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 계층화 (inter_no, phas_A, phas_B, move_A, move_B) -> ('inter_no', 'phase_no', 'ring_type', 'move_no')\n",
"matchA = match1[['inter_no', 'phas_A', 'move_A']].copy()\n",
"matchA.columns = ['inter_no', 'phase_no', 'move_no']\n",
"matchA['ring_type'] = 'A'\n",
"matchB = match1[['inter_no', 'phas_B', 'move_B']].copy()\n",
"matchB.columns = ['inter_no', 'phase_no', 'move_no']\n",
"matchB['ring_type'] = 'B'\n",
"match2 = pd.concat([matchA, matchB]).drop_duplicates()\n",
"match2 = match2[['inter_no', 'phase_no', 'ring_type', 'move_no']]\n",
"match2 = match2.sort_values(by=list(match2.columns))\n",
"match2.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>phase_no</th>\n",
" <th>ring_type</th>\n",
" <th>move_no</th>\n",
" <th>inc_dir</th>\n",
" <th>out_dir</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>176</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>176</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>177</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>177</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>177</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>177</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>178</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>178</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>178</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>178</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>178</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>178</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>178</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>178</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>201</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>201</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>201</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>201</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>201</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>201</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>201</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>201</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>201</td>\n",
" <td>5</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>201</td>\n",
" <td>5</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>202</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>202</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>202</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>202</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>206</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>206</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>206</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>206</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>206</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>206</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>206</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>206</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>210</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>210</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>210</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>210</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>210</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>210</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>210</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>210</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no phase_no ring_type move_no inc_dir out_dir\n",
"0 175 1 A 8 남 북\n",
"1 175 1 B 4 북 남\n",
"2 175 2 A 7 북 동\n",
"3 175 2 B 3 남 서\n",
"4 175 3 A 6 동 서\n",
"5 175 3 B 1 동 남\n",
"6 175 4 A 5 서 북\n",
"7 175 4 B 2 서 동\n",
"8 176 1 A 8 남 북\n",
"9 176 1 B 4 북 남\n",
"10 176 2 A 8 남 북\n",
"11 176 2 B 3 남 서\n",
"12 176 3 A 5 서 북\n",
"13 176 3 B 18 NaN NaN\n",
"14 177 1 A 8 남 북\n",
"15 177 1 B 4 북 남\n",
"16 177 2 A 7 북 동\n",
"17 177 2 B 3 남 서\n",
"18 177 3 A 17 NaN NaN\n",
"19 177 3 B 18 NaN NaN\n",
"20 177 4 A 5 서 북\n",
"21 177 4 B 1 동 남\n",
"22 178 1 A 8 남 북\n",
"23 178 1 B 4 북 남\n",
"24 178 2 A 7 북 동\n",
"25 178 2 B 3 남 서\n",
"26 178 3 A 5 서 북\n",
"27 178 3 B 2 서 동\n",
"28 178 4 A 6 동 서\n",
"29 178 4 B 1 동 남\n",
"30 201 1 A 8 남 북\n",
"31 201 1 B 3 남 서\n",
"32 201 2 A 5 서 북\n",
"33 201 2 B 2 서 동\n",
"34 201 3 A 6 동 서\n",
"35 201 3 B 2 서 동\n",
"36 201 4 A 6 동 서\n",
"37 201 4 B 1 동 남\n",
"38 201 5 A 7 북 동\n",
"39 201 5 B 4 북 남\n",
"40 202 1 A 6 동 서\n",
"41 202 1 B 2 서 동\n",
"42 202 2 A 17 NaN NaN\n",
"43 202 2 B 18 NaN NaN\n",
"44 206 1 A 8 남 북\n",
"45 206 1 B 4 북 남\n",
"46 206 2 A 17 NaN NaN\n",
"47 206 2 B 18 NaN NaN\n",
"48 206 3 A 8 남 북\n",
"49 206 3 B 4 북 남\n",
"50 206 4 A 17 NaN NaN\n",
"51 206 4 B 18 NaN NaN\n",
"52 210 1 A 6 동 서\n",
"53 210 1 B 18 NaN NaN\n",
"54 210 2 A 5 서 북\n",
"55 210 2 B 2 서 동\n",
"56 210 3 A 7 북 동\n",
"57 210 3 B 4 북 남\n",
"58 210 4 A 8 남 북\n",
"59 210 4 B 3 남 서"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# [nema 이동류목록] 불러오기 및 병합\n",
"nema = pd.read_csv('../../Data/tables/nema.csv', encoding='cp949')\n",
"match3 = pd.merge(match2, nema, how='left', on='move_no').drop_duplicates()\n",
"match3"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>phase_no</th>\n",
" <th>ring_type</th>\n",
" <th>move_no</th>\n",
" <th>inc_dir</th>\n",
" <th>out_dir</th>\n",
" <th>inc_angle</th>\n",
" <th>out_angle</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>179</td>\n",
" <td>004</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>003</td>\n",
" <td>176</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>001</td>\n",
" <td>095</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>179</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>090</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>268</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>176</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>359</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>176</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>176</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>180</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>270</td>\n",
" <td>356</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>001</td>\n",
" <td>176</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>000</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>179</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>177</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>177</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>177</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>268</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>177</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>090</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>178</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>178</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>000</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>178</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>000</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>178</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>180</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>178</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>270</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>178</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>178</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>178</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>090</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>201</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>201</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>180</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>201</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>270</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>201</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>201</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>201</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>201</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>201</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>090</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>201</td>\n",
" <td>5</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>000</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>201</td>\n",
" <td>5</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>000</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>202</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>202</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>202</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>202</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>206</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>206</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>000</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>206</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>206</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>206</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>206</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>000</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>206</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>17</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>206</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>210</td>\n",
" <td>1</td>\n",
" <td>A</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>090</td>\n",
" <td>270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>210</td>\n",
" <td>1</td>\n",
" <td>B</td>\n",
" <td>18</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>210</td>\n",
" <td>2</td>\n",
" <td>A</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>268</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>210</td>\n",
" <td>2</td>\n",
" <td>B</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>270</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>210</td>\n",
" <td>3</td>\n",
" <td>A</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>359</td>\n",
" <td>090</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>210</td>\n",
" <td>3</td>\n",
" <td>B</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>000</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>210</td>\n",
" <td>4</td>\n",
" <td>A</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>180</td>\n",
" <td>000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>210</td>\n",
" <td>4</td>\n",
" <td>B</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>180</td>\n",
" <td>270</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no phase_no ring_type move_no inc_dir out_dir inc_angle out_angle\n",
"0 175 1 A 8 남 북 179 004\n",
"1 175 1 B 4 북 남 003 176\n",
"2 175 2 A 7 북 동 001 095\n",
"3 175 2 B 3 남 서 179 270\n",
"4 175 3 A 6 동 서 090 270\n",
"5 175 3 B 1 동 남 090 180\n",
"6 175 4 A 5 서 북 268 000\n",
"7 175 4 B 2 서 동 270 090\n",
"8 176 1 A 8 남 북 180 000\n",
"9 176 1 B 4 북 남 359 180\n",
"10 176 2 A 8 남 북 180 000\n",
"11 176 2 B 3 남 서 180 270\n",
"12 176 3 A 5 서 북 270 356\n",
"13 176 3 B 18 NaN NaN NaN NaN\n",
"14 177 1 A 8 남 북 180 000\n",
"15 177 1 B 4 북 남 001 176\n",
"16 177 2 A 7 북 동 000 090\n",
"17 177 2 B 3 남 서 179 270\n",
"18 177 3 A 17 NaN NaN NaN NaN\n",
"19 177 3 B 18 NaN NaN NaN NaN\n",
"20 177 4 A 5 서 북 268 000\n",
"21 177 4 B 1 동 남 090 180\n",
"22 178 1 A 8 남 북 180 000\n",
"23 178 1 B 4 북 남 000 180\n",
"24 178 2 A 7 북 동 000 090\n",
"25 178 2 B 3 남 서 180 270\n",
"26 178 3 A 5 서 북 270 000\n",
"27 178 3 B 2 서 동 270 090\n",
"28 178 4 A 6 동 서 090 270\n",
"29 178 4 B 1 동 남 090 180\n",
"30 201 1 A 8 남 북 180 000\n",
"31 201 1 B 3 남 서 180 270\n",
"32 201 2 A 5 서 북 270 000\n",
"33 201 2 B 2 서 동 270 090\n",
"34 201 3 A 6 동 서 090 270\n",
"35 201 3 B 2 서 동 270 090\n",
"36 201 4 A 6 동 서 090 270\n",
"37 201 4 B 1 동 남 090 180\n",
"38 201 5 A 7 북 동 000 090\n",
"39 201 5 B 4 북 남 000 180\n",
"40 202 1 A 6 동 서 090 270\n",
"41 202 1 B 2 서 동 270 090\n",
"42 202 2 A 17 NaN NaN NaN NaN\n",
"43 202 2 B 18 NaN NaN NaN NaN\n",
"44 206 1 A 8 남 북 180 000\n",
"45 206 1 B 4 북 남 000 180\n",
"46 206 2 A 17 NaN NaN NaN NaN\n",
"47 206 2 B 18 NaN NaN NaN NaN\n",
"48 206 3 A 8 남 북 180 000\n",
"49 206 3 B 4 북 남 000 180\n",
"50 206 4 A 17 NaN NaN NaN NaN\n",
"51 206 4 B 18 NaN NaN NaN NaN\n",
"52 210 1 A 6 동 서 090 270\n",
"53 210 1 B 18 NaN NaN NaN NaN\n",
"54 210 2 A 5 서 북 268 000\n",
"55 210 2 B 2 서 동 270 090\n",
"56 210 3 A 7 북 동 359 090\n",
"57 210 3 B 4 북 남 000 180\n",
"58 210 4 A 8 남 북 180 000\n",
"59 210 4 B 3 남 서 180 270"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# [방위각정보] 불러오기, 계층화, 병합\n",
"# 불러오기\n",
"dtype_dict = {f'angle_{alph}{j}':'str' for alph in ['A', 'B'] for j in range(1,9)}\n",
"angle_original = pd.read_csv('../../Data/tables/angle.csv', index_col=0, dtype = dtype_dict)\n",
"# 계층화\n",
"angle = []\n",
"for i, row in angle_original.iterrows():\n",
" angle_codes = row[[f'angle_{alph}{j}' for alph in ['A', 'B'] for j in range(1,9)]]\n",
" new = pd.DataFrame({'inter_no':[row.inter_no] * 16, 'phase_no':list(range(1, 9))*2, 'ring_type':['A'] * 8 + ['B'] * 8, 'angle_code':angle_codes.to_list()})\n",
" angle.append(new)\n",
"angle = pd.concat(angle)\n",
"angle = angle.dropna().reset_index(drop=True)\n",
"# 병합\n",
"six_chars = angle.angle_code.apply(lambda x:len(x)==6)\n",
"angle.loc[six_chars,'inc_angle'] = angle.angle_code.apply(lambda x:x[:3])\n",
"angle.loc[six_chars,'out_angle'] = angle.angle_code.apply(lambda x:x[3:])\n",
"angle = angle.drop('angle_code', axis=1)\n",
"match4 = pd.merge(match3, angle, how='left', left_on=['inter_no', 'phase_no', 'ring_type'],\n",
" right_on=['inter_no', 'phase_no', 'ring_type']).drop_duplicates()\n",
"match4"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"# [네트워크], [교차로-노드 매칭], [교차로정보] 불러오기 \n",
"net = sumolib.net.readNet('../../Data/networks/SN_sample.net.xml')\n",
"inter_node = pd.read_csv('../../Data/tables/inter_node.csv', index_col=0)\n",
"inter_info = pd.read_csv('../../Data/tables/inter_info.csv', index_col=0)\n",
"\n",
"inter_node1 = inter_node[inter_node.inter_type == 'parent'].drop('inter_type', axis=1)\n",
"inter_info1 = inter_info[['inter_no', 'inter_lat', 'inter_lon']]\n",
"inter = pd.merge(inter_node1, inter_info1, how='left', left_on=['inter_no'],\n",
" right_on=['inter_no']).drop_duplicates()\n",
"\n",
"inter2node = dict(zip(inter['inter_no'], inter['node_id']))\n",
"\n",
"match5 = match4.copy()\n",
"# 진입진출ID 매칭\n",
"for index, row in match5.iterrows():\n",
" node_id = inter2node[row.inter_no]\n",
" node = net.getNode(node_id)\n",
" # 교차로의 모든 (from / to) edges\n",
" inc_edges = [edge for edge in node.getIncoming() if edge.getFunction() == ''] # incoming edges\n",
" out_edges = [edge for edge in node.getOutgoing() if edge.getFunction() == ''] # outgoing edges\n",
" # 교차로의 모든 (from / to) directions\n",
" inc_dirs = []\n",
" for inc_edge in inc_edges:\n",
" start = inc_edge.getShape()[-2]\n",
" end = inc_edge.getShape()[-1]\n",
" inc_dir = np.array(end) - np.array(start)\n",
" inc_dir = inc_dir / (inc_dir ** 2).sum() ** 0.5\n",
" inc_dirs.append(inc_dir)\n",
" out_dirs = []\n",
" for out_edge in out_edges:\n",
" start = out_edge.getShape()[0]\n",
" end = out_edge.getShape()[1]\n",
" out_dir = np.array(end) - np.array(start)\n",
" out_dir = out_dir / (out_dir ** 2).sum() ** 0.5\n",
" out_dirs.append(out_dir)\n",
" # 진입각, 진출각 불러오기\n",
" if not pd.isna(row.inc_angle):\n",
" inc_angle = int(row.inc_angle)\n",
" out_angle = int(row.out_angle)\n",
" # 방위각을 일반각으로 가공, 라디안 변환, 단위벡터로 변환\n",
" inc_angle = (-90 - inc_angle) % 360\n",
" inc_angle = inc_angle * np.pi / 180.\n",
" inc_dir_true = np.array([np.cos(inc_angle), np.sin(inc_angle)])\n",
" out_angle = (90 - out_angle) % 360\n",
" out_angle = out_angle * np.pi / 180.\n",
" out_dir_true = np.array([np.cos(out_angle), np.sin(out_angle)])\n",
" # 매칭 엣지 반환\n",
" inc_index = np.array([np.dot(inc_dir, inc_dir_true) for inc_dir in inc_dirs]).argmax()\n",
" out_index = np.array([np.dot(out_dir, out_dir_true) for out_dir in out_dirs]).argmax()\n",
" inc_edge_id = inc_edges[inc_index].getID()\n",
" out_edge_id = out_edges[out_index].getID()\n",
" match5.at[index, 'inc_edge'] = inc_edge_id\n",
" match5.at[index, 'out_edge'] = out_edge_id\n",
"match5['node_id'] = match5['inter_no'].map(inter2node)\n",
"# match5 = match5[['inter_no', 'node_id', 'move_no', 'inc_edge', 'out_edge']]\n",
"match5 = match5.sort_values(by=['inter_no', 'move_no']).reset_index(drop=True)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>move_no</th>\n",
" <th>inc_dir</th>\n",
" <th>out_dir</th>\n",
" <th>inc_edge</th>\n",
" <th>out_edge</th>\n",
" <th>node_id</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>571545870_02</td>\n",
" <td>571542797_02</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>571510153_02</td>\n",
" <td>571545870_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>-571542797_02</td>\n",
" <td>571510153_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>-571500487_01</td>\n",
" <td>571542797_02</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>571510153_02</td>\n",
" <td>571500487_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>175</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>175</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>-571500487_01</td>\n",
" <td>571545870_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>175</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>-571542797_02</td>\n",
" <td>571500487_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>175</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>175</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>175</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>-571500487_01</td>\n",
" <td>571510153_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>175</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>571510153_02</td>\n",
" <td>571542797_02</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>175</td>\n",
" <td>21</td>\n",
" <td>남</td>\n",
" <td>동</td>\n",
" <td>-571542797_02</td>\n",
" <td>571545870_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>175</td>\n",
" <td>21</td>\n",
" <td>동</td>\n",
" <td>북</td>\n",
" <td>571545870_02</td>\n",
" <td>571500487_01</td>\n",
" <td>i0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>176</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>-571542810_01</td>\n",
" <td>571543469_01</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>176</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571542797_02.99</td>\n",
" <td>571542810_01</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>176</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>571543469_02</td>\n",
" <td>-571542797_02.99</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>176</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>-571542810_01</td>\n",
" <td>-571542797_02.99</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>176</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>176</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>176</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>571542797_02.99</td>\n",
" <td>571543469_01</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>176</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>571543469_02</td>\n",
" <td>571542810_01</td>\n",
" <td>i1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>177</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>571542107_02</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>177</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542107_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>177</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>177</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571542811_02</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>177</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542811_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>177</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>571542107_02</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>177</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>571542811_02</td>\n",
" <td>571542107_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>177</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542811_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>177</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>177</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>177</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>571542811_02</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>177</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542809_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>177</td>\n",
" <td>21</td>\n",
" <td>남</td>\n",
" <td>동</td>\n",
" <td>-571542809_01</td>\n",
" <td>571542107_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>177</td>\n",
" <td>21</td>\n",
" <td>동</td>\n",
" <td>북</td>\n",
" <td>571542107_02</td>\n",
" <td>571542811_01</td>\n",
" <td>i2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>178</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>-571500475_01</td>\n",
" <td>571540304_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>178</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>571540303_02.21</td>\n",
" <td>571500475_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>178</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>571540304_02</td>\n",
" <td>571540303_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>178</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571556450_02</td>\n",
" <td>571540304_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>178</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>571540303_02.21</td>\n",
" <td>571556450_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>178</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>-571500475_01</td>\n",
" <td>571540303_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>178</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>571556450_02</td>\n",
" <td>571500475_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>178</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>571540304_02</td>\n",
" <td>571556450_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>178</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>178</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>178</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>571556450_02</td>\n",
" <td>571540303_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>178</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>571540303_02.21</td>\n",
" <td>571540304_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>178</td>\n",
" <td>21</td>\n",
" <td>남</td>\n",
" <td>동</td>\n",
" <td>571540304_02</td>\n",
" <td>571500475_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>178</td>\n",
" <td>21</td>\n",
" <td>동</td>\n",
" <td>북</td>\n",
" <td>-571500475_01</td>\n",
" <td>571556450_01</td>\n",
" <td>i3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>201</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>571500617_02</td>\n",
" <td>571500569_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>201</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>571500618_02</td>\n",
" <td>571500617_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>201</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>-571500569_01</td>\n",
" <td>571500618_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>201</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571500583_01</td>\n",
" <td>571500569_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>201</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>571500618_02</td>\n",
" <td>571500583_02</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>201</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>571500617_02</td>\n",
" <td>571500618_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>201</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>571500583_01</td>\n",
" <td>571500617_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>201</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>-571500569_01</td>\n",
" <td>571500583_02</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>201</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>201</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>201</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>571500583_01</td>\n",
" <td>571500618_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61</th>\n",
" <td>201</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>571500618_02</td>\n",
" <td>571500569_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>201</td>\n",
" <td>21</td>\n",
" <td>남</td>\n",
" <td>동</td>\n",
" <td>-571500569_01</td>\n",
" <td>571500617_01</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>201</td>\n",
" <td>21</td>\n",
" <td>동</td>\n",
" <td>북</td>\n",
" <td>571500617_02</td>\n",
" <td>571500583_02</td>\n",
" <td>i8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>64</th>\n",
" <td>202</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>571510152_01</td>\n",
" <td>571510152_01.65</td>\n",
" <td>i9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>202</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>571510152_02</td>\n",
" <td>-571510152_01</td>\n",
" <td>i9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>202</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>67</th>\n",
" <td>202</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>206</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571542073_01</td>\n",
" <td>571511538_02</td>\n",
" <td>i7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>206</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>-571511538_02</td>\n",
" <td>571542073_02</td>\n",
" <td>i7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>206</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>206</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i7</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>210</td>\n",
" <td>1</td>\n",
" <td>동</td>\n",
" <td>남</td>\n",
" <td>-571542115_01</td>\n",
" <td>571500585_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>73</th>\n",
" <td>210</td>\n",
" <td>2</td>\n",
" <td>서</td>\n",
" <td>동</td>\n",
" <td>571500535_02.18</td>\n",
" <td>571542115_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>74</th>\n",
" <td>210</td>\n",
" <td>3</td>\n",
" <td>남</td>\n",
" <td>서</td>\n",
" <td>571500585_02</td>\n",
" <td>571500535_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75</th>\n",
" <td>210</td>\n",
" <td>4</td>\n",
" <td>북</td>\n",
" <td>남</td>\n",
" <td>571511538_02.121</td>\n",
" <td>571500585_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>76</th>\n",
" <td>210</td>\n",
" <td>5</td>\n",
" <td>서</td>\n",
" <td>북</td>\n",
" <td>571500535_02.18</td>\n",
" <td>571511538_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>77</th>\n",
" <td>210</td>\n",
" <td>6</td>\n",
" <td>동</td>\n",
" <td>서</td>\n",
" <td>-571542115_01</td>\n",
" <td>571500535_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78</th>\n",
" <td>210</td>\n",
" <td>7</td>\n",
" <td>북</td>\n",
" <td>동</td>\n",
" <td>571511538_02.121</td>\n",
" <td>571542115_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>79</th>\n",
" <td>210</td>\n",
" <td>8</td>\n",
" <td>남</td>\n",
" <td>북</td>\n",
" <td>571500585_02</td>\n",
" <td>571511538_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>80</th>\n",
" <td>210</td>\n",
" <td>17</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>81</th>\n",
" <td>210</td>\n",
" <td>18</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>None</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>82</th>\n",
" <td>210</td>\n",
" <td>21</td>\n",
" <td>북</td>\n",
" <td>서</td>\n",
" <td>571511538_02.121</td>\n",
" <td>571500535_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>83</th>\n",
" <td>210</td>\n",
" <td>21</td>\n",
" <td>서</td>\n",
" <td>남</td>\n",
" <td>571500535_02.18</td>\n",
" <td>571500585_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>84</th>\n",
" <td>210</td>\n",
" <td>21</td>\n",
" <td>남</td>\n",
" <td>동</td>\n",
" <td>571500585_02</td>\n",
" <td>571542115_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>85</th>\n",
" <td>210</td>\n",
" <td>21</td>\n",
" <td>동</td>\n",
" <td>북</td>\n",
" <td>-571542115_01</td>\n",
" <td>571511538_01</td>\n",
" <td>i6</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no move_no inc_dir out_dir inc_edge out_edge \\\n",
"0 175 1 동 남 571545870_02 571542797_02 \n",
"1 175 2 서 동 571510153_02 571545870_01 \n",
"2 175 3 남 서 -571542797_02 571510153_01 \n",
"3 175 4 북 남 -571500487_01 571542797_02 \n",
"4 175 5 서 북 571510153_02 571500487_01 \n",
"5 175 6 동 서 571545870_02 571510153_01 \n",
"6 175 7 북 동 -571500487_01 571545870_01 \n",
"7 175 8 남 북 -571542797_02 571500487_01 \n",
"8 175 17 None None None None \n",
"9 175 18 None None None None \n",
"10 175 21 북 서 -571500487_01 571510153_01 \n",
"11 175 21 서 남 571510153_02 571542797_02 \n",
"12 175 21 남 동 -571542797_02 571545870_01 \n",
"13 175 21 동 북 571545870_02 571500487_01 \n",
"14 176 3 남 서 -571542810_01 571543469_01 \n",
"15 176 4 북 남 571542797_02.99 571542810_01 \n",
"16 176 5 서 북 571543469_02 -571542797_02.99 \n",
"17 176 8 남 북 -571542810_01 -571542797_02.99 \n",
"18 176 17 None None None None \n",
"19 176 18 None None None None \n",
"20 176 21 북 서 571542797_02.99 571543469_01 \n",
"21 176 21 서 남 571543469_02 571542810_01 \n",
"22 177 1 동 남 571542107_02 571542809_01 \n",
"23 177 2 서 동 -571542809_01 571542107_01 \n",
"24 177 3 남 서 -571542809_01 571542809_01 \n",
"25 177 4 북 남 571542811_02 571542809_01 \n",
"26 177 5 서 북 -571542809_01 571542811_01 \n",
"27 177 6 동 서 571542107_02 571542809_01 \n",
"28 177 7 북 동 571542811_02 571542107_01 \n",
"29 177 8 남 북 -571542809_01 571542811_01 \n",
"30 177 17 None None None None \n",
"31 177 18 None None None None \n",
"32 177 21 북 서 571542811_02 571542809_01 \n",
"33 177 21 서 남 -571542809_01 571542809_01 \n",
"34 177 21 남 동 -571542809_01 571542107_01 \n",
"35 177 21 동 북 571542107_02 571542811_01 \n",
"36 178 1 동 남 -571500475_01 571540304_01 \n",
"37 178 2 서 동 571540303_02.21 571500475_01 \n",
"38 178 3 남 서 571540304_02 571540303_01 \n",
"39 178 4 북 남 571556450_02 571540304_01 \n",
"40 178 5 서 북 571540303_02.21 571556450_01 \n",
"41 178 6 동 서 -571500475_01 571540303_01 \n",
"42 178 7 북 동 571556450_02 571500475_01 \n",
"43 178 8 남 북 571540304_02 571556450_01 \n",
"44 178 17 None None None None \n",
"45 178 18 None None None None \n",
"46 178 21 북 서 571556450_02 571540303_01 \n",
"47 178 21 서 남 571540303_02.21 571540304_01 \n",
"48 178 21 남 동 571540304_02 571500475_01 \n",
"49 178 21 동 북 -571500475_01 571556450_01 \n",
"50 201 1 동 남 571500617_02 571500569_01 \n",
"51 201 2 서 동 571500618_02 571500617_01 \n",
"52 201 3 남 서 -571500569_01 571500618_01 \n",
"53 201 4 북 남 571500583_01 571500569_01 \n",
"54 201 5 서 북 571500618_02 571500583_02 \n",
"55 201 6 동 서 571500617_02 571500618_01 \n",
"56 201 7 북 동 571500583_01 571500617_01 \n",
"57 201 8 남 북 -571500569_01 571500583_02 \n",
"58 201 17 None None None None \n",
"59 201 18 None None None None \n",
"60 201 21 북 서 571500583_01 571500618_01 \n",
"61 201 21 서 남 571500618_02 571500569_01 \n",
"62 201 21 남 동 -571500569_01 571500617_01 \n",
"63 201 21 동 북 571500617_02 571500583_02 \n",
"64 202 2 서 동 571510152_01 571510152_01.65 \n",
"65 202 6 동 서 571510152_02 -571510152_01 \n",
"66 202 17 None None None None \n",
"67 202 18 None None None None \n",
"68 206 4 북 남 571542073_01 571511538_02 \n",
"69 206 8 남 북 -571511538_02 571542073_02 \n",
"70 206 17 None None None None \n",
"71 206 18 None None None None \n",
"72 210 1 동 남 -571542115_01 571500585_01 \n",
"73 210 2 서 동 571500535_02.18 571542115_01 \n",
"74 210 3 남 서 571500585_02 571500535_01 \n",
"75 210 4 북 남 571511538_02.121 571500585_01 \n",
"76 210 5 서 북 571500535_02.18 571511538_01 \n",
"77 210 6 동 서 -571542115_01 571500535_01 \n",
"78 210 7 북 동 571511538_02.121 571542115_01 \n",
"79 210 8 남 북 571500585_02 571511538_01 \n",
"80 210 17 None None None None \n",
"81 210 18 None None None None \n",
"82 210 21 북 서 571511538_02.121 571500535_01 \n",
"83 210 21 서 남 571500535_02.18 571500585_01 \n",
"84 210 21 남 동 571500585_02 571542115_01 \n",
"85 210 21 동 북 -571542115_01 571511538_01 \n",
"\n",
" node_id \n",
"0 i0 \n",
"1 i0 \n",
"2 i0 \n",
"3 i0 \n",
"4 i0 \n",
"5 i0 \n",
"6 i0 \n",
"7 i0 \n",
"8 i0 \n",
"9 i0 \n",
"10 i0 \n",
"11 i0 \n",
"12 i0 \n",
"13 i0 \n",
"14 i1 \n",
"15 i1 \n",
"16 i1 \n",
"17 i1 \n",
"18 i1 \n",
"19 i1 \n",
"20 i1 \n",
"21 i1 \n",
"22 i2 \n",
"23 i2 \n",
"24 i2 \n",
"25 i2 \n",
"26 i2 \n",
"27 i2 \n",
"28 i2 \n",
"29 i2 \n",
"30 i2 \n",
"31 i2 \n",
"32 i2 \n",
"33 i2 \n",
"34 i2 \n",
"35 i2 \n",
"36 i3 \n",
"37 i3 \n",
"38 i3 \n",
"39 i3 \n",
"40 i3 \n",
"41 i3 \n",
"42 i3 \n",
"43 i3 \n",
"44 i3 \n",
"45 i3 \n",
"46 i3 \n",
"47 i3 \n",
"48 i3 \n",
"49 i3 \n",
"50 i8 \n",
"51 i8 \n",
"52 i8 \n",
"53 i8 \n",
"54 i8 \n",
"55 i8 \n",
"56 i8 \n",
"57 i8 \n",
"58 i8 \n",
"59 i8 \n",
"60 i8 \n",
"61 i8 \n",
"62 i8 \n",
"63 i8 \n",
"64 i9 \n",
"65 i9 \n",
"66 i9 \n",
"67 i9 \n",
"68 i7 \n",
"69 i7 \n",
"70 i7 \n",
"71 i7 \n",
"72 i6 \n",
"73 i6 \n",
"74 i6 \n",
"75 i6 \n",
"76 i6 \n",
"77 i6 \n",
"78 i6 \n",
"79 i6 \n",
"80 i6 \n",
"81 i6 \n",
"82 i6 \n",
"83 i6 \n",
"84 i6 \n",
"85 i6 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 이동류 매칭\n",
"# 각 교차로에 대하여, 가능한 모든 이동류(1~18, 21)에 대한 진입·진출엣지ID를 지정한다.\n",
"# 모든 이동류에 대해 지정하므로, 시차제시 이전과 다른 이동류가 등장하더라도 항상 진입·진출 엣지 ID를 지정할 수 있다.\n",
"match6 = match5.copy().dropna()\n",
"match6 = match6[['inter_no', 'move_no', 'inc_dir', 'out_dir', 'inc_edge', 'out_edge', 'node_id']]\n",
"# (1) 가능한 (진입방향, 진출방향) 목록\n",
"flows = nema.dropna().apply(lambda row: (row['inc_dir'], row['out_dir']), axis=1).tolist()\n",
"# (2) 각 교차로별 방향 목록 : pdires\n",
"pdires = {}\n",
"for inter_no in match6.inter_no.unique():\n",
" dires = match6[match6.inter_no == inter_no][['inc_dir','out_dir']].values.flatten()\n",
" dires = {dire for dire in dires if type(dire)==str}\n",
" pdires[inter_no] = dires\n",
"# (3) 각 (교차로, 진입방향) 별 진입id 목록 : inc2id\n",
"inc2id = {}\n",
"for inter_no in match6.inter_no.unique():\n",
" for inc_dir in pdires[inter_no]:\n",
" df = match6[(match6.inter_no==inter_no) & (match6.inc_dir==inc_dir)]\n",
" inc2id[(inter_no, inc_dir)] = df.inc_edge.iloc[0]\n",
"# (4) 각 (교차로, 진출방향) 별 진출id 목록 : out2id\n",
"out2id = {}\n",
"for inter_no in match6.inter_no.unique():\n",
" for out_dir in pdires[inter_no]:\n",
" df = match6[(match6.inter_no==inter_no) & (match6.out_dir==out_dir)]\n",
" out2id[(inter_no, out_dir)] = df.out_edge.iloc[0]\n",
"# (5) 각 교차로별 가능한 (진입방향, 진출방향) 목록 : pflows\n",
"pflow = {}\n",
"for inter_no in match6.inter_no.unique():\n",
" pflow[inter_no] = [flow for flow in flows if set(flow).issubset(pdires[inter_no])]\n",
"# (6) 가능한 이동류에 대하여 진입id, 진출id 배정 : matching\n",
"inter2node = dict(zip(match6['inter_no'], match6['node_id']))\n",
"dires_right = ['북', '서', '남', '동', '북']\n",
"matching = []\n",
"for inter_no in match6.inter_no.unique():\n",
" node_id = inter2node[inter_no]\n",
" # 좌회전과 직진(1 ~ 16)\n",
" for (inc_dir, out_dir) in pflow[inter_no]:\n",
" move_no = nema[(nema.inc_dir==inc_dir) & (nema.out_dir==out_dir)].move_no.iloc[0]\n",
" inc_edge = inc2id[(inter_no, inc_dir)]\n",
" out_edge = out2id[(inter_no, out_dir)]\n",
" new_row = pd.DataFrame({'inter_no':[inter_no], 'move_no':[move_no],\n",
" 'inc_dir':[inc_dir], 'out_dir':[out_dir],\n",
" 'inc_edge':[inc_edge], 'out_edge':[out_edge], 'node_id':[node_id]})\n",
" matching.append(new_row)\n",
" # 보행신호(17), 전적색(18)\n",
" new_row = pd.DataFrame({'inter_no':[inter_no] * 2, 'move_no':[17, 18],\n",
" 'inc_dir':[None]*2, 'out_dir':[None]*2,\n",
" 'inc_edge':[None]*2, 'out_edge':[None]*2, 'node_id':[node_id]*2})\n",
" matching.append(new_row)\n",
" # 신호우회전(21)\n",
" for d in range(len(dires_right)-1):\n",
" inc_dir = dires_right[d]\n",
" out_dir = dires_right[d+1]\n",
" if {inc_dir, out_dir}.issubset(pdires[inter_no]):\n",
" inc_edge = inc2id[(inter_no, inc_dir)]\n",
" out_edge = out2id[(inter_no, out_dir)]\n",
" new_row = pd.DataFrame({'inter_no':[inter_no], 'move_no':[21],\n",
" 'inc_dir':[inc_dir], 'out_dir':[out_dir],\n",
" 'inc_edge':[inc_edge], 'out_edge':[out_edge], 'node_id':[node_id]})\n",
" matching.append(new_row)\n",
"matching = pd.concat(matching)\n",
"matching = matching.sort_values(by=['inter_no', 'move_no']).reset_index(drop=True)\n",
"with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n",
" display(matching)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# B. 5초 간격으로 이동류번호 수집"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
" 0%| | 14/17280 [00:00<02:04, 138.54it/s]"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"100%|██████████| 17280/17280 [05:41<00:00, 50.64it/s] \n"
]
}
],
"source": [
"# 5초 단위로 이동류번호 저장 및 신호이력에서 유닉스시각 가져와서 표시, 한시간동안의 데이터만 보관\n",
"midnight = int(datetime(2024, 1, 5, 0, 0, 0).timestamp())\n",
"next_day = int(datetime(2024, 1, 6, 0, 0, 0).timestamp())\n",
"fsecs = range(midnight, next_day, 5) # fsecs : unix time by Five SECondS\n",
"time2move = dict(zip(fsecs,moves)) # move : 어느 순간의 이동류정보\n",
"history = pd.read_csv('../../Data/tables/history.csv', index_col=0)\n",
"\n",
"time2movement = {} # movement : 어느 순간의, 그 순간으로부터 한시간 동안의 (교차로번호 + 현시별이동류번호 + 시작시간)\n",
"# - 아래 절차를 5초마다 반복\n",
"for fsec in tqdm(fsecs): # fsec : unix time by Five SECond\n",
" # 1. 상태 테이블 조회해서 전체 데이터중 필요데이터(교차로번호, A링 현시번호, A링 이동류번호, B링 현시번호, B링 이동류번호)만 수집 : A\n",
" move = time2move[fsec]\n",
" # 2. 이력 테이블 조회해서 교차로별로 유닉스시간 최대인 데이터(교차로변호, 종료유닉스타임)만 수집 : B\n",
" recent_histories = [group.iloc[-1:] for _, group in history[history['end_unix'] < fsec].groupby('inter_no')] # 교차로별로 유닉스시간이 최대인 행들\n",
" if not recent_histories:\n",
" rhistory = pd.DataFrame({'inter_no':[], 'end_unix':[]}) # recent history\n",
" else:\n",
" rhistory = pd.concat(recent_histories)\n",
" recent_unix = rhistory[['inter_no', 'end_unix']]\n",
" # 3. 상태 테이블 조회정보(A)와 이력 테이블 조회정보(B) 조인(키값 : 교차로번호) : C\n",
" move = pd.merge(move, recent_unix, how='left', on='inter_no')\n",
" move['end_unix'] = move['end_unix'].fillna(0).astype(int)\n",
" move = move.drop_duplicates()\n",
" # 4. C데이터 프레임에 신규 컬럼(시작 유닉스타임) 생성 후 종료유닉스 타임 값 입력, 종료 유닉스 타임 컬럼 제거\n",
" move = move.rename(columns = {'end_unix':'start_unix'})\n",
" # 5. 이동류 이력정보 READ\n",
" # - CSV 파일로 서버에 저장된 이동류정보를 읽어옴(파일이 없는 경우에는 데이터가 없는 프레임 D 생성)\n",
" try:\n",
" if isinstance(movement, pd.DataFrame): # movement가 존재할 경우 그걸 그대로 씀.\n",
" pass\n",
" else: \n",
" movement = pd.DataFrame()\n",
" except NameError: # movement가 존재하지 않는 경우 생성\n",
" movement = pd.DataFrame()\n",
" # 6. 이동류 이력정보 데이터테이블(D)에 C데이터 add\n",
" movement = pd.concat([movement, move])\n",
" # 7. D데이터 프레임에서 중복데이터 제거(교차로번호, 시작 유닉스타임, A링 현시번호, B링 현시번호 같은 행은 제거)\n",
" movement = movement.drop_duplicates(['inter_no','phas_A','phas_B','start_unix'])\n",
" # 8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - 3600을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)\n",
" movement = movement[movement.start_unix > fsec - 3600]\n",
" start_unix_min = movement.start_unix.min()\n",
" start_unix_max = movement.start_unix.max()\n",
" movement = movement.sort_values(by=['start_unix','inter_no','phas_A','phas_B']).reset_index(drop=True)\n",
"\n",
" time2movement[fsec] = movement\n",
" movement.to_csv(f'../../Data/tables/movements/movements_{fsec}.csv')\n",
"\n",
"# 각 movement들의 길이 시각화\n",
"import matplotlib.pyplot as plt\n",
"plt.plot(fsecs, [len(time2movement[fsec]) for fsec in fsecs])\n",
"plt.close()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"ename": "NameError",
"evalue": "name 'fmins' is not defined",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[9], line 2\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m m \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(\u001b[38;5;241m1\u001b[39m, \u001b[38;5;241m288\u001b[39m):\n\u001b[1;32m----> 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(m, \u001b[38;5;28mlen\u001b[39m(time2movement[\u001b[43mfmins\u001b[49m[\u001b[38;5;241m287\u001b[39m]]))\n",
"\u001b[1;31mNameError\u001b[0m: name 'fmins' is not defined"
]
}
],
"source": [
"for m in range(1, 288):\n",
" print(m, len(time2movement[fmins[287]]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# C. 5분 간격으로 신호이력 수집 및 통합테이블 생성"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>start_hour</th>\n",
" <th>start_minute</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>9</td>\n",
" <td>0</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>18</td>\n",
" <td>30</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>176</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>73</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>131</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no start_hour start_minute ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 \\\n",
"0 175 0 0 37 39 25 30 29 \n",
"1 175 7 0 40 42 29 26 33 \n",
"2 175 9 0 43 45 33 22 37 \n",
"3 175 18 30 46 48 37 18 41 \n",
"4 176 0 0 37 73 40 0 0 \n",
"\n",
" ddur_6 ddur_7 ddur_8 cycle offset \n",
"0 0 0 0 160 57 \n",
"1 0 0 0 170 40 \n",
"2 0 0 0 180 28 \n",
"3 0 0 0 190 18 \n",
"4 0 0 0 150 131 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>206</td>\n",
" <td>1704380520</td>\n",
" <td>33</td>\n",
" <td>35</td>\n",
" <td>26</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>120</td>\n",
" <td>10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>211</td>\n",
" <td>1704380525</td>\n",
" <td>28</td>\n",
" <td>97</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>125</td>\n",
" <td>45</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>178</td>\n",
" <td>1704380540</td>\n",
" <td>38</td>\n",
" <td>39</td>\n",
" <td>40</td>\n",
" <td>23</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" <td>50</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>201</td>\n",
" <td>1704380540</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>17</td>\n",
" <td>58</td>\n",
" <td>17</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" <td>133</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>202</td>\n",
" <td>1704380540</td>\n",
" <td>39</td>\n",
" <td>101</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" <td>103</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"0 206 1704380520 33 35 26 26 0 0 \n",
"1 211 1704380525 28 97 0 0 0 0 \n",
"2 178 1704380540 38 39 40 23 0 0 \n",
"3 201 1704380540 24 24 17 58 17 0 \n",
"4 202 1704380540 39 101 0 0 0 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset \n",
"0 0 0 120 10 \n",
"1 0 0 125 45 \n",
"2 0 0 140 50 \n",
"3 0 0 140 133 \n",
"4 0 0 140 103 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pland = pd.read_csv('../../Data/tables/pland.csv', index_col=0)\n",
"plan = pd.read_csv('../../Data/tables/plan.csv', index_col=0)\n",
"history = pd.read_csv('../../Data/tables/history.csv', index_col=0)\n",
"display(pland.head())\n",
"display(history.head())\n",
"# plan은 A, B가 통합된 형식으로 history는 분리된 형식으로 표시되었음."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>723</th>\n",
" <td>175</td>\n",
" <td>1704391690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>732</th>\n",
" <td>175</td>\n",
" <td>1704391850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>741</th>\n",
" <td>175</td>\n",
" <td>1704392010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>755</th>\n",
" <td>175</td>\n",
" <td>1704392170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>764</th>\n",
" <td>175</td>\n",
" <td>1704392330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>773</th>\n",
" <td>175</td>\n",
" <td>1704392490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>784</th>\n",
" <td>175</td>\n",
" <td>1704392651</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>793</th>\n",
" <td>175</td>\n",
" <td>1704392810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>802</th>\n",
" <td>175</td>\n",
" <td>1704392970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>813</th>\n",
" <td>175</td>\n",
" <td>1704393130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>825</th>\n",
" <td>175</td>\n",
" <td>1704393290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>834</th>\n",
" <td>175</td>\n",
" <td>1704393450</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>846</th>\n",
" <td>175</td>\n",
" <td>1704393610</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>856</th>\n",
" <td>175</td>\n",
" <td>1704393770</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>865</th>\n",
" <td>175</td>\n",
" <td>1704393930</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>876</th>\n",
" <td>175</td>\n",
" <td>1704394090</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>886</th>\n",
" <td>175</td>\n",
" <td>1704394250</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>898</th>\n",
" <td>175</td>\n",
" <td>1704394410</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>909</th>\n",
" <td>175</td>\n",
" <td>1704394570</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>918</th>\n",
" <td>175</td>\n",
" <td>1704394730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"723 175 1704391690 37 39 25 30 29 0 \n",
"732 175 1704391850 37 39 25 30 29 0 \n",
"741 175 1704392010 37 39 25 30 29 0 \n",
"755 175 1704392170 37 39 25 30 29 0 \n",
"764 175 1704392330 37 39 25 30 29 0 \n",
"773 175 1704392490 37 39 25 30 29 0 \n",
"784 175 1704392651 37 39 25 30 29 0 \n",
"793 175 1704392810 37 39 25 30 29 0 \n",
"802 175 1704392970 37 39 25 30 29 0 \n",
"813 175 1704393130 37 39 25 30 29 0 \n",
"825 175 1704393290 37 39 25 30 29 0 \n",
"834 175 1704393450 37 39 25 30 29 0 \n",
"846 175 1704393610 37 39 25 30 29 0 \n",
"856 175 1704393770 37 39 25 30 29 0 \n",
"865 175 1704393930 37 39 25 30 29 0 \n",
"876 175 1704394090 37 39 25 30 29 0 \n",
"886 175 1704394250 37 39 25 30 29 0 \n",
"898 175 1704394410 37 39 25 30 29 0 \n",
"909 175 1704394570 37 39 25 30 29 0 \n",
"918 175 1704394730 37 39 25 30 29 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset diff \n",
"723 0 0 160 57 160 \n",
"732 0 0 160 57 160 \n",
"741 0 0 160 57 160 \n",
"755 0 0 160 57 160 \n",
"764 0 0 160 57 160 \n",
"773 0 0 160 57 160 \n",
"784 0 0 160 57 161 \n",
"793 0 0 160 57 159 \n",
"802 0 0 160 57 160 \n",
"813 0 0 160 57 160 \n",
"825 0 0 160 57 160 \n",
"834 0 0 160 57 160 \n",
"846 0 0 160 57 160 \n",
"856 0 0 160 57 160 \n",
"865 0 0 160 57 160 \n",
"876 0 0 160 57 160 \n",
"886 0 0 160 57 160 \n",
"898 0 0 160 57 160 \n",
"909 0 0 160 57 160 \n",
"918 0 0 160 57 160 "
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"hist = history.copy()\n",
"hist = hist[hist.inter_no==175]\n",
"hist['diff'] = hist['end_unix'].diff().fillna(0).astype(int)\n",
"hist[70:90]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>start_hour</th>\n",
" <th>start_minute</th>\n",
" <th>start_seconds</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1704380400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>1704405600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>9</td>\n",
" <td>0</td>\n",
" <td>1704412800</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>18</td>\n",
" <td>30</td>\n",
" <td>1704447000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" start_hour start_minute start_seconds\n",
"0 0 0 1704380400\n",
"1 7 0 1704405600\n",
"2 9 0 1704412800\n",
"3 18 30 1704447000"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# split, isplit : A,B 분리 혹은 통합시 사용될 수 있는 딕셔너리\n",
"splits = {} # splits maps (inter_no, start_hour, start_minute) to split\n",
"for i, row in plan.iterrows():\n",
" inter_no = row.inter_no\n",
" start_hour = row.start_hour\n",
" start_minute = row.start_minute\n",
" cycle = row.cycle\n",
" cums_A = row[[f'dura_A{j}' for j in range(1,9)]].cumsum()\n",
" cums_B = row[[f'dura_B{j}' for j in range(1,9)]].cumsum()\n",
" splits[(inter_no, start_hour, start_minute)] = {} # split maps (phas_A, phas_B) to k\n",
" k = 0\n",
" for t in range(cycle):\n",
" new_phas_A = len(cums_A[cums_A < t]) + 1\n",
" new_phas_B = len(cums_B[cums_B < t]) + 1\n",
" if k == 0 or ((new_phas_A, new_phas_B) != (phas_A, phas_B)):\n",
" k += 1\n",
" phas_A = new_phas_A\n",
" phas_B = new_phas_B\n",
" splits[(inter_no, start_hour, start_minute)][(phas_A, phas_B)] = k\n",
"\n",
"isplits = {} # the inverse of splits\n",
"for i in splits:\n",
" isplits[i] = {splits[i][k]:k for k in splits[i]} # isplit maps k to (phas_A, phas_B)\n",
"\n",
"# timetable\n",
"timetable = plan[['start_hour', 'start_minute']].drop_duplicates()\n",
"timetable['start_seconds'] = midnight + timetable['start_hour'] * 3600 + timetable['start_minute'] * 60\n",
"timetable"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[175, 176, 177, 178, 201, 202, 206, 210, 211]"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sorted(history.inter_no.unique())"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>start_hour</th>\n",
" <th>start_minute</th>\n",
" <th>start_seconds</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1704380400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>1704405600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>9</td>\n",
" <td>0</td>\n",
" <td>1704412800</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>18</td>\n",
" <td>30</td>\n",
" <td>1704447000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" start_hour start_minute start_seconds\n",
"0 0 0 1704380400\n",
"1 7 0 1704405600\n",
"2 9 0 1704412800\n",
"3 18 30 1704447000"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"timetable"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1460</th>\n",
" <td>175</td>\n",
" <td>1704403110</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1470</th>\n",
" <td>175</td>\n",
" <td>1704403270</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1479</th>\n",
" <td>175</td>\n",
" <td>1704403430</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1489</th>\n",
" <td>175</td>\n",
" <td>1704403590</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1497</th>\n",
" <td>175</td>\n",
" <td>1704403750</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1506</th>\n",
" <td>175</td>\n",
" <td>1704403910</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1517</th>\n",
" <td>175</td>\n",
" <td>1704404070</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1528</th>\n",
" <td>175</td>\n",
" <td>1704404230</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1686</th>\n",
" <td>175</td>\n",
" <td>1704407111</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1695</th>\n",
" <td>175</td>\n",
" <td>1704407280</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1705</th>\n",
" <td>175</td>\n",
" <td>1704407449</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1715</th>\n",
" <td>175</td>\n",
" <td>1704407620</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1725</th>\n",
" <td>175</td>\n",
" <td>1704407791</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1735</th>\n",
" <td>175</td>\n",
" <td>1704407960</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1745</th>\n",
" <td>175</td>\n",
" <td>1704408130</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1754</th>\n",
" <td>175</td>\n",
" <td>1704408300</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1765</th>\n",
" <td>175</td>\n",
" <td>1704408470</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1774</th>\n",
" <td>175</td>\n",
" <td>1704408640</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1783</th>\n",
" <td>175</td>\n",
" <td>1704408810</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1792</th>\n",
" <td>175</td>\n",
" <td>1704408980</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"1460 175 1704403110 37 39 25 30 29 0 \n",
"1470 175 1704403270 37 39 25 30 29 0 \n",
"1479 175 1704403430 37 39 25 30 29 0 \n",
"1489 175 1704403590 37 39 25 30 29 0 \n",
"1497 175 1704403750 37 39 25 30 29 0 \n",
"1506 175 1704403910 37 39 25 30 29 0 \n",
"1517 175 1704404070 37 39 25 30 29 0 \n",
"1528 175 1704404230 37 39 25 30 29 0 \n",
"1686 175 1704407111 37 39 25 30 29 0 \n",
"1695 175 1704407280 40 42 29 26 33 0 \n",
"1705 175 1704407449 40 42 29 26 33 0 \n",
"1715 175 1704407620 40 42 29 26 33 0 \n",
"1725 175 1704407791 40 42 29 26 33 0 \n",
"1735 175 1704407960 40 42 29 26 33 0 \n",
"1745 175 1704408130 40 42 29 26 33 0 \n",
"1754 175 1704408300 40 42 29 26 33 0 \n",
"1765 175 1704408470 40 42 29 26 33 0 \n",
"1774 175 1704408640 40 42 29 26 33 0 \n",
"1783 175 1704408810 40 42 29 26 33 0 \n",
"1792 175 1704408980 40 42 29 26 33 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset \n",
"1460 0 0 160 57 \n",
"1470 0 0 160 57 \n",
"1479 0 0 160 57 \n",
"1489 0 0 160 57 \n",
"1497 0 0 160 57 \n",
"1506 0 0 160 57 \n",
"1517 0 0 160 57 \n",
"1528 0 0 160 57 \n",
"1686 0 0 160 57 \n",
"1695 0 0 170 40 \n",
"1705 0 0 170 40 \n",
"1715 0 0 170 40 \n",
"1725 0 0 170 40 \n",
"1735 0 0 170 40 \n",
"1745 0 0 170 40 \n",
"1754 0 0 170 40 \n",
"1765 0 0 170 40 \n",
"1774 0 0 170 40 \n",
"1783 0 0 170 40 \n",
"1792 0 0 170 40 "
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"history[(history.inter_no==175) & (history.end_unix>=1704403000) & (history.end_unix<=1704409000)]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2024-01-05 14:29:20\n",
"2024-01-05 15:29:19\n"
]
}
],
"source": [
"# inter_no = 175, m = 30 : 조정 (수축)\n",
"# inter_no = 175, m = 70 : 삭제 + 조정(수축)\n",
"# inter_no = 175, m = 90 : 결측(전이) + 삭제 + 조정(수축)\n",
"# inter_no = 175, m = 140 : 삭제 + 조정(수축)\n",
"# inter_no = 176, m = 50 : 조정(수축)\n",
"# inter_no = 176, m = 155 : 삭제(마지막 행에서 삭제)\n",
"# inter_no = 176, m = 160 : 조정(수축) + 삭제 + 조정(수축)\n",
"# inter_no = 176, m = 190 : 결측\n",
"# inter_no = 176, m = 220 : 삭제\n",
"# inter_no = 176, m = 270 : 삭제\n",
"# inter_no = 176, m = 275 : 삭제\n",
"# inter_no = 177, m = 40 : 조정(수축)\n",
"# inter_no = 178, m = 70 : 삭제\n",
"# inter_no = 178, m = 100 : 조정(확장) + 삭제\n",
"##inter_no = 178, m = 270 : 결측 + 조정(확장)\n",
"\n",
"print(datetime.fromtimestamp(1704432560))\n",
"print(datetime.fromtimestamp(1704436159))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"결측치 처리 전\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>175</td>\n",
" <td>1704386320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>175</td>\n",
" <td>1704386480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>175</td>\n",
" <td>1704386572</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>175</td>\n",
" <td>1704386730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>158</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>175</td>\n",
" <td>1704386889</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>175</td>\n",
" <td>1704387050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>175</td>\n",
" <td>1704387210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>175</td>\n",
" <td>1704387370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>175</td>\n",
" <td>1704387530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>175</td>\n",
" <td>1704387690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>175</td>\n",
" <td>1704387850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>175</td>\n",
" <td>1704388010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>175</td>\n",
" <td>1704388170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>175</td>\n",
" <td>1704388330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>175</td>\n",
" <td>1704388490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>175</td>\n",
" <td>1704388650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>175</td>\n",
" <td>1704388810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>175</td>\n",
" <td>1704388970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>175</td>\n",
" <td>1704389130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>175</td>\n",
" <td>1704389290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"36 175 1704386320 37 39 25 30 29 0 \n",
"37 175 1704386480 37 39 25 30 29 0 \n",
"38 175 1704386572 37 39 25 30 29 0 \n",
"39 175 1704386730 37 39 25 30 29 0 \n",
"40 175 1704386889 37 39 25 30 29 0 \n",
"41 175 1704387050 37 39 25 30 29 0 \n",
"42 175 1704387210 37 39 25 30 29 0 \n",
"43 175 1704387370 37 39 25 30 29 0 \n",
"44 175 1704387530 37 39 25 30 29 0 \n",
"45 175 1704387690 37 39 25 30 29 0 \n",
"46 175 1704387850 37 39 25 30 29 0 \n",
"47 175 1704388010 37 39 25 30 29 0 \n",
"48 175 1704388170 37 39 25 30 29 0 \n",
"49 175 1704388330 37 39 25 30 29 0 \n",
"50 175 1704388490 37 39 25 30 29 0 \n",
"51 175 1704388650 37 39 25 30 29 0 \n",
"52 175 1704388810 37 39 25 30 29 0 \n",
"53 175 1704388970 37 39 25 30 29 0 \n",
"54 175 1704389130 37 39 25 30 29 0 \n",
"55 175 1704389290 37 39 25 30 29 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset diff \n",
"36 0 0 160 57 160 \n",
"37 0 0 160 57 160 \n",
"38 0 0 160 57 92 \n",
"39 0 0 160 57 158 \n",
"40 0 0 160 57 159 \n",
"41 0 0 160 57 161 \n",
"42 0 0 160 57 160 \n",
"43 0 0 160 57 160 \n",
"44 0 0 160 57 160 \n",
"45 0 0 160 57 160 \n",
"46 0 0 160 57 160 \n",
"47 0 0 160 57 160 \n",
"48 0 0 160 57 160 \n",
"49 0 0 160 57 160 \n",
"50 0 0 160 57 160 \n",
"51 0 0 160 57 160 \n",
"52 0 0 160 57 160 \n",
"53 0 0 160 57 160 \n",
"54 0 0 160 57 160 \n",
"55 0 0 160 57 160 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"결측치 처리 후\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>175</td>\n",
" <td>1704386320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>175</td>\n",
" <td>1704386480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>175</td>\n",
" <td>1704386572</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>175</td>\n",
" <td>1704386730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>158</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>175</td>\n",
" <td>1704386889</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>175</td>\n",
" <td>1704387050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>175</td>\n",
" <td>1704387210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>175</td>\n",
" <td>1704387370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>175</td>\n",
" <td>1704387530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>175</td>\n",
" <td>1704387690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>175</td>\n",
" <td>1704387850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>175</td>\n",
" <td>1704388010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>175</td>\n",
" <td>1704388170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>175</td>\n",
" <td>1704388330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>175</td>\n",
" <td>1704388490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>175</td>\n",
" <td>1704388650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>175</td>\n",
" <td>1704388810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>175</td>\n",
" <td>1704388970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>175</td>\n",
" <td>1704389130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>175</td>\n",
" <td>1704389290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"36 175 1704386320 37 39 25 30 29 0 \n",
"37 175 1704386480 37 39 25 30 29 0 \n",
"38 175 1704386572 37 39 25 30 29 0 \n",
"39 175 1704386730 37 39 25 30 29 0 \n",
"40 175 1704386889 37 39 25 30 29 0 \n",
"41 175 1704387050 37 39 25 30 29 0 \n",
"42 175 1704387210 37 39 25 30 29 0 \n",
"43 175 1704387370 37 39 25 30 29 0 \n",
"44 175 1704387530 37 39 25 30 29 0 \n",
"45 175 1704387690 37 39 25 30 29 0 \n",
"46 175 1704387850 37 39 25 30 29 0 \n",
"47 175 1704388010 37 39 25 30 29 0 \n",
"48 175 1704388170 37 39 25 30 29 0 \n",
"49 175 1704388330 37 39 25 30 29 0 \n",
"50 175 1704388490 37 39 25 30 29 0 \n",
"51 175 1704388650 37 39 25 30 29 0 \n",
"52 175 1704388810 37 39 25 30 29 0 \n",
"53 175 1704388970 37 39 25 30 29 0 \n",
"54 175 1704389130 37 39 25 30 29 0 \n",
"55 175 1704389290 37 39 25 30 29 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset diff \n",
"36 0 0 160 57 160 \n",
"37 0 0 160 57 160 \n",
"38 0 0 160 57 92 \n",
"39 0 0 160 57 158 \n",
"40 0 0 160 57 159 \n",
"41 0 0 160 57 161 \n",
"42 0 0 160 57 160 \n",
"43 0 0 160 57 160 \n",
"44 0 0 160 57 160 \n",
"45 0 0 160 57 160 \n",
"46 0 0 160 57 160 \n",
"47 0 0 160 57 160 \n",
"48 0 0 160 57 160 \n",
"49 0 0 160 57 160 \n",
"50 0 0 160 57 160 \n",
"51 0 0 160 57 160 \n",
"52 0 0 160 57 160 \n",
"53 0 0 160 57 160 \n",
"54 0 0 160 57 160 \n",
"55 0 0 160 57 160 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"이상치 처리 전\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>D_n</th>\n",
" <th>S_n</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1704385840</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2560</td>\n",
" <td>2560</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>1704386000</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2720</td>\n",
" <td>2720</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>1704386160</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2880</td>\n",
" <td>2880</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>1704386320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3040</td>\n",
" <td>3040</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>1704386480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3200</td>\n",
" <td>3200</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>175</td>\n",
" <td>1704386572</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3292</td>\n",
" <td>3360</td>\n",
" <td>92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>175</td>\n",
" <td>1704386730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3450</td>\n",
" <td>3520</td>\n",
" <td>158</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>175</td>\n",
" <td>1704386889</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3609</td>\n",
" <td>3680</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>175</td>\n",
" <td>1704387050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3770</td>\n",
" <td>3840</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>175</td>\n",
" <td>1704387210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3930</td>\n",
" <td>4000</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>175</td>\n",
" <td>1704387370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>4090</td>\n",
" <td>4160</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>175</td>\n",
" <td>1704387530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>4250</td>\n",
" <td>4320</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>175</td>\n",
" <td>1704387690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>801</td>\n",
" <td>800</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>175</td>\n",
" <td>1704387850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>961</td>\n",
" <td>960</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>175</td>\n",
" <td>1704388010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1121</td>\n",
" <td>1120</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>175</td>\n",
" <td>1704388170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1281</td>\n",
" <td>1280</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>175</td>\n",
" <td>1704388330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1441</td>\n",
" <td>1440</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>175</td>\n",
" <td>1704388490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1601</td>\n",
" <td>1600</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>175</td>\n",
" <td>1704388650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1761</td>\n",
" <td>1760</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>175</td>\n",
" <td>1704388810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1921</td>\n",
" <td>1920</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>175</td>\n",
" <td>1704388970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2081</td>\n",
" <td>2080</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>175</td>\n",
" <td>1704389130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2241</td>\n",
" <td>2240</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>175</td>\n",
" <td>1704389290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2401</td>\n",
" <td>2400</td>\n",
" <td>160</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"0 175 1704385840 37 39 25 30 29 0 \n",
"1 175 1704386000 37 39 25 30 29 0 \n",
"2 175 1704386160 37 39 25 30 29 0 \n",
"3 175 1704386320 37 39 25 30 29 0 \n",
"4 175 1704386480 37 39 25 30 29 0 \n",
"5 175 1704386572 37 39 25 30 29 0 \n",
"6 175 1704386730 37 39 25 30 29 0 \n",
"7 175 1704386889 37 39 25 30 29 0 \n",
"8 175 1704387050 37 39 25 30 29 0 \n",
"9 175 1704387210 37 39 25 30 29 0 \n",
"10 175 1704387370 37 39 25 30 29 0 \n",
"11 175 1704387530 37 39 25 30 29 0 \n",
"12 175 1704387690 37 39 25 30 29 0 \n",
"13 175 1704387850 37 39 25 30 29 0 \n",
"14 175 1704388010 37 39 25 30 29 0 \n",
"15 175 1704388170 37 39 25 30 29 0 \n",
"16 175 1704388330 37 39 25 30 29 0 \n",
"17 175 1704388490 37 39 25 30 29 0 \n",
"18 175 1704388650 37 39 25 30 29 0 \n",
"19 175 1704388810 37 39 25 30 29 0 \n",
"20 175 1704388970 37 39 25 30 29 0 \n",
"21 175 1704389130 37 39 25 30 29 0 \n",
"22 175 1704389290 37 39 25 30 29 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset D_n S_n diff \n",
"0 0 0 160 57 2560 2560 0 \n",
"1 0 0 160 57 2720 2720 160 \n",
"2 0 0 160 57 2880 2880 160 \n",
"3 0 0 160 57 3040 3040 160 \n",
"4 0 0 160 57 3200 3200 160 \n",
"5 0 0 160 57 3292 3360 92 \n",
"6 0 0 160 57 3450 3520 158 \n",
"7 0 0 160 57 3609 3680 159 \n",
"8 0 0 160 57 3770 3840 161 \n",
"9 0 0 160 57 3930 4000 160 \n",
"10 0 0 160 57 4090 4160 160 \n",
"11 0 0 160 57 4250 4320 160 \n",
"12 0 0 160 57 801 800 160 \n",
"13 0 0 160 57 961 960 160 \n",
"14 0 0 160 57 1121 1120 160 \n",
"15 0 0 160 57 1281 1280 160 \n",
"16 0 0 160 57 1441 1440 160 \n",
"17 0 0 160 57 1601 1600 160 \n",
"18 0 0 160 57 1761 1760 160 \n",
"19 0 0 160 57 1921 1920 160 \n",
"20 0 0 160 57 2081 2080 160 \n",
"21 0 0 160 57 2241 2240 160 \n",
"22 0 0 160 57 2401 2400 160 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"1704386000 1.0 2720 2720\n",
"1704386160 1.0 2880 2880\n",
"1704386320 1.0 3040 3040\n",
"1704386480 1.0 3200 3200\n",
"1704386572 0.57 3292 3360\n",
"gt 5 1704386572 0.57 3292 3360\n",
"1704386730 0.99 3450 3520\n",
"gt 6 1704386730 0.99 3450 3520\n",
"1704386889 0.99 3609 3680\n",
"gt 7 1704386889 0.99 3609 3680\n",
"1704387050 1.01 3770 3840\n",
"gt 8 1704387050 1.01 3770 3840\n",
"1704387210 1.0 3930 4000\n",
"gt 9 1704387210 1.0 3930 4000\n",
"1704387370 1.0 4090 4160\n",
"gt 10 1704387370 1.0 4090 4160\n",
"1704387530 1.0 4250 4320\n",
"gt 11 1704387530 1.0 4250 4320\n",
"1704387690 1.0 801 800\n",
"1704387850 1.0 961 960\n",
"1704388010 1.0 1121 1120\n",
"1704388170 1.0 1281 1280\n",
"1704388330 1.0 1441 1440\n",
"1704388490 1.0 1601 1600\n",
"1704388650 1.0 1761 1760\n",
"1704388810 1.0 1921 1920\n",
"1704388970 1.0 2081 2080\n",
"1704389130 1.0 2241 2240\n",
"1704389290 1.0 2401 2400\n",
"이상치 처리 후\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>D_n</th>\n",
" <th>S_n</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1704385840</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2560</td>\n",
" <td>2560</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>1704386000</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2720</td>\n",
" <td>2720</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>1704386160</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2880</td>\n",
" <td>2880</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>1704386320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3040</td>\n",
" <td>3040</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>175</td>\n",
" <td>1704386480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3200</td>\n",
" <td>3200</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>175</td>\n",
" <td>1704386572</td>\n",
" <td>21</td>\n",
" <td>23</td>\n",
" <td>14</td>\n",
" <td>17</td>\n",
" <td>17</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>92</td>\n",
" <td>57</td>\n",
" <td>3292</td>\n",
" <td>3360</td>\n",
" <td>92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>175</td>\n",
" <td>1704386730</td>\n",
" <td>36</td>\n",
" <td>38</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>158</td>\n",
" <td>57</td>\n",
" <td>3450</td>\n",
" <td>3520</td>\n",
" <td>158</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>175</td>\n",
" <td>1704386889</td>\n",
" <td>37</td>\n",
" <td>38</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>159</td>\n",
" <td>57</td>\n",
" <td>3609</td>\n",
" <td>3680</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>175</td>\n",
" <td>1704387050</td>\n",
" <td>37</td>\n",
" <td>40</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>161</td>\n",
" <td>57</td>\n",
" <td>3770</td>\n",
" <td>3840</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>175</td>\n",
" <td>1704387210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>3930</td>\n",
" <td>4000</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>175</td>\n",
" <td>1704387370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>4090</td>\n",
" <td>4160</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>175</td>\n",
" <td>1704387530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>4250</td>\n",
" <td>4320</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>175</td>\n",
" <td>1704387690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>801</td>\n",
" <td>800</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>175</td>\n",
" <td>1704387850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>961</td>\n",
" <td>960</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>175</td>\n",
" <td>1704388010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1121</td>\n",
" <td>1120</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>175</td>\n",
" <td>1704388170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1281</td>\n",
" <td>1280</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>175</td>\n",
" <td>1704388330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1441</td>\n",
" <td>1440</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>175</td>\n",
" <td>1704388490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1601</td>\n",
" <td>1600</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>175</td>\n",
" <td>1704388650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1761</td>\n",
" <td>1760</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>175</td>\n",
" <td>1704388810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>1921</td>\n",
" <td>1920</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>175</td>\n",
" <td>1704388970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2081</td>\n",
" <td>2080</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>175</td>\n",
" <td>1704389130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2241</td>\n",
" <td>2240</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>175</td>\n",
" <td>1704389290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2401</td>\n",
" <td>2400</td>\n",
" <td>160</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"0 175 1704385840 37 39 25 30 29 0 \n",
"1 175 1704386000 37 39 25 30 29 0 \n",
"2 175 1704386160 37 39 25 30 29 0 \n",
"3 175 1704386320 37 39 25 30 29 0 \n",
"4 175 1704386480 37 39 25 30 29 0 \n",
"5 175 1704386572 21 23 14 17 17 0 \n",
"6 175 1704386730 36 38 25 30 29 0 \n",
"7 175 1704386889 37 38 25 30 29 0 \n",
"8 175 1704387050 37 40 25 30 29 0 \n",
"9 175 1704387210 37 39 25 30 29 0 \n",
"10 175 1704387370 37 39 25 30 29 0 \n",
"11 175 1704387530 37 39 25 30 29 0 \n",
"12 175 1704387690 37 39 25 30 29 0 \n",
"13 175 1704387850 37 39 25 30 29 0 \n",
"14 175 1704388010 37 39 25 30 29 0 \n",
"15 175 1704388170 37 39 25 30 29 0 \n",
"16 175 1704388330 37 39 25 30 29 0 \n",
"17 175 1704388490 37 39 25 30 29 0 \n",
"18 175 1704388650 37 39 25 30 29 0 \n",
"19 175 1704388810 37 39 25 30 29 0 \n",
"20 175 1704388970 37 39 25 30 29 0 \n",
"21 175 1704389130 37 39 25 30 29 0 \n",
"22 175 1704389290 37 39 25 30 29 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset D_n S_n diff \n",
"0 0 0 160 57 2560 2560 0 \n",
"1 0 0 160 57 2720 2720 160 \n",
"2 0 0 160 57 2880 2880 160 \n",
"3 0 0 160 57 3040 3040 160 \n",
"4 0 0 160 57 3200 3200 160 \n",
"5 0 0 92 57 3292 3360 92 \n",
"6 0 0 158 57 3450 3520 158 \n",
"7 0 0 159 57 3609 3680 159 \n",
"8 0 0 161 57 3770 3840 161 \n",
"9 0 0 160 57 3930 4000 160 \n",
"10 0 0 160 57 4090 4160 160 \n",
"11 0 0 160 57 4250 4320 160 \n",
"12 0 0 160 57 801 800 160 \n",
"13 0 0 160 57 961 960 160 \n",
"14 0 0 160 57 1121 1120 160 \n",
"15 0 0 160 57 1281 1280 160 \n",
"16 0 0 160 57 1441 1440 160 \n",
"17 0 0 160 57 1601 1600 160 \n",
"18 0 0 160 57 1761 1760 160 \n",
"19 0 0 160 57 1921 1920 160 \n",
"20 0 0 160 57 2081 2080 160 \n",
"21 0 0 160 57 2241 2240 160 \n",
"22 0 0 160 57 2401 2400 160 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"inter_no = 175\n",
"m = 30 # ranges from 0 to 287, but 0 makes an error where 288 = 86400//300\n",
"fmins = range(midnight, next_day, 300) # fmins : unix time by Five MINuteS\n",
"present_time = fmins[m] # 현재시점\n",
"# - 5분마다 신호이력 데이터 수집해서 통합테이블 생성할때\n",
"# 1. 조회시점의 유닉스 타임을 기준으로 신호이력의 유닉스 타임이 1시간 이내인 데이터 수집\n",
"rhistory = history.copy() # recent history (3시간 이내)\n",
"rhistory = rhistory[(rhistory.end_unix < present_time) & (rhistory.end_unix >= present_time - 10800)]\n",
"hours = np.array(range(midnight, next_day + 1, 3600))\n",
"rhist = rhistory.copy()[rhistory.inter_no == inter_no] # 특정한 inter_no\n",
"rhist = rhist.reset_index(drop=True)\n",
"print(\"결측치 처리 전\")\n",
"rhist_diff = rhist.copy()\n",
"rhist_diff['diff'] = rhist_diff['end_unix'].diff().fillna(0).astype(int)\n",
"display(rhist_diff.tail(20)) # 결측치 처리 전\n",
"new_rows = []\n",
"# 1-1. 결측치 처리 : 인접한 두 end_unix의 차이가 계획된 주기의 두 배보다 크면 결측이 일어났다고 판단\n",
"for n in range(len(rhist) - 1):\n",
" curr_unix = rhist.iloc[n].end_unix # current end_unix\n",
" next_unix = rhist.iloc[n+1].end_unix # next end_unix\n",
" cycle = rhist.iloc[n].cycle\n",
" if next_unix - curr_unix >= 2 * cycle:\n",
" # 현재 unix를 계획된 주기만큼 늘려가면서 한 행씩 채워나간다.\n",
" #(다음 unix와의 차이가 계획된 주기보다 작거나 같아질 때까지)\n",
" while next_unix - curr_unix > cycle:\n",
" curr_unix += cycle\n",
" start_seconds = np.array(timetable.start_seconds)\n",
" idx = (start_seconds <= curr_unix).sum() - 1\n",
" start_hour = timetable.iloc[idx].start_hour\n",
" start_minute = timetable.iloc[idx].start_minute\n",
" prow = pland[(pland.inter_no==inter_no) & (pland.start_hour==start_hour) & (pland.start_minute==start_minute)] # planned row\n",
" prow = prow.drop(['start_hour', 'start_minute'], axis=1)\n",
" prow['end_unix'] = curr_unix\n",
" cycle = prow.iloc[0].cycle\n",
" display(prow)\n",
" new_rows.append(prow)\n",
"\n",
"rhist = pd.concat([rhist] + new_rows).sort_values(['end_unix'])\n",
"print(\"결측치 처리 후\")\n",
"rhist_diff = rhist.copy()\n",
"rhist_diff['diff'] = rhist_diff['end_unix'].diff().fillna(0).astype(int)\n",
"display(rhist_diff.tail(20)) # 결측치 처리 후\n",
"rhist = rhist.reset_index(drop=True)\n",
"\n",
"# 1-2. 이상치 처리 : 기준유닉스로부터의 시간차이와 현시시간합이 11 이상 차이나면 이상치가 발생했다고 판단\n",
"Rhist = rhist.copy() # recent history 1704393231\n",
"Rhist = Rhist[(Rhist.end_unix < present_time) & (Rhist.end_unix >= present_time - 3600)] # Recent history (1시간 이내)\n",
"Rhist = Rhist.reset_index(drop=True)\n",
"# for n in range(len(Rhist)) 이하 : D_n, S_n을 시각적으로 표시하기 위한 코드. 전처리과정과는 무관\n",
"Rhist['D_n'] = 0\n",
"Rhist['S_n'] = 0\n",
"for n in range(len(Rhist)):\n",
" curr_unix = Rhist.iloc[n].end_unix # current end_unix\n",
" cycle = Rhist.iloc[n].cycle\n",
" ghour_lt_curr_unix = hours[hours < curr_unix].max() # the greatest hour less than curr_unix\n",
" end_unixes = rhist.end_unix.unique()\n",
" end_unixes_lt_ghour = np.sort(end_unixes[end_unixes < ghour_lt_curr_unix]) # end unixes less than ghour_lt_end_unix\n",
" base_unix = end_unixes_lt_ghour[-5] # 기준유닉스 : curr_unix보다 작은 hour 중에서 가장 큰 값으로부터 다섯 번째로 작은 end_unix\n",
" # D_n : 시간차이\n",
" D_n = curr_unix - base_unix\n",
" ddurations = rhist[(rhist.end_unix > base_unix) & (rhist.end_unix <= curr_unix)][[f'ddur_{j}' for j in range(1,9)]]\n",
" # S_n : 현시시간합\n",
" S_n = ddurations.values.sum()\n",
" Rhist.loc[n, ['D_n', 'S_n']] = [D_n, S_n]\n",
"print(\"이상치 처리 전\")\n",
"Rhist_diff = Rhist.copy()\n",
"Rhist_diff['diff'] = Rhist_diff['end_unix'].diff().fillna(0).astype(int)\n",
"display(Rhist_diff)\n",
"n = 1\n",
"while n < len(Rhist):\n",
" prev_unix = Rhist[Rhist.index==n-1]['end_unix'].iloc[0] # previous end_unix\n",
" curr_unix = Rhist[Rhist.index==n]['end_unix'].iloc[0] # current end_unix\n",
" R_n = (curr_unix - prev_unix) / cycle\n",
" ghour_lt_curr_unix = hours[hours < curr_unix].max() # the greatest hour less than curr_unix\n",
" end_unixes = rhist.end_unix.unique()\n",
" end_unixes_lt_ghour = np.sort(end_unixes[end_unixes < ghour_lt_curr_unix]) # end unixes less than ghour_lt_end_unix\n",
" base_unix = end_unixes_lt_ghour[-5] # 기준유닉스 : curr_unix보다 작은 hour 중에서 가장 큰 값으로부터 다섯 번째로 작은 end_unix\n",
" # D_n : 시간차이\n",
" D_n = curr_unix - base_unix\n",
" # S_n : 현시시간합\n",
" ddurations = rhist[(rhist.end_unix > base_unix) & (rhist.end_unix <= curr_unix)][[f'ddur_{j}' for j in range(1,9)]]\n",
" S_n = ddurations.values.sum()\n",
" print(curr_unix, round(R_n,2), D_n, S_n)\n",
" # 1-2-1 비율이 0.5보다 작거나 같으면 해당 행을 삭제\n",
" if (abs(D_n - S_n) > 10) & (R_n <= 0.5):\n",
" print(\"lt\", n, curr_unix, round(R_n,2), D_n, S_n)\n",
" Rhist = Rhist.drop(index=n)\n",
" n += 1\n",
" # 행삭제에 따른 curr_unix, D_n, S_n 등 재정의\n",
" if not Rhist[Rhist.index==n]['end_unix'].empty: # 마지막 행을 삭제하여 뒤의 행이 없을 때를 대비\n",
" curr_unix = Rhist[Rhist.index==n]['end_unix'].iloc[0] # current end_unix\n",
" R_n = (curr_unix - prev_unix) / cycle\n",
" ghour_lt_curr_unix = hours[hours < curr_unix].max() # the greatest hour less than curr_unix\n",
" end_unixes = rhist.end_unix.unique()\n",
" end_unixes_lt_ghour = np.sort(end_unixes[end_unixes < ghour_lt_curr_unix]) # end unixes less than ghour_lt_end_unix\n",
" base_unix = end_unixes_lt_ghour[-5] # 기준유닉스 : curr_unix보다 작은 hour 중에서 가장 큰 값으로부터 다섯 번째로 작은 end_unix\n",
" # D_n : 시간차이\n",
" D_n = curr_unix - base_unix\n",
" # S_n : 현시시간합\n",
" ddurations = rhist[(rhist.end_unix > base_unix) & (rhist.end_unix <= curr_unix)][[f'ddur_{j}' for j in range(1,9)]]\n",
" S_n = ddurations.values.sum()\n",
" # 1-2-1 비율이 0.5보다 크면 해당 행 조정 (비율을 유지한 채로 현시시간 대체)\n",
" if (abs(D_n - S_n) > 10) & (R_n > 0.5):\n",
" print(\"gt\", n, curr_unix, round(R_n, 2), D_n, S_n)\n",
" start_seconds = np.array(timetable.start_seconds)\n",
" idx = (start_seconds <= curr_unix).sum() - 1\n",
" start_hour = timetable.iloc[idx].start_hour\n",
" start_minute = timetable.iloc[idx].start_minute\n",
" prow = pland[(pland.inter_no==inter_no) & (pland.start_hour==start_hour) & (pland.start_minute==start_minute)].copy().reset_index(drop=True).iloc[0] # planned row\n",
" adjusted_dur = prow[['ddur_1', 'ddur_2', 'ddur_3', 'ddur_4', 'ddur_5', 'ddur_6', 'ddur_7', 'ddur_8']] * R_n\n",
" # 조정된 현시시간을 정수로 바꿈\n",
" int_parts = adjusted_dur.apply(lambda x: int(x))\n",
" frac_parts = adjusted_dur - int_parts\n",
" difference = int(round(adjusted_dur.sum())) - int_parts.sum()\n",
" # 소수 부분이 가장 큰 상위 'difference'개의 값에 대해 올림 처리\n",
" for _ in range(difference):\n",
" max_frac_index = frac_parts.idxmax()\n",
" int_parts[max_frac_index] += 1\n",
" frac_parts[max_frac_index] = 0 # 이미 처리된 항목은 0으로 설정\n",
" Rhist.loc[n, ['ddur_1', 'ddur_2', 'ddur_3', 'ddur_4', 'ddur_5', 'ddur_6', 'ddur_7', 'ddur_8']] = int_parts.values\n",
" Rhist.loc[n, 'cycle'] = int_parts.sum()\n",
" n += 1\n",
"print(\"이상치 처리 후\")\n",
"Rhist_diff = Rhist.copy()\n",
"Rhist_diff['diff'] = Rhist_diff['end_unix'].diff().fillna(0).astype(int)\n",
"display(Rhist_diff)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>dur_A1</th>\n",
" <th>dur_A2</th>\n",
" <th>dur_A3</th>\n",
" <th>dur_A4</th>\n",
" <th>dur_A5</th>\n",
" <th>dur_A6</th>\n",
" <th>dur_A7</th>\n",
" <th>dur_A8</th>\n",
" <th>dur_B1</th>\n",
" <th>dur_B2</th>\n",
" <th>dur_B3</th>\n",
" <th>dur_B4</th>\n",
" <th>dur_B5</th>\n",
" <th>dur_B6</th>\n",
" <th>dur_B7</th>\n",
" <th>dur_B8</th>\n",
" <th>cycle</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>206</td>\n",
" <td>1704380520</td>\n",
" <td>33</td>\n",
" <td>35</td>\n",
" <td>26</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>33</td>\n",
" <td>35</td>\n",
" <td>26</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>120</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>211</td>\n",
" <td>1704380525</td>\n",
" <td>28</td>\n",
" <td>97</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>28</td>\n",
" <td>97</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>125</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>178</td>\n",
" <td>1704380540</td>\n",
" <td>38</td>\n",
" <td>39</td>\n",
" <td>40</td>\n",
" <td>23</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>38</td>\n",
" <td>39</td>\n",
" <td>40</td>\n",
" <td>23</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>201</td>\n",
" <td>1704380540</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>17</td>\n",
" <td>58</td>\n",
" <td>17</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>24</td>\n",
" <td>24</td>\n",
" <td>17</td>\n",
" <td>58</td>\n",
" <td>17</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>202</td>\n",
" <td>1704380540</td>\n",
" <td>39</td>\n",
" <td>101</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>39</td>\n",
" <td>101</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>140</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix dur_A1 dur_A2 dur_A3 dur_A4 dur_A5 dur_A6 \\\n",
"0 206 1704380520 33 35 26 26 0 0 \n",
"1 211 1704380525 28 97 0 0 0 0 \n",
"2 178 1704380540 38 39 40 23 0 0 \n",
"3 201 1704380540 24 24 17 58 17 0 \n",
"4 202 1704380540 39 101 0 0 0 0 \n",
"\n",
" dur_A7 dur_A8 dur_B1 dur_B2 dur_B3 dur_B4 dur_B5 dur_B6 dur_B7 \\\n",
"0 0 0 33 35 26 26 0 0 0 \n",
"1 0 0 28 97 0 0 0 0 0 \n",
"2 0 0 38 39 40 23 0 0 0 \n",
"3 0 0 24 24 17 58 17 0 0 \n",
"4 0 0 39 101 0 0 0 0 0 \n",
"\n",
" dur_B8 cycle \n",
"0 0 120 \n",
"1 0 125 \n",
"2 0 140 \n",
"3 0 140 \n",
"4 0 140 "
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 세부현시로 되어있던 history를 A, B로 나뉘어 현시시간이 구성된 형태로 바꿈.\n",
"plan = pd.read_csv('../../Data/tables/plan.csv', index_col=0)\n",
"history = pd.read_csv('../../Data/tables/history.csv', index_col=0)\n",
"\n",
"# A, B 분리 혹은 통합시 사용할 수 있는 딕셔너리\n",
"splits = {} # splits maps (inter_no, start_hour, start_minute) to split\n",
"for i, row in plan.iterrows():\n",
" inter_no = row.inter_no\n",
" start_hour = row.start_hour\n",
" start_minute = row.start_minute\n",
" cycle = row.cycle\n",
" cums_A = row[[f'dura_A{j}' for j in range(1,9)]].cumsum()\n",
" cums_B = row[[f'dura_B{j}' for j in range(1,9)]].cumsum()\n",
" splits[(inter_no, start_hour, start_minute)] = {} # split maps (phas_A, phas_B) to k\n",
" k = 0\n",
" for t in range(cycle):\n",
" new_phas_A = len(cums_A[cums_A < t]) + 1\n",
" new_phas_B = len(cums_B[cums_B < t]) + 1\n",
" if k == 0 or ((new_phas_A, new_phas_B) != (phas_A, phas_B)):\n",
" k += 1\n",
" phas_A = new_phas_A\n",
" phas_B = new_phas_B\n",
" splits[(inter_no, start_hour, start_minute)][(phas_A, phas_B)] = k\n",
"\n",
"# the inverse of splits\n",
"isplits = {} # isplit maps k to (phas_A, phas_B)\n",
"for i in splits:\n",
" isplits[i] = {splits[i][k]:k for k in splits[i]}\n",
"\n",
"timetable = plan[['start_hour', 'start_minute']].drop_duplicates()\n",
"timetable['start_seconds'] = midnight + timetable['start_hour'] * 3600 + timetable['start_minute'] * 60\n",
"\n",
"abhistory = history.copy() # A, B가 나뉘어진 history\n",
"# history의 행들을 순회하며 새로운 열 dur_A1, dur_A2, ... 를 만들어내고 값을 배정함.\n",
"for i, row in abhistory.iterrows():\n",
" inter_no = row.inter_no\n",
" ind = (timetable['start_seconds'] < row.end_unix).sum() - 1\n",
" start_hour = timetable.iloc[ind].start_hour\n",
" start_minute = timetable.iloc[ind].start_minute\n",
" isplit = isplits[(inter_no,start_hour,start_minute)]\n",
" dur_dict = {}\n",
" dur_chars = [f'dur_{alph}{j}' for alph in ['A', 'B'] for j in range(1, 9)] # 새로운 행들\n",
" for dur_char in dur_chars:\n",
" dur_dict[dur_char] = 0\n",
" for k in range(1, len(isplit)+1): # dur_dict에 값 저장\n",
" ja = isplit[k][0] # A현시번호\n",
" jb = isplit[k][1] # B현시번호\n",
" dur_dict[f'dur_A{ja}'] += row[f'ddur_{k}']\n",
" dur_dict[f'dur_B{jb}'] += row[f'ddur_{k}']\n",
" for dur_char in dur_chars: # history의 새로운 열들에 값 배정\n",
" abhistory.at[i, dur_char] = dur_dict[dur_char]\n",
"abhistory = abhistory[['inter_no','end_unix'] + dur_chars + ['cycle']].astype(int)\n",
"abhistory = abhistory.astype(int).sort_values(by = ['end_unix','inter_no'])\n",
"abhistory.head()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"fmins = range(midnight, next_day, 300) # fmins : unix time by Five MINuteS\n",
"\n",
"def make_histid(m:int):\n",
" '''\n",
" input : m\n",
" - m ranges from 0 to 287, but 0 makes an error where 288 = 86400//300\n",
" - present_time = fmins[m] : 현재시점\n",
" output : histid\n",
" - history with edge ids (incoming and outgoing edge ids)\n",
" - 현재시점으로부터 한시간동안 (교차로번호, 현시, 링)별 현시시간, 진입엣지id, 진출엣지id\n",
" '''\n",
" present_time = fmins[m] ####### 현재 시점 ranges from 0 to 287\n",
" # - 5분마다 신호이력 데이터 수집해서 통합테이블 생성할때\n",
" # 1. 조회시점의 유닉스 타임을 기준으로 신호이력의 유닉스 타임이 1시간 이내인 데이터 수집\n",
" rhistory = history.copy()\n",
" rhistory = rhistory[(rhistory.end_unix < present_time) & (rhistory.end_unix >= present_time - 3600)]\n",
" ddurs = [f'ddur_{j}' for j in range(1, 9)]\n",
"\n",
" # 2. 시작 유닉스 타임컬럼 생성 후 종류 유닉스 타임에서 현시별 현시기간 컬럼의 합을 뺀 값으로 입력\n",
" # - 현시시간의 합을 뺀 시간의 +- 10초 이내에 이전 주기정보가 존재하면 그 유닉스 시간을 시작 유닉스시간 값으로 하고, 존재하지 않으면 현시시간의 합을 뺀 유닉스 시간을 시작 유닉스 시간으로 지정\n",
" # # 이전 유닉스 존재하지 않음 => 현시시간 합의 차\n",
" # # 이전 유닉스 존재, abs < 10 => 이전 유닉스\n",
" # # 이전 유닉스 존재, abs >=10 => 현시시간 합의 차\n",
" for i, row in rhistory.iterrows():\n",
" inter_no = row.inter_no\n",
" end_unix = row.end_unix\n",
" elapsed_time = row[ddurs].sum()\n",
" start_unix = end_unix - elapsed_time\n",
" pre_rows = history[:i] # previous rows\n",
" if inter_no in pre_rows.inter_no.unique(): # 이전 유닉스 존재\n",
" pre_unix = pre_rows[pre_rows.inter_no == inter_no]['end_unix'].iloc[-1] # previous unix time\n",
" if abs(pre_unix - start_unix) < 10: # abs < 10\n",
" start_unix = pre_unix\n",
" else: # abs >= 10\n",
" pass\n",
" rhistory.loc[i, 'start_unix'] = start_unix\n",
" rhistory[rhistory.isna()] = 0\n",
" rhistory['start_unix'] = rhistory['start_unix'].astype(int)\n",
" # with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n",
" # display(rhistory)\n",
" rhistory = rhistory[['inter_no', 'start_unix'] + ddurs + ['cycle']]\n",
"\n",
" # 계층화된 형태로 변환\n",
" hrhistory = [] # hierarchied recent history\n",
" for i, row in rhistory.iterrows():\n",
" inter_no = row.inter_no #\n",
" start_unix = row.start_unix #\n",
" ind = (timetable['start_seconds'] <= row.start_unix).sum() - 1\n",
" start_hour = timetable.iloc[ind].start_hour\n",
" start_minute = timetable.iloc[ind].start_minute\n",
" isplit = isplits[(inter_no, start_hour, start_minute)]\n",
" new_rows = []\n",
" for j in isplit.keys():\n",
" phas_A, phas_B = isplit[j]\n",
" duration = row[f'ddur_{j}']\n",
" new_rows.append(pd.DataFrame({'inter_no':[inter_no], 'start_unix':[start_unix],\n",
" 'phas_A':[phas_A],'phas_B':[phas_B],'duration':[duration]}))\n",
" new_rows = pd.concat(new_rows)\n",
" hrhistory.append(new_rows)\n",
" hrhistory = pd.concat(hrhistory)\n",
" hrhistory = hrhistory.sort_values(by = ['start_unix', 'inter_no', 'phas_A', 'phas_B']).reset_index(drop=True)\n",
"\n",
" # 5초단위로 수집한 이동류정보(time2movement[present_time])와 최근 1시간 신호이력(hrhistory)을 병합\n",
" movedur = pd.merge(time2movement[present_time], hrhistory, how='inner', on=['inter_no', 'start_unix', 'phas_A', 'phas_B'])\n",
" # movements and durations\n",
" movedur = movedur.sort_values(by=['start_unix', 'inter_no', 'phas_A','phas_B'])\n",
" movedur = movedur[['inter_no', 'start_unix', 'phas_A', 'phas_B', 'move_A', 'move_B', 'duration']]\n",
" # 이동류 매칭 테이블에서 진입id, 진출id를 가져와서 붙임.\n",
" for i, row in movedur.iterrows():\n",
" inter_no = row.inter_no\n",
" start_unix = row.start_unix\n",
" move_A = row.move_A\n",
" move_B = row.move_B\n",
" match_A = matching[(matching.inter_no == inter_no) & (matching.move_no == move_A)].iloc[0]\n",
" match_B = matching[(matching.inter_no == inter_no) & (matching.move_no == move_B)].iloc[0]\n",
" inc_edge_A = match_A.inc_edge\n",
" inc_edge_B = match_B.inc_edge\n",
" out_edge_A = match_A.out_edge\n",
" out_edge_B = match_B.out_edge\n",
" movedur.loc[i, ['inc_edge_A', 'inc_edge_B', 'out_edge_A', 'out_edge_B']] = [inc_edge_A, inc_edge_B, out_edge_A, out_edge_B]\n",
" # 이동류 컬럼 제거\n",
" movedur = movedur.drop(['move_A', 'move_B'], axis=1)\n",
"\n",
" histid = movedur.copy() # history with edge ids (incoming and outgoing edge ids)\n",
" return histid"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>end_unix</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>175</td>\n",
" <td>1704380721</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>175</td>\n",
" <td>1704380880</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>175</td>\n",
" <td>1704381040</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>175</td>\n",
" <td>1704381200</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>175</td>\n",
" <td>1704381360</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>175</td>\n",
" <td>1704381520</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78</th>\n",
" <td>175</td>\n",
" <td>1704381680</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88</th>\n",
" <td>175</td>\n",
" <td>1704381840</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>98</th>\n",
" <td>175</td>\n",
" <td>1704382000</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>107</th>\n",
" <td>175</td>\n",
" <td>1704382159</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>117</th>\n",
" <td>175</td>\n",
" <td>1704382320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>127</th>\n",
" <td>175</td>\n",
" <td>1704382480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>137</th>\n",
" <td>175</td>\n",
" <td>1704382640</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>152</th>\n",
" <td>175</td>\n",
" <td>1704382801</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>162</th>\n",
" <td>175</td>\n",
" <td>1704382960</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>171</th>\n",
" <td>175</td>\n",
" <td>1704383120</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>181</th>\n",
" <td>175</td>\n",
" <td>1704383280</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>191</th>\n",
" <td>175</td>\n",
" <td>1704383440</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>200</th>\n",
" <td>175</td>\n",
" <td>1704383599</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>211</th>\n",
" <td>175</td>\n",
" <td>1704383760</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>223</th>\n",
" <td>175</td>\n",
" <td>1704383920</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>232</th>\n",
" <td>175</td>\n",
" <td>1704384080</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>242</th>\n",
" <td>175</td>\n",
" <td>1704384241</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>252</th>\n",
" <td>175</td>\n",
" <td>1704384400</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>261</th>\n",
" <td>175</td>\n",
" <td>1704384561</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>270</th>\n",
" <td>175</td>\n",
" <td>1704384720</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>284</th>\n",
" <td>175</td>\n",
" <td>1704384880</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>293</th>\n",
" <td>175</td>\n",
" <td>1704385040</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>302</th>\n",
" <td>175</td>\n",
" <td>1704385200</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>315</th>\n",
" <td>175</td>\n",
" <td>1704385360</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>325</th>\n",
" <td>175</td>\n",
" <td>1704385520</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>334</th>\n",
" <td>175</td>\n",
" <td>1704385679</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>345</th>\n",
" <td>175</td>\n",
" <td>1704385840</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>355</th>\n",
" <td>175</td>\n",
" <td>1704386000</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>367</th>\n",
" <td>175</td>\n",
" <td>1704386160</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>377</th>\n",
" <td>175</td>\n",
" <td>1704386320</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>386</th>\n",
" <td>175</td>\n",
" <td>1704386480</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>395</th>\n",
" <td>175</td>\n",
" <td>1704386572</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>92</td>\n",
" </tr>\n",
" <tr>\n",
" <th>404</th>\n",
" <td>175</td>\n",
" <td>1704386730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>158</td>\n",
" </tr>\n",
" <tr>\n",
" <th>415</th>\n",
" <td>175</td>\n",
" <td>1704386889</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>424</th>\n",
" <td>175</td>\n",
" <td>1704387050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>433</th>\n",
" <td>175</td>\n",
" <td>1704387210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>444</th>\n",
" <td>175</td>\n",
" <td>1704387370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>453</th>\n",
" <td>175</td>\n",
" <td>1704387530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>465</th>\n",
" <td>175</td>\n",
" <td>1704387690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>477</th>\n",
" <td>175</td>\n",
" <td>1704387850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>486</th>\n",
" <td>175</td>\n",
" <td>1704388010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>495</th>\n",
" <td>175</td>\n",
" <td>1704388170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>506</th>\n",
" <td>175</td>\n",
" <td>1704388330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>515</th>\n",
" <td>175</td>\n",
" <td>1704388490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>524</th>\n",
" <td>175</td>\n",
" <td>1704388650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>539</th>\n",
" <td>175</td>\n",
" <td>1704388810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>549</th>\n",
" <td>175</td>\n",
" <td>1704388970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>558</th>\n",
" <td>175</td>\n",
" <td>1704389130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>569</th>\n",
" <td>175</td>\n",
" <td>1704389290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>578</th>\n",
" <td>175</td>\n",
" <td>1704389450</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>587</th>\n",
" <td>175</td>\n",
" <td>1704389610</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>598</th>\n",
" <td>175</td>\n",
" <td>1704389770</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>610</th>\n",
" <td>175</td>\n",
" <td>1704389930</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>619</th>\n",
" <td>175</td>\n",
" <td>1704390090</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>631</th>\n",
" <td>175</td>\n",
" <td>1704390250</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>640</th>\n",
" <td>175</td>\n",
" <td>1704390410</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>649</th>\n",
" <td>175</td>\n",
" <td>1704390570</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>660</th>\n",
" <td>175</td>\n",
" <td>1704390731</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>668</th>\n",
" <td>175</td>\n",
" <td>1704390890</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>681</th>\n",
" <td>175</td>\n",
" <td>1704391051</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>693</th>\n",
" <td>175</td>\n",
" <td>1704391210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>702</th>\n",
" <td>175</td>\n",
" <td>1704391370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>712</th>\n",
" <td>175</td>\n",
" <td>1704391530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>723</th>\n",
" <td>175</td>\n",
" <td>1704391690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>732</th>\n",
" <td>175</td>\n",
" <td>1704391850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>741</th>\n",
" <td>175</td>\n",
" <td>1704392010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>755</th>\n",
" <td>175</td>\n",
" <td>1704392170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>764</th>\n",
" <td>175</td>\n",
" <td>1704392330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>773</th>\n",
" <td>175</td>\n",
" <td>1704392490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>784</th>\n",
" <td>175</td>\n",
" <td>1704392651</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>793</th>\n",
" <td>175</td>\n",
" <td>1704392810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>802</th>\n",
" <td>175</td>\n",
" <td>1704392970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>813</th>\n",
" <td>175</td>\n",
" <td>1704393130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>825</th>\n",
" <td>175</td>\n",
" <td>1704393290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>834</th>\n",
" <td>175</td>\n",
" <td>1704393450</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>846</th>\n",
" <td>175</td>\n",
" <td>1704393610</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>856</th>\n",
" <td>175</td>\n",
" <td>1704393770</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>865</th>\n",
" <td>175</td>\n",
" <td>1704393930</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>876</th>\n",
" <td>175</td>\n",
" <td>1704394090</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>886</th>\n",
" <td>175</td>\n",
" <td>1704394250</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>898</th>\n",
" <td>175</td>\n",
" <td>1704394410</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>909</th>\n",
" <td>175</td>\n",
" <td>1704394570</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>918</th>\n",
" <td>175</td>\n",
" <td>1704394730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>927</th>\n",
" <td>175</td>\n",
" <td>1704394890</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>938</th>\n",
" <td>175</td>\n",
" <td>1704395050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>947</th>\n",
" <td>175</td>\n",
" <td>1704395210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>956</th>\n",
" <td>175</td>\n",
" <td>1704395370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>970</th>\n",
" <td>175</td>\n",
" <td>1704395530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>979</th>\n",
" <td>175</td>\n",
" <td>1704395690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>988</th>\n",
" <td>175</td>\n",
" <td>1704395850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>999</th>\n",
" <td>175</td>\n",
" <td>1704396010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1009</th>\n",
" <td>175</td>\n",
" <td>1704396170</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1018</th>\n",
" <td>175</td>\n",
" <td>1704396330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1030</th>\n",
" <td>175</td>\n",
" <td>1704396490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1042</th>\n",
" <td>175</td>\n",
" <td>1704396650</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1052</th>\n",
" <td>175</td>\n",
" <td>1704396810</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1063</th>\n",
" <td>175</td>\n",
" <td>1704396970</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1072</th>\n",
" <td>175</td>\n",
" <td>1704397130</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1081</th>\n",
" <td>175</td>\n",
" <td>1704397290</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1093</th>\n",
" <td>175</td>\n",
" <td>1704397451</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1102</th>\n",
" <td>175</td>\n",
" <td>1704397610</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1113</th>\n",
" <td>175</td>\n",
" <td>1704397770</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1124</th>\n",
" <td>175</td>\n",
" <td>1704397930</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1134</th>\n",
" <td>175</td>\n",
" <td>1704398089</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1142</th>\n",
" <td>175</td>\n",
" <td>1704398250</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1154</th>\n",
" <td>175</td>\n",
" <td>1704398410</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1163</th>\n",
" <td>175</td>\n",
" <td>1704398570</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1173</th>\n",
" <td>175</td>\n",
" <td>1704398730</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>175</td>\n",
" <td>1704398890</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1195</th>\n",
" <td>175</td>\n",
" <td>1704399050</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1206</th>\n",
" <td>175</td>\n",
" <td>1704399210</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1217</th>\n",
" <td>175</td>\n",
" <td>1704399370</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1226</th>\n",
" <td>175</td>\n",
" <td>1704399530</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1235</th>\n",
" <td>175</td>\n",
" <td>1704399690</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1247</th>\n",
" <td>175</td>\n",
" <td>1704399850</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1258</th>\n",
" <td>175</td>\n",
" <td>1704400010</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1267</th>\n",
" <td>175</td>\n",
" <td>1704400169</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1279</th>\n",
" <td>175</td>\n",
" <td>1704400330</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1288</th>\n",
" <td>175</td>\n",
" <td>1704400490</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1291</th>\n",
" <td>175</td>\n",
" <td>1704400549</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>59</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1305</th>\n",
" <td>175</td>\n",
" <td>1704400710</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1314</th>\n",
" <td>175</td>\n",
" <td>1704400870</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1325</th>\n",
" <td>175</td>\n",
" <td>1704401030</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1336</th>\n",
" <td>175</td>\n",
" <td>1704401190</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1345</th>\n",
" <td>175</td>\n",
" <td>1704401350</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1354</th>\n",
" <td>175</td>\n",
" <td>1704401510</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1365</th>\n",
" <td>175</td>\n",
" <td>1704401670</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1376</th>\n",
" <td>175</td>\n",
" <td>1704401830</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1386</th>\n",
" <td>175</td>\n",
" <td>1704401991</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1397</th>\n",
" <td>175</td>\n",
" <td>1704402150</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1406</th>\n",
" <td>175</td>\n",
" <td>1704402310</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1416</th>\n",
" <td>175</td>\n",
" <td>1704402471</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1428</th>\n",
" <td>175</td>\n",
" <td>1704402630</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1438</th>\n",
" <td>175</td>\n",
" <td>1704402790</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1448</th>\n",
" <td>175</td>\n",
" <td>1704402950</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1460</th>\n",
" <td>175</td>\n",
" <td>1704403110</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1470</th>\n",
" <td>175</td>\n",
" <td>1704403270</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1479</th>\n",
" <td>175</td>\n",
" <td>1704403430</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1489</th>\n",
" <td>175</td>\n",
" <td>1704403590</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1497</th>\n",
" <td>175</td>\n",
" <td>1704403750</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1506</th>\n",
" <td>175</td>\n",
" <td>1704403910</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1517</th>\n",
" <td>175</td>\n",
" <td>1704404070</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1528</th>\n",
" <td>175</td>\n",
" <td>1704404230</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1686</th>\n",
" <td>175</td>\n",
" <td>1704407111</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" <td>2881</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1695</th>\n",
" <td>175</td>\n",
" <td>1704407280</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1705</th>\n",
" <td>175</td>\n",
" <td>1704407449</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1715</th>\n",
" <td>175</td>\n",
" <td>1704407620</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1725</th>\n",
" <td>175</td>\n",
" <td>1704407791</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1735</th>\n",
" <td>175</td>\n",
" <td>1704407960</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1745</th>\n",
" <td>175</td>\n",
" <td>1704408130</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1754</th>\n",
" <td>175</td>\n",
" <td>1704408300</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1765</th>\n",
" <td>175</td>\n",
" <td>1704408470</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1774</th>\n",
" <td>175</td>\n",
" <td>1704408640</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1783</th>\n",
" <td>175</td>\n",
" <td>1704408810</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1792</th>\n",
" <td>175</td>\n",
" <td>1704408980</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1804</th>\n",
" <td>175</td>\n",
" <td>1704409150</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1813</th>\n",
" <td>175</td>\n",
" <td>1704409320</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1822</th>\n",
" <td>175</td>\n",
" <td>1704409490</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1833</th>\n",
" <td>175</td>\n",
" <td>1704409660</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1843</th>\n",
" <td>175</td>\n",
" <td>1704409831</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1853</th>\n",
" <td>175</td>\n",
" <td>1704410000</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1863</th>\n",
" <td>175</td>\n",
" <td>1704410170</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1872</th>\n",
" <td>175</td>\n",
" <td>1704410340</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1881</th>\n",
" <td>175</td>\n",
" <td>1704410510</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1891</th>\n",
" <td>175</td>\n",
" <td>1704410680</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1902</th>\n",
" <td>175</td>\n",
" <td>1704410850</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1911</th>\n",
" <td>175</td>\n",
" <td>1704411020</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1920</th>\n",
" <td>175</td>\n",
" <td>1704411191</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1930</th>\n",
" <td>175</td>\n",
" <td>1704411360</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1940</th>\n",
" <td>175</td>\n",
" <td>1704411530</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1949</th>\n",
" <td>175</td>\n",
" <td>1704411700</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1959</th>\n",
" <td>175</td>\n",
" <td>1704411869</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1969</th>\n",
" <td>175</td>\n",
" <td>1704412040</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>171</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1978</th>\n",
" <td>175</td>\n",
" <td>1704412210</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1989</th>\n",
" <td>175</td>\n",
" <td>1704412380</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1998</th>\n",
" <td>175</td>\n",
" <td>1704412550</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2008</th>\n",
" <td>175</td>\n",
" <td>1704412720</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2018</th>\n",
" <td>175</td>\n",
" <td>1704412890</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" <td>170</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2027</th>\n",
" <td>175</td>\n",
" <td>1704413070</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2038</th>\n",
" <td>175</td>\n",
" <td>1704413250</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2047</th>\n",
" <td>175</td>\n",
" <td>1704413430</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2057</th>\n",
" <td>175</td>\n",
" <td>1704413610</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2066</th>\n",
" <td>175</td>\n",
" <td>1704413790</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2075</th>\n",
" <td>175</td>\n",
" <td>1704413970</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2086</th>\n",
" <td>175</td>\n",
" <td>1704414150</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2095</th>\n",
" <td>175</td>\n",
" <td>1704414330</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2104</th>\n",
" <td>175</td>\n",
" <td>1704414510</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2114</th>\n",
" <td>175</td>\n",
" <td>1704414690</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2126</th>\n",
" <td>175</td>\n",
" <td>1704414871</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2136</th>\n",
" <td>175</td>\n",
" <td>1704415050</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2145</th>\n",
" <td>175</td>\n",
" <td>1704415230</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2155</th>\n",
" <td>175</td>\n",
" <td>1704415410</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2165</th>\n",
" <td>175</td>\n",
" <td>1704415590</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2174</th>\n",
" <td>175</td>\n",
" <td>1704415770</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2185</th>\n",
" <td>175</td>\n",
" <td>1704415950</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2195</th>\n",
" <td>175</td>\n",
" <td>1704416130</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2204</th>\n",
" <td>175</td>\n",
" <td>1704416310</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2214</th>\n",
" <td>175</td>\n",
" <td>1704416490</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2224</th>\n",
" <td>175</td>\n",
" <td>1704416671</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2234</th>\n",
" <td>175</td>\n",
" <td>1704416850</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2243</th>\n",
" <td>175</td>\n",
" <td>1704417030</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2252</th>\n",
" <td>175</td>\n",
" <td>1704417210</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2262</th>\n",
" <td>175</td>\n",
" <td>1704417390</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2271</th>\n",
" <td>175</td>\n",
" <td>1704417570</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2281</th>\n",
" <td>175</td>\n",
" <td>1704417750</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2293</th>\n",
" <td>175</td>\n",
" <td>1704417930</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2302</th>\n",
" <td>175</td>\n",
" <td>1704418109</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2311</th>\n",
" <td>175</td>\n",
" <td>1704418290</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2320</th>\n",
" <td>175</td>\n",
" <td>1704418470</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2331</th>\n",
" <td>175</td>\n",
" <td>1704418650</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2341</th>\n",
" <td>175</td>\n",
" <td>1704418830</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2350</th>\n",
" <td>175</td>\n",
" <td>1704419010</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2360</th>\n",
" <td>175</td>\n",
" <td>1704419190</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2370</th>\n",
" <td>175</td>\n",
" <td>1704419370</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2381</th>\n",
" <td>175</td>\n",
" <td>1704419550</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2390</th>\n",
" <td>175</td>\n",
" <td>1704419730</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2400</th>\n",
" <td>175</td>\n",
" <td>1704419909</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2409</th>\n",
" <td>175</td>\n",
" <td>1704420090</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2418</th>\n",
" <td>175</td>\n",
" <td>1704420271</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2429</th>\n",
" <td>175</td>\n",
" <td>1704420450</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2438</th>\n",
" <td>175</td>\n",
" <td>1704420630</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2448</th>\n",
" <td>175</td>\n",
" <td>1704420810</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2458</th>\n",
" <td>175</td>\n",
" <td>1704420990</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2468</th>\n",
" <td>175</td>\n",
" <td>1704421170</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2478</th>\n",
" <td>175</td>\n",
" <td>1704421350</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2487</th>\n",
" <td>175</td>\n",
" <td>1704421530</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2497</th>\n",
" <td>175</td>\n",
" <td>1704421710</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2507</th>\n",
" <td>175</td>\n",
" <td>1704421890</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2510</th>\n",
" <td>175</td>\n",
" <td>1704421943</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>53</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2519</th>\n",
" <td>175</td>\n",
" <td>1704422120</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>177</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2529</th>\n",
" <td>175</td>\n",
" <td>1704422299</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2538</th>\n",
" <td>175</td>\n",
" <td>1704422480</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2547</th>\n",
" <td>175</td>\n",
" <td>1704422660</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2558</th>\n",
" <td>175</td>\n",
" <td>1704422840</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2567</th>\n",
" <td>175</td>\n",
" <td>1704423021</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2577</th>\n",
" <td>175</td>\n",
" <td>1704423200</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2587</th>\n",
" <td>175</td>\n",
" <td>1704423380</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2596</th>\n",
" <td>175</td>\n",
" <td>1704423561</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2606</th>\n",
" <td>175</td>\n",
" <td>1704423740</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2615</th>\n",
" <td>175</td>\n",
" <td>1704423920</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2626</th>\n",
" <td>175</td>\n",
" <td>1704424100</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2635</th>\n",
" <td>175</td>\n",
" <td>1704424280</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2644</th>\n",
" <td>175</td>\n",
" <td>1704424460</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2655</th>\n",
" <td>175</td>\n",
" <td>1704424640</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2665</th>\n",
" <td>175</td>\n",
" <td>1704424820</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2674</th>\n",
" <td>175</td>\n",
" <td>1704424999</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2683</th>\n",
" <td>175</td>\n",
" <td>1704425180</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2693</th>\n",
" <td>175</td>\n",
" <td>1704425360</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2703</th>\n",
" <td>175</td>\n",
" <td>1704425540</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2712</th>\n",
" <td>175</td>\n",
" <td>1704425719</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2722</th>\n",
" <td>175</td>\n",
" <td>1704425900</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2732</th>\n",
" <td>175</td>\n",
" <td>1704426080</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2742</th>\n",
" <td>175</td>\n",
" <td>1704426260</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2752</th>\n",
" <td>175</td>\n",
" <td>1704426440</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2762</th>\n",
" <td>175</td>\n",
" <td>1704426620</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2772</th>\n",
" <td>175</td>\n",
" <td>1704426800</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2782</th>\n",
" <td>175</td>\n",
" <td>1704426980</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2790</th>\n",
" <td>175</td>\n",
" <td>1704427160</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2802</th>\n",
" <td>175</td>\n",
" <td>1704427341</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2810</th>\n",
" <td>175</td>\n",
" <td>1704427520</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2822</th>\n",
" <td>175</td>\n",
" <td>1704427700</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2831</th>\n",
" <td>175</td>\n",
" <td>1704427880</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2841</th>\n",
" <td>175</td>\n",
" <td>1704428060</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2849</th>\n",
" <td>175</td>\n",
" <td>1704428239</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2858</th>\n",
" <td>175</td>\n",
" <td>1704428420</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2869</th>\n",
" <td>175</td>\n",
" <td>1704428600</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2879</th>\n",
" <td>175</td>\n",
" <td>1704428781</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2889</th>\n",
" <td>175</td>\n",
" <td>1704428960</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2898</th>\n",
" <td>175</td>\n",
" <td>1704429140</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2908</th>\n",
" <td>175</td>\n",
" <td>1704429320</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2918</th>\n",
" <td>175</td>\n",
" <td>1704429500</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2928</th>\n",
" <td>175</td>\n",
" <td>1704429680</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2938</th>\n",
" <td>175</td>\n",
" <td>1704429860</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2947</th>\n",
" <td>175</td>\n",
" <td>1704430040</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2958</th>\n",
" <td>175</td>\n",
" <td>1704430220</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2971</th>\n",
" <td>175</td>\n",
" <td>1704430400</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2980</th>\n",
" <td>175</td>\n",
" <td>1704430580</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2989</th>\n",
" <td>175</td>\n",
" <td>1704430760</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2997</th>\n",
" <td>175</td>\n",
" <td>1704430940</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3008</th>\n",
" <td>175</td>\n",
" <td>1704431120</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3018</th>\n",
" <td>175</td>\n",
" <td>1704431300</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3027</th>\n",
" <td>175</td>\n",
" <td>1704431481</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3036</th>\n",
" <td>175</td>\n",
" <td>1704431660</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3045</th>\n",
" <td>175</td>\n",
" <td>1704431840</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3055</th>\n",
" <td>175</td>\n",
" <td>1704432020</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3066</th>\n",
" <td>175</td>\n",
" <td>1704432200</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3077</th>\n",
" <td>175</td>\n",
" <td>1704432380</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3086</th>\n",
" <td>175</td>\n",
" <td>1704432560</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3095</th>\n",
" <td>175</td>\n",
" <td>1704432740</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3105</th>\n",
" <td>175</td>\n",
" <td>1704432920</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3113</th>\n",
" <td>175</td>\n",
" <td>1704433100</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3122</th>\n",
" <td>175</td>\n",
" <td>1704433280</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3132</th>\n",
" <td>175</td>\n",
" <td>1704433460</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3140</th>\n",
" <td>175</td>\n",
" <td>1704433640</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3149</th>\n",
" <td>175</td>\n",
" <td>1704433820</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3157</th>\n",
" <td>175</td>\n",
" <td>1704434000</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3166</th>\n",
" <td>175</td>\n",
" <td>1704434180</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3174</th>\n",
" <td>175</td>\n",
" <td>1704434360</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3182</th>\n",
" <td>175</td>\n",
" <td>1704434540</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3191</th>\n",
" <td>175</td>\n",
" <td>1704434720</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3201</th>\n",
" <td>175</td>\n",
" <td>1704434899</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3209</th>\n",
" <td>175</td>\n",
" <td>1704435080</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3218</th>\n",
" <td>175</td>\n",
" <td>1704435260</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3227</th>\n",
" <td>175</td>\n",
" <td>1704435440</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3236</th>\n",
" <td>175</td>\n",
" <td>1704435620</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3244</th>\n",
" <td>175</td>\n",
" <td>1704435800</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3253</th>\n",
" <td>175</td>\n",
" <td>1704435980</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3265</th>\n",
" <td>175</td>\n",
" <td>1704436160</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3273</th>\n",
" <td>175</td>\n",
" <td>1704436339</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3284</th>\n",
" <td>175</td>\n",
" <td>1704436520</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3294</th>\n",
" <td>175</td>\n",
" <td>1704436700</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3302</th>\n",
" <td>175</td>\n",
" <td>1704436879</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3312</th>\n",
" <td>175</td>\n",
" <td>1704437060</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3321</th>\n",
" <td>175</td>\n",
" <td>1704437240</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3331</th>\n",
" <td>175</td>\n",
" <td>1704437420</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3341</th>\n",
" <td>175</td>\n",
" <td>1704437600</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3351</th>\n",
" <td>175</td>\n",
" <td>1704437780</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3361</th>\n",
" <td>175</td>\n",
" <td>1704437960</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3370</th>\n",
" <td>175</td>\n",
" <td>1704438140</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3380</th>\n",
" <td>175</td>\n",
" <td>1704438320</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3390</th>\n",
" <td>175</td>\n",
" <td>1704438500</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3400</th>\n",
" <td>175</td>\n",
" <td>1704438681</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3409</th>\n",
" <td>175</td>\n",
" <td>1704438860</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3420</th>\n",
" <td>175</td>\n",
" <td>1704439040</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3431</th>\n",
" <td>175</td>\n",
" <td>1704439220</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3439</th>\n",
" <td>175</td>\n",
" <td>1704439399</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3449</th>\n",
" <td>175</td>\n",
" <td>1704439580</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3458</th>\n",
" <td>175</td>\n",
" <td>1704439759</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3469</th>\n",
" <td>175</td>\n",
" <td>1704439940</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3478</th>\n",
" <td>175</td>\n",
" <td>1704440120</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3488</th>\n",
" <td>175</td>\n",
" <td>1704440300</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3498</th>\n",
" <td>175</td>\n",
" <td>1704440480</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3506</th>\n",
" <td>175</td>\n",
" <td>1704440659</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3516</th>\n",
" <td>175</td>\n",
" <td>1704440840</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3526</th>\n",
" <td>175</td>\n",
" <td>1704441019</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3536</th>\n",
" <td>175</td>\n",
" <td>1704441200</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3545</th>\n",
" <td>175</td>\n",
" <td>1704441380</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3557</th>\n",
" <td>175</td>\n",
" <td>1704441560</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3566</th>\n",
" <td>175</td>\n",
" <td>1704441740</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3575</th>\n",
" <td>175</td>\n",
" <td>1704441920</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3584</th>\n",
" <td>175</td>\n",
" <td>1704442100</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3594</th>\n",
" <td>175</td>\n",
" <td>1704442280</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3603</th>\n",
" <td>175</td>\n",
" <td>1704442459</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3611</th>\n",
" <td>175</td>\n",
" <td>1704442640</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3623</th>\n",
" <td>175</td>\n",
" <td>1704442820</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3631</th>\n",
" <td>175</td>\n",
" <td>1704443000</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3639</th>\n",
" <td>175</td>\n",
" <td>1704443180</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3648</th>\n",
" <td>175</td>\n",
" <td>1704443360</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3658</th>\n",
" <td>175</td>\n",
" <td>1704443540</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3669</th>\n",
" <td>175</td>\n",
" <td>1704443720</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3678</th>\n",
" <td>175</td>\n",
" <td>1704443900</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3690</th>\n",
" <td>175</td>\n",
" <td>1704444080</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3698</th>\n",
" <td>175</td>\n",
" <td>1704444260</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3706</th>\n",
" <td>175</td>\n",
" <td>1704444360</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>100</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3716</th>\n",
" <td>175</td>\n",
" <td>1704444541</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3724</th>\n",
" <td>175</td>\n",
" <td>1704444720</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3734</th>\n",
" <td>175</td>\n",
" <td>1704444900</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3746</th>\n",
" <td>175</td>\n",
" <td>1704445081</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3755</th>\n",
" <td>175</td>\n",
" <td>1704445260</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3763</th>\n",
" <td>175</td>\n",
" <td>1704445440</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3774</th>\n",
" <td>175</td>\n",
" <td>1704445620</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3783</th>\n",
" <td>175</td>\n",
" <td>1704445800</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3795</th>\n",
" <td>175</td>\n",
" <td>1704445980</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3803</th>\n",
" <td>175</td>\n",
" <td>1704446159</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3813</th>\n",
" <td>175</td>\n",
" <td>1704446340</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>181</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3823</th>\n",
" <td>175</td>\n",
" <td>1704446520</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3832</th>\n",
" <td>175</td>\n",
" <td>1704446700</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3843</th>\n",
" <td>175</td>\n",
" <td>1704446880</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>180</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3852</th>\n",
" <td>175</td>\n",
" <td>1704447059</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" <td>179</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3862</th>\n",
" <td>175</td>\n",
" <td>1704447250</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3873</th>\n",
" <td>175</td>\n",
" <td>1704447441</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3882</th>\n",
" <td>175</td>\n",
" <td>1704447630</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3893</th>\n",
" <td>175</td>\n",
" <td>1704447821</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3902</th>\n",
" <td>175</td>\n",
" <td>1704448010</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3912</th>\n",
" <td>175</td>\n",
" <td>1704448200</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3921</th>\n",
" <td>175</td>\n",
" <td>1704448390</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3931</th>\n",
" <td>175</td>\n",
" <td>1704448580</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3941</th>\n",
" <td>175</td>\n",
" <td>1704448770</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3951</th>\n",
" <td>175</td>\n",
" <td>1704448960</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3962</th>\n",
" <td>175</td>\n",
" <td>1704449150</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3970</th>\n",
" <td>175</td>\n",
" <td>1704449340</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3980</th>\n",
" <td>175</td>\n",
" <td>1704449530</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3990</th>\n",
" <td>175</td>\n",
" <td>1704449720</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4000</th>\n",
" <td>175</td>\n",
" <td>1704449910</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4010</th>\n",
" <td>175</td>\n",
" <td>1704450101</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4020</th>\n",
" <td>175</td>\n",
" <td>1704450290</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4029</th>\n",
" <td>175</td>\n",
" <td>1704450480</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4039</th>\n",
" <td>175</td>\n",
" <td>1704450670</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4049</th>\n",
" <td>175</td>\n",
" <td>1704450860</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4057</th>\n",
" <td>175</td>\n",
" <td>1704451050</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4067</th>\n",
" <td>175</td>\n",
" <td>1704451240</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4077</th>\n",
" <td>175</td>\n",
" <td>1704451430</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4086</th>\n",
" <td>175</td>\n",
" <td>1704451620</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4097</th>\n",
" <td>175</td>\n",
" <td>1704451810</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4107</th>\n",
" <td>175</td>\n",
" <td>1704452000</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4116</th>\n",
" <td>175</td>\n",
" <td>1704452190</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4125</th>\n",
" <td>175</td>\n",
" <td>1704452380</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4135</th>\n",
" <td>175</td>\n",
" <td>1704452570</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4144</th>\n",
" <td>175</td>\n",
" <td>1704452760</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4154</th>\n",
" <td>175</td>\n",
" <td>1704452950</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4164</th>\n",
" <td>175</td>\n",
" <td>1704453140</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4174</th>\n",
" <td>175</td>\n",
" <td>1704453330</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4184</th>\n",
" <td>175</td>\n",
" <td>1704453520</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4193</th>\n",
" <td>175</td>\n",
" <td>1704453710</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4202</th>\n",
" <td>175</td>\n",
" <td>1704453899</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4212</th>\n",
" <td>175</td>\n",
" <td>1704454090</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4220</th>\n",
" <td>175</td>\n",
" <td>1704454280</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4231</th>\n",
" <td>175</td>\n",
" <td>1704454470</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4240</th>\n",
" <td>175</td>\n",
" <td>1704454660</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4250</th>\n",
" <td>175</td>\n",
" <td>1704454849</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4261</th>\n",
" <td>175</td>\n",
" <td>1704455040</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4269</th>\n",
" <td>175</td>\n",
" <td>1704455230</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4279</th>\n",
" <td>175</td>\n",
" <td>1704455419</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4288</th>\n",
" <td>175</td>\n",
" <td>1704455610</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4297</th>\n",
" <td>175</td>\n",
" <td>1704455800</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4308</th>\n",
" <td>175</td>\n",
" <td>1704455989</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4317</th>\n",
" <td>175</td>\n",
" <td>1704456180</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4327</th>\n",
" <td>175</td>\n",
" <td>1704456370</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4336</th>\n",
" <td>175</td>\n",
" <td>1704456560</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4347</th>\n",
" <td>175</td>\n",
" <td>1704456750</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4357</th>\n",
" <td>175</td>\n",
" <td>1704456940</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4368</th>\n",
" <td>175</td>\n",
" <td>1704457130</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4377</th>\n",
" <td>175</td>\n",
" <td>1704457320</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4387</th>\n",
" <td>175</td>\n",
" <td>1704457510</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4396</th>\n",
" <td>175</td>\n",
" <td>1704457700</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4405</th>\n",
" <td>175</td>\n",
" <td>1704457890</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4417</th>\n",
" <td>175</td>\n",
" <td>1704458080</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4427</th>\n",
" <td>175</td>\n",
" <td>1704458270</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4435</th>\n",
" <td>175</td>\n",
" <td>1704458460</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4447</th>\n",
" <td>175</td>\n",
" <td>1704458650</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4456</th>\n",
" <td>175</td>\n",
" <td>1704458840</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4465</th>\n",
" <td>175</td>\n",
" <td>1704459030</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4476</th>\n",
" <td>175</td>\n",
" <td>1704459220</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4484</th>\n",
" <td>175</td>\n",
" <td>1704459410</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4493</th>\n",
" <td>175</td>\n",
" <td>1704459600</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4504</th>\n",
" <td>175</td>\n",
" <td>1704459791</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4513</th>\n",
" <td>175</td>\n",
" <td>1704459980</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4524</th>\n",
" <td>175</td>\n",
" <td>1704460170</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4535</th>\n",
" <td>175</td>\n",
" <td>1704460361</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4544</th>\n",
" <td>175</td>\n",
" <td>1704460550</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4555</th>\n",
" <td>175</td>\n",
" <td>1704460740</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4563</th>\n",
" <td>175</td>\n",
" <td>1704460930</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4573</th>\n",
" <td>175</td>\n",
" <td>1704461120</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4584</th>\n",
" <td>175</td>\n",
" <td>1704461310</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4593</th>\n",
" <td>175</td>\n",
" <td>1704461500</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4603</th>\n",
" <td>175</td>\n",
" <td>1704461690</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4612</th>\n",
" <td>175</td>\n",
" <td>1704461880</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4624</th>\n",
" <td>175</td>\n",
" <td>1704462070</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4632</th>\n",
" <td>175</td>\n",
" <td>1704462260</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4643</th>\n",
" <td>175</td>\n",
" <td>1704462451</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4652</th>\n",
" <td>175</td>\n",
" <td>1704462640</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4661</th>\n",
" <td>175</td>\n",
" <td>1704462830</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4672</th>\n",
" <td>175</td>\n",
" <td>1704463020</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4682</th>\n",
" <td>175</td>\n",
" <td>1704463210</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4691</th>\n",
" <td>175</td>\n",
" <td>1704463400</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4702</th>\n",
" <td>175</td>\n",
" <td>1704463590</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4711</th>\n",
" <td>175</td>\n",
" <td>1704463781</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4721</th>\n",
" <td>175</td>\n",
" <td>1704463970</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4731</th>\n",
" <td>175</td>\n",
" <td>1704464160</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4741</th>\n",
" <td>175</td>\n",
" <td>1704464350</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4750</th>\n",
" <td>175</td>\n",
" <td>1704464540</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4760</th>\n",
" <td>175</td>\n",
" <td>1704464730</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4770</th>\n",
" <td>175</td>\n",
" <td>1704464920</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4781</th>\n",
" <td>175</td>\n",
" <td>1704465110</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4790</th>\n",
" <td>175</td>\n",
" <td>1704465300</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4798</th>\n",
" <td>175</td>\n",
" <td>1704465490</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4809</th>\n",
" <td>175</td>\n",
" <td>1704465680</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4817</th>\n",
" <td>175</td>\n",
" <td>1704465870</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4826</th>\n",
" <td>175</td>\n",
" <td>1704466060</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4838</th>\n",
" <td>175</td>\n",
" <td>1704466250</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>190</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4847</th>\n",
" <td>175</td>\n",
" <td>1704466439</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4859</th>\n",
" <td>175</td>\n",
" <td>1704466630</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" <td>191</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no end_unix ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 ddur_6 \\\n",
"17 175 1704380721 37 39 25 30 29 0 \n",
"26 175 1704380880 37 39 25 30 29 0 \n",
"37 175 1704381040 37 39 25 30 29 0 \n",
"46 175 1704381200 37 39 25 30 29 0 \n",
"55 175 1704381360 37 39 25 30 29 0 \n",
"69 175 1704381520 37 39 25 30 29 0 \n",
"78 175 1704381680 37 39 25 30 29 0 \n",
"88 175 1704381840 37 39 25 30 29 0 \n",
"98 175 1704382000 37 39 25 30 29 0 \n",
"107 175 1704382159 37 39 25 30 29 0 \n",
"117 175 1704382320 37 39 25 30 29 0 \n",
"127 175 1704382480 37 39 25 30 29 0 \n",
"137 175 1704382640 37 39 25 30 29 0 \n",
"152 175 1704382801 37 39 25 30 29 0 \n",
"162 175 1704382960 37 39 25 30 29 0 \n",
"171 175 1704383120 37 39 25 30 29 0 \n",
"181 175 1704383280 37 39 25 30 29 0 \n",
"191 175 1704383440 37 39 25 30 29 0 \n",
"200 175 1704383599 37 39 25 30 29 0 \n",
"211 175 1704383760 37 39 25 30 29 0 \n",
"223 175 1704383920 37 39 25 30 29 0 \n",
"232 175 1704384080 37 39 25 30 29 0 \n",
"242 175 1704384241 37 39 25 30 29 0 \n",
"252 175 1704384400 37 39 25 30 29 0 \n",
"261 175 1704384561 37 39 25 30 29 0 \n",
"270 175 1704384720 37 39 25 30 29 0 \n",
"284 175 1704384880 37 39 25 30 29 0 \n",
"293 175 1704385040 37 39 25 30 29 0 \n",
"302 175 1704385200 37 39 25 30 29 0 \n",
"315 175 1704385360 37 39 25 30 29 0 \n",
"325 175 1704385520 37 39 25 30 29 0 \n",
"334 175 1704385679 37 39 25 30 29 0 \n",
"345 175 1704385840 37 39 25 30 29 0 \n",
"355 175 1704386000 37 39 25 30 29 0 \n",
"367 175 1704386160 37 39 25 30 29 0 \n",
"377 175 1704386320 37 39 25 30 29 0 \n",
"386 175 1704386480 37 39 25 30 29 0 \n",
"395 175 1704386572 37 39 25 30 29 0 \n",
"404 175 1704386730 37 39 25 30 29 0 \n",
"415 175 1704386889 37 39 25 30 29 0 \n",
"424 175 1704387050 37 39 25 30 29 0 \n",
"433 175 1704387210 37 39 25 30 29 0 \n",
"444 175 1704387370 37 39 25 30 29 0 \n",
"453 175 1704387530 37 39 25 30 29 0 \n",
"465 175 1704387690 37 39 25 30 29 0 \n",
"477 175 1704387850 37 39 25 30 29 0 \n",
"486 175 1704388010 37 39 25 30 29 0 \n",
"495 175 1704388170 37 39 25 30 29 0 \n",
"506 175 1704388330 37 39 25 30 29 0 \n",
"515 175 1704388490 37 39 25 30 29 0 \n",
"524 175 1704388650 37 39 25 30 29 0 \n",
"539 175 1704388810 37 39 25 30 29 0 \n",
"549 175 1704388970 37 39 25 30 29 0 \n",
"558 175 1704389130 37 39 25 30 29 0 \n",
"569 175 1704389290 37 39 25 30 29 0 \n",
"578 175 1704389450 37 39 25 30 29 0 \n",
"587 175 1704389610 37 39 25 30 29 0 \n",
"598 175 1704389770 37 39 25 30 29 0 \n",
"610 175 1704389930 37 39 25 30 29 0 \n",
"619 175 1704390090 37 39 25 30 29 0 \n",
"631 175 1704390250 37 39 25 30 29 0 \n",
"640 175 1704390410 37 39 25 30 29 0 \n",
"649 175 1704390570 37 39 25 30 29 0 \n",
"660 175 1704390731 37 39 25 30 29 0 \n",
"668 175 1704390890 37 39 25 30 29 0 \n",
"681 175 1704391051 37 39 25 30 29 0 \n",
"693 175 1704391210 37 39 25 30 29 0 \n",
"702 175 1704391370 37 39 25 30 29 0 \n",
"712 175 1704391530 37 39 25 30 29 0 \n",
"723 175 1704391690 37 39 25 30 29 0 \n",
"732 175 1704391850 37 39 25 30 29 0 \n",
"741 175 1704392010 37 39 25 30 29 0 \n",
"755 175 1704392170 37 39 25 30 29 0 \n",
"764 175 1704392330 37 39 25 30 29 0 \n",
"773 175 1704392490 37 39 25 30 29 0 \n",
"784 175 1704392651 37 39 25 30 29 0 \n",
"793 175 1704392810 37 39 25 30 29 0 \n",
"802 175 1704392970 37 39 25 30 29 0 \n",
"813 175 1704393130 37 39 25 30 29 0 \n",
"825 175 1704393290 37 39 25 30 29 0 \n",
"834 175 1704393450 37 39 25 30 29 0 \n",
"846 175 1704393610 37 39 25 30 29 0 \n",
"856 175 1704393770 37 39 25 30 29 0 \n",
"865 175 1704393930 37 39 25 30 29 0 \n",
"876 175 1704394090 37 39 25 30 29 0 \n",
"886 175 1704394250 37 39 25 30 29 0 \n",
"898 175 1704394410 37 39 25 30 29 0 \n",
"909 175 1704394570 37 39 25 30 29 0 \n",
"918 175 1704394730 37 39 25 30 29 0 \n",
"927 175 1704394890 37 39 25 30 29 0 \n",
"938 175 1704395050 37 39 25 30 29 0 \n",
"947 175 1704395210 37 39 25 30 29 0 \n",
"956 175 1704395370 37 39 25 30 29 0 \n",
"970 175 1704395530 37 39 25 30 29 0 \n",
"979 175 1704395690 37 39 25 30 29 0 \n",
"988 175 1704395850 37 39 25 30 29 0 \n",
"999 175 1704396010 37 39 25 30 29 0 \n",
"1009 175 1704396170 37 39 25 30 29 0 \n",
"1018 175 1704396330 37 39 25 30 29 0 \n",
"1030 175 1704396490 37 39 25 30 29 0 \n",
"1042 175 1704396650 37 39 25 30 29 0 \n",
"1052 175 1704396810 37 39 25 30 29 0 \n",
"1063 175 1704396970 37 39 25 30 29 0 \n",
"1072 175 1704397130 37 39 25 30 29 0 \n",
"1081 175 1704397290 37 39 25 30 29 0 \n",
"1093 175 1704397451 37 39 25 30 29 0 \n",
"1102 175 1704397610 37 39 25 30 29 0 \n",
"1113 175 1704397770 37 39 25 30 29 0 \n",
"1124 175 1704397930 37 39 25 30 29 0 \n",
"1134 175 1704398089 37 39 25 30 29 0 \n",
"1142 175 1704398250 37 39 25 30 29 0 \n",
"1154 175 1704398410 37 39 25 30 29 0 \n",
"1163 175 1704398570 37 39 25 30 29 0 \n",
"1173 175 1704398730 37 39 25 30 29 0 \n",
"1186 175 1704398890 37 39 25 30 29 0 \n",
"1195 175 1704399050 37 39 25 30 29 0 \n",
"1206 175 1704399210 37 39 25 30 29 0 \n",
"1217 175 1704399370 37 39 25 30 29 0 \n",
"1226 175 1704399530 37 39 25 30 29 0 \n",
"1235 175 1704399690 37 39 25 30 29 0 \n",
"1247 175 1704399850 37 39 25 30 29 0 \n",
"1258 175 1704400010 37 39 25 30 29 0 \n",
"1267 175 1704400169 37 39 25 30 29 0 \n",
"1279 175 1704400330 37 39 25 30 29 0 \n",
"1288 175 1704400490 37 39 25 30 29 0 \n",
"1291 175 1704400549 37 39 25 30 29 0 \n",
"1305 175 1704400710 37 39 25 30 29 0 \n",
"1314 175 1704400870 37 39 25 30 29 0 \n",
"1325 175 1704401030 37 39 25 30 29 0 \n",
"1336 175 1704401190 37 39 25 30 29 0 \n",
"1345 175 1704401350 37 39 25 30 29 0 \n",
"1354 175 1704401510 37 39 25 30 29 0 \n",
"1365 175 1704401670 37 39 25 30 29 0 \n",
"1376 175 1704401830 37 39 25 30 29 0 \n",
"1386 175 1704401991 37 39 25 30 29 0 \n",
"1397 175 1704402150 37 39 25 30 29 0 \n",
"1406 175 1704402310 37 39 25 30 29 0 \n",
"1416 175 1704402471 37 39 25 30 29 0 \n",
"1428 175 1704402630 37 39 25 30 29 0 \n",
"1438 175 1704402790 37 39 25 30 29 0 \n",
"1448 175 1704402950 37 39 25 30 29 0 \n",
"1460 175 1704403110 37 39 25 30 29 0 \n",
"1470 175 1704403270 37 39 25 30 29 0 \n",
"1479 175 1704403430 37 39 25 30 29 0 \n",
"1489 175 1704403590 37 39 25 30 29 0 \n",
"1497 175 1704403750 37 39 25 30 29 0 \n",
"1506 175 1704403910 37 39 25 30 29 0 \n",
"1517 175 1704404070 37 39 25 30 29 0 \n",
"1528 175 1704404230 37 39 25 30 29 0 \n",
"1686 175 1704407111 37 39 25 30 29 0 \n",
"1695 175 1704407280 40 42 29 26 33 0 \n",
"1705 175 1704407449 40 42 29 26 33 0 \n",
"1715 175 1704407620 40 42 29 26 33 0 \n",
"1725 175 1704407791 40 42 29 26 33 0 \n",
"1735 175 1704407960 40 42 29 26 33 0 \n",
"1745 175 1704408130 40 42 29 26 33 0 \n",
"1754 175 1704408300 40 42 29 26 33 0 \n",
"1765 175 1704408470 40 42 29 26 33 0 \n",
"1774 175 1704408640 40 42 29 26 33 0 \n",
"1783 175 1704408810 40 42 29 26 33 0 \n",
"1792 175 1704408980 40 42 29 26 33 0 \n",
"1804 175 1704409150 40 42 29 26 33 0 \n",
"1813 175 1704409320 40 42 29 26 33 0 \n",
"1822 175 1704409490 40 42 29 26 33 0 \n",
"1833 175 1704409660 40 42 29 26 33 0 \n",
"1843 175 1704409831 40 42 29 26 33 0 \n",
"1853 175 1704410000 40 42 29 26 33 0 \n",
"1863 175 1704410170 40 42 29 26 33 0 \n",
"1872 175 1704410340 40 42 29 26 33 0 \n",
"1881 175 1704410510 40 42 29 26 33 0 \n",
"1891 175 1704410680 40 42 29 26 33 0 \n",
"1902 175 1704410850 40 42 29 26 33 0 \n",
"1911 175 1704411020 40 42 29 26 33 0 \n",
"1920 175 1704411191 40 42 29 26 33 0 \n",
"1930 175 1704411360 40 42 29 26 33 0 \n",
"1940 175 1704411530 40 42 29 26 33 0 \n",
"1949 175 1704411700 40 42 29 26 33 0 \n",
"1959 175 1704411869 40 42 29 26 33 0 \n",
"1969 175 1704412040 40 42 29 26 33 0 \n",
"1978 175 1704412210 40 42 29 26 33 0 \n",
"1989 175 1704412380 40 42 29 26 33 0 \n",
"1998 175 1704412550 40 42 29 26 33 0 \n",
"2008 175 1704412720 40 42 29 26 33 0 \n",
"2018 175 1704412890 40 42 29 26 33 0 \n",
"2027 175 1704413070 43 45 33 22 37 0 \n",
"2038 175 1704413250 43 45 33 22 37 0 \n",
"2047 175 1704413430 43 45 33 22 37 0 \n",
"2057 175 1704413610 43 45 33 22 37 0 \n",
"2066 175 1704413790 43 45 33 22 37 0 \n",
"2075 175 1704413970 43 45 33 22 37 0 \n",
"2086 175 1704414150 43 45 33 22 37 0 \n",
"2095 175 1704414330 43 45 33 22 37 0 \n",
"2104 175 1704414510 43 45 33 22 37 0 \n",
"2114 175 1704414690 43 45 33 22 37 0 \n",
"2126 175 1704414871 43 45 33 22 37 0 \n",
"2136 175 1704415050 43 45 33 22 37 0 \n",
"2145 175 1704415230 43 45 33 22 37 0 \n",
"2155 175 1704415410 43 45 33 22 37 0 \n",
"2165 175 1704415590 43 45 33 22 37 0 \n",
"2174 175 1704415770 43 45 33 22 37 0 \n",
"2185 175 1704415950 43 45 33 22 37 0 \n",
"2195 175 1704416130 43 45 33 22 37 0 \n",
"2204 175 1704416310 43 45 33 22 37 0 \n",
"2214 175 1704416490 43 45 33 22 37 0 \n",
"2224 175 1704416671 43 45 33 22 37 0 \n",
"2234 175 1704416850 43 45 33 22 37 0 \n",
"2243 175 1704417030 43 45 33 22 37 0 \n",
"2252 175 1704417210 43 45 33 22 37 0 \n",
"2262 175 1704417390 43 45 33 22 37 0 \n",
"2271 175 1704417570 43 45 33 22 37 0 \n",
"2281 175 1704417750 43 45 33 22 37 0 \n",
"2293 175 1704417930 43 45 33 22 37 0 \n",
"2302 175 1704418109 43 45 33 22 37 0 \n",
"2311 175 1704418290 43 45 33 22 37 0 \n",
"2320 175 1704418470 43 45 33 22 37 0 \n",
"2331 175 1704418650 43 45 33 22 37 0 \n",
"2341 175 1704418830 43 45 33 22 37 0 \n",
"2350 175 1704419010 43 45 33 22 37 0 \n",
"2360 175 1704419190 43 45 33 22 37 0 \n",
"2370 175 1704419370 43 45 33 22 37 0 \n",
"2381 175 1704419550 43 45 33 22 37 0 \n",
"2390 175 1704419730 43 45 33 22 37 0 \n",
"2400 175 1704419909 43 45 33 22 37 0 \n",
"2409 175 1704420090 43 45 33 22 37 0 \n",
"2418 175 1704420271 43 45 33 22 37 0 \n",
"2429 175 1704420450 43 45 33 22 37 0 \n",
"2438 175 1704420630 43 45 33 22 37 0 \n",
"2448 175 1704420810 43 45 33 22 37 0 \n",
"2458 175 1704420990 43 45 33 22 37 0 \n",
"2468 175 1704421170 43 45 33 22 37 0 \n",
"2478 175 1704421350 43 45 33 22 37 0 \n",
"2487 175 1704421530 43 45 33 22 37 0 \n",
"2497 175 1704421710 43 45 33 22 37 0 \n",
"2507 175 1704421890 43 45 33 22 37 0 \n",
"2510 175 1704421943 43 45 33 22 37 0 \n",
"2519 175 1704422120 43 45 33 22 37 0 \n",
"2529 175 1704422299 43 45 33 22 37 0 \n",
"2538 175 1704422480 43 45 33 22 37 0 \n",
"2547 175 1704422660 43 45 33 22 37 0 \n",
"2558 175 1704422840 43 45 33 22 37 0 \n",
"2567 175 1704423021 43 45 33 22 37 0 \n",
"2577 175 1704423200 43 45 33 22 37 0 \n",
"2587 175 1704423380 43 45 33 22 37 0 \n",
"2596 175 1704423561 43 45 33 22 37 0 \n",
"2606 175 1704423740 43 45 33 22 37 0 \n",
"2615 175 1704423920 43 45 33 22 37 0 \n",
"2626 175 1704424100 43 45 33 22 37 0 \n",
"2635 175 1704424280 43 45 33 22 37 0 \n",
"2644 175 1704424460 43 45 33 22 37 0 \n",
"2655 175 1704424640 43 45 33 22 37 0 \n",
"2665 175 1704424820 43 45 33 22 37 0 \n",
"2674 175 1704424999 43 45 33 22 37 0 \n",
"2683 175 1704425180 43 45 33 22 37 0 \n",
"2693 175 1704425360 43 45 33 22 37 0 \n",
"2703 175 1704425540 43 45 33 22 37 0 \n",
"2712 175 1704425719 43 45 33 22 37 0 \n",
"2722 175 1704425900 43 45 33 22 37 0 \n",
"2732 175 1704426080 43 45 33 22 37 0 \n",
"2742 175 1704426260 43 45 33 22 37 0 \n",
"2752 175 1704426440 43 45 33 22 37 0 \n",
"2762 175 1704426620 43 45 33 22 37 0 \n",
"2772 175 1704426800 43 45 33 22 37 0 \n",
"2782 175 1704426980 43 45 33 22 37 0 \n",
"2790 175 1704427160 43 45 33 22 37 0 \n",
"2802 175 1704427341 43 45 33 22 37 0 \n",
"2810 175 1704427520 43 45 33 22 37 0 \n",
"2822 175 1704427700 43 45 33 22 37 0 \n",
"2831 175 1704427880 43 45 33 22 37 0 \n",
"2841 175 1704428060 43 45 33 22 37 0 \n",
"2849 175 1704428239 43 45 33 22 37 0 \n",
"2858 175 1704428420 43 45 33 22 37 0 \n",
"2869 175 1704428600 43 45 33 22 37 0 \n",
"2879 175 1704428781 43 45 33 22 37 0 \n",
"2889 175 1704428960 43 45 33 22 37 0 \n",
"2898 175 1704429140 43 45 33 22 37 0 \n",
"2908 175 1704429320 43 45 33 22 37 0 \n",
"2918 175 1704429500 43 45 33 22 37 0 \n",
"2928 175 1704429680 43 45 33 22 37 0 \n",
"2938 175 1704429860 43 45 33 22 37 0 \n",
"2947 175 1704430040 43 45 33 22 37 0 \n",
"2958 175 1704430220 43 45 33 22 37 0 \n",
"2971 175 1704430400 43 45 33 22 37 0 \n",
"2980 175 1704430580 43 45 33 22 37 0 \n",
"2989 175 1704430760 43 45 33 22 37 0 \n",
"2997 175 1704430940 43 45 33 22 37 0 \n",
"3008 175 1704431120 43 45 33 22 37 0 \n",
"3018 175 1704431300 43 45 33 22 37 0 \n",
"3027 175 1704431481 43 45 33 22 37 0 \n",
"3036 175 1704431660 43 45 33 22 37 0 \n",
"3045 175 1704431840 43 45 33 22 37 0 \n",
"3055 175 1704432020 43 45 33 22 37 0 \n",
"3066 175 1704432200 43 45 33 22 37 0 \n",
"3077 175 1704432380 43 45 33 22 37 0 \n",
"3086 175 1704432560 43 45 33 22 37 0 \n",
"3095 175 1704432740 43 45 33 22 37 0 \n",
"3105 175 1704432920 43 45 33 22 37 0 \n",
"3113 175 1704433100 43 45 33 22 37 0 \n",
"3122 175 1704433280 43 45 33 22 37 0 \n",
"3132 175 1704433460 43 45 33 22 37 0 \n",
"3140 175 1704433640 43 45 33 22 37 0 \n",
"3149 175 1704433820 43 45 33 22 37 0 \n",
"3157 175 1704434000 43 45 33 22 37 0 \n",
"3166 175 1704434180 43 45 33 22 37 0 \n",
"3174 175 1704434360 43 45 33 22 37 0 \n",
"3182 175 1704434540 43 45 33 22 37 0 \n",
"3191 175 1704434720 43 45 33 22 37 0 \n",
"3201 175 1704434899 43 45 33 22 37 0 \n",
"3209 175 1704435080 43 45 33 22 37 0 \n",
"3218 175 1704435260 43 45 33 22 37 0 \n",
"3227 175 1704435440 43 45 33 22 37 0 \n",
"3236 175 1704435620 43 45 33 22 37 0 \n",
"3244 175 1704435800 43 45 33 22 37 0 \n",
"3253 175 1704435980 43 45 33 22 37 0 \n",
"3265 175 1704436160 43 45 33 22 37 0 \n",
"3273 175 1704436339 43 45 33 22 37 0 \n",
"3284 175 1704436520 43 45 33 22 37 0 \n",
"3294 175 1704436700 43 45 33 22 37 0 \n",
"3302 175 1704436879 43 45 33 22 37 0 \n",
"3312 175 1704437060 43 45 33 22 37 0 \n",
"3321 175 1704437240 43 45 33 22 37 0 \n",
"3331 175 1704437420 43 45 33 22 37 0 \n",
"3341 175 1704437600 43 45 33 22 37 0 \n",
"3351 175 1704437780 43 45 33 22 37 0 \n",
"3361 175 1704437960 43 45 33 22 37 0 \n",
"3370 175 1704438140 43 45 33 22 37 0 \n",
"3380 175 1704438320 43 45 33 22 37 0 \n",
"3390 175 1704438500 43 45 33 22 37 0 \n",
"3400 175 1704438681 43 45 33 22 37 0 \n",
"3409 175 1704438860 43 45 33 22 37 0 \n",
"3420 175 1704439040 43 45 33 22 37 0 \n",
"3431 175 1704439220 43 45 33 22 37 0 \n",
"3439 175 1704439399 43 45 33 22 37 0 \n",
"3449 175 1704439580 43 45 33 22 37 0 \n",
"3458 175 1704439759 43 45 33 22 37 0 \n",
"3469 175 1704439940 43 45 33 22 37 0 \n",
"3478 175 1704440120 43 45 33 22 37 0 \n",
"3488 175 1704440300 43 45 33 22 37 0 \n",
"3498 175 1704440480 43 45 33 22 37 0 \n",
"3506 175 1704440659 43 45 33 22 37 0 \n",
"3516 175 1704440840 43 45 33 22 37 0 \n",
"3526 175 1704441019 43 45 33 22 37 0 \n",
"3536 175 1704441200 43 45 33 22 37 0 \n",
"3545 175 1704441380 43 45 33 22 37 0 \n",
"3557 175 1704441560 43 45 33 22 37 0 \n",
"3566 175 1704441740 43 45 33 22 37 0 \n",
"3575 175 1704441920 43 45 33 22 37 0 \n",
"3584 175 1704442100 43 45 33 22 37 0 \n",
"3594 175 1704442280 43 45 33 22 37 0 \n",
"3603 175 1704442459 43 45 33 22 37 0 \n",
"3611 175 1704442640 43 45 33 22 37 0 \n",
"3623 175 1704442820 43 45 33 22 37 0 \n",
"3631 175 1704443000 43 45 33 22 37 0 \n",
"3639 175 1704443180 43 45 33 22 37 0 \n",
"3648 175 1704443360 43 45 33 22 37 0 \n",
"3658 175 1704443540 43 45 33 22 37 0 \n",
"3669 175 1704443720 43 45 33 22 37 0 \n",
"3678 175 1704443900 43 45 33 22 37 0 \n",
"3690 175 1704444080 43 45 33 22 37 0 \n",
"3698 175 1704444260 43 45 33 22 37 0 \n",
"3706 175 1704444360 43 45 33 22 37 0 \n",
"3716 175 1704444541 43 45 33 22 37 0 \n",
"3724 175 1704444720 43 45 33 22 37 0 \n",
"3734 175 1704444900 43 45 33 22 37 0 \n",
"3746 175 1704445081 43 45 33 22 37 0 \n",
"3755 175 1704445260 43 45 33 22 37 0 \n",
"3763 175 1704445440 43 45 33 22 37 0 \n",
"3774 175 1704445620 43 45 33 22 37 0 \n",
"3783 175 1704445800 43 45 33 22 37 0 \n",
"3795 175 1704445980 43 45 33 22 37 0 \n",
"3803 175 1704446159 43 45 33 22 37 0 \n",
"3813 175 1704446340 43 45 33 22 37 0 \n",
"3823 175 1704446520 43 45 33 22 37 0 \n",
"3832 175 1704446700 43 45 33 22 37 0 \n",
"3843 175 1704446880 43 45 33 22 37 0 \n",
"3852 175 1704447059 43 45 33 22 37 0 \n",
"3862 175 1704447250 46 48 37 18 41 0 \n",
"3873 175 1704447441 46 48 37 18 41 0 \n",
"3882 175 1704447630 46 48 37 18 41 0 \n",
"3893 175 1704447821 46 48 37 18 41 0 \n",
"3902 175 1704448010 46 48 37 18 41 0 \n",
"3912 175 1704448200 46 48 37 18 41 0 \n",
"3921 175 1704448390 46 48 37 18 41 0 \n",
"3931 175 1704448580 46 48 37 18 41 0 \n",
"3941 175 1704448770 46 48 37 18 41 0 \n",
"3951 175 1704448960 46 48 37 18 41 0 \n",
"3962 175 1704449150 46 48 37 18 41 0 \n",
"3970 175 1704449340 46 48 37 18 41 0 \n",
"3980 175 1704449530 46 48 37 18 41 0 \n",
"3990 175 1704449720 46 48 37 18 41 0 \n",
"4000 175 1704449910 46 48 37 18 41 0 \n",
"4010 175 1704450101 46 48 37 18 41 0 \n",
"4020 175 1704450290 46 48 37 18 41 0 \n",
"4029 175 1704450480 46 48 37 18 41 0 \n",
"4039 175 1704450670 46 48 37 18 41 0 \n",
"4049 175 1704450860 46 48 37 18 41 0 \n",
"4057 175 1704451050 46 48 37 18 41 0 \n",
"4067 175 1704451240 46 48 37 18 41 0 \n",
"4077 175 1704451430 46 48 37 18 41 0 \n",
"4086 175 1704451620 46 48 37 18 41 0 \n",
"4097 175 1704451810 46 48 37 18 41 0 \n",
"4107 175 1704452000 46 48 37 18 41 0 \n",
"4116 175 1704452190 46 48 37 18 41 0 \n",
"4125 175 1704452380 46 48 37 18 41 0 \n",
"4135 175 1704452570 46 48 37 18 41 0 \n",
"4144 175 1704452760 46 48 37 18 41 0 \n",
"4154 175 1704452950 46 48 37 18 41 0 \n",
"4164 175 1704453140 46 48 37 18 41 0 \n",
"4174 175 1704453330 46 48 37 18 41 0 \n",
"4184 175 1704453520 46 48 37 18 41 0 \n",
"4193 175 1704453710 46 48 37 18 41 0 \n",
"4202 175 1704453899 46 48 37 18 41 0 \n",
"4212 175 1704454090 46 48 37 18 41 0 \n",
"4220 175 1704454280 46 48 37 18 41 0 \n",
"4231 175 1704454470 46 48 37 18 41 0 \n",
"4240 175 1704454660 46 48 37 18 41 0 \n",
"4250 175 1704454849 46 48 37 18 41 0 \n",
"4261 175 1704455040 46 48 37 18 41 0 \n",
"4269 175 1704455230 46 48 37 18 41 0 \n",
"4279 175 1704455419 46 48 37 18 41 0 \n",
"4288 175 1704455610 46 48 37 18 41 0 \n",
"4297 175 1704455800 46 48 37 18 41 0 \n",
"4308 175 1704455989 46 48 37 18 41 0 \n",
"4317 175 1704456180 46 48 37 18 41 0 \n",
"4327 175 1704456370 46 48 37 18 41 0 \n",
"4336 175 1704456560 46 48 37 18 41 0 \n",
"4347 175 1704456750 46 48 37 18 41 0 \n",
"4357 175 1704456940 46 48 37 18 41 0 \n",
"4368 175 1704457130 46 48 37 18 41 0 \n",
"4377 175 1704457320 46 48 37 18 41 0 \n",
"4387 175 1704457510 46 48 37 18 41 0 \n",
"4396 175 1704457700 46 48 37 18 41 0 \n",
"4405 175 1704457890 46 48 37 18 41 0 \n",
"4417 175 1704458080 46 48 37 18 41 0 \n",
"4427 175 1704458270 46 48 37 18 41 0 \n",
"4435 175 1704458460 46 48 37 18 41 0 \n",
"4447 175 1704458650 46 48 37 18 41 0 \n",
"4456 175 1704458840 46 48 37 18 41 0 \n",
"4465 175 1704459030 46 48 37 18 41 0 \n",
"4476 175 1704459220 46 48 37 18 41 0 \n",
"4484 175 1704459410 46 48 37 18 41 0 \n",
"4493 175 1704459600 46 48 37 18 41 0 \n",
"4504 175 1704459791 46 48 37 18 41 0 \n",
"4513 175 1704459980 46 48 37 18 41 0 \n",
"4524 175 1704460170 46 48 37 18 41 0 \n",
"4535 175 1704460361 46 48 37 18 41 0 \n",
"4544 175 1704460550 46 48 37 18 41 0 \n",
"4555 175 1704460740 46 48 37 18 41 0 \n",
"4563 175 1704460930 46 48 37 18 41 0 \n",
"4573 175 1704461120 46 48 37 18 41 0 \n",
"4584 175 1704461310 46 48 37 18 41 0 \n",
"4593 175 1704461500 46 48 37 18 41 0 \n",
"4603 175 1704461690 46 48 37 18 41 0 \n",
"4612 175 1704461880 46 48 37 18 41 0 \n",
"4624 175 1704462070 46 48 37 18 41 0 \n",
"4632 175 1704462260 46 48 37 18 41 0 \n",
"4643 175 1704462451 46 48 37 18 41 0 \n",
"4652 175 1704462640 46 48 37 18 41 0 \n",
"4661 175 1704462830 46 48 37 18 41 0 \n",
"4672 175 1704463020 46 48 37 18 41 0 \n",
"4682 175 1704463210 46 48 37 18 41 0 \n",
"4691 175 1704463400 46 48 37 18 41 0 \n",
"4702 175 1704463590 46 48 37 18 41 0 \n",
"4711 175 1704463781 46 48 37 18 41 0 \n",
"4721 175 1704463970 46 48 37 18 41 0 \n",
"4731 175 1704464160 46 48 37 18 41 0 \n",
"4741 175 1704464350 46 48 37 18 41 0 \n",
"4750 175 1704464540 46 48 37 18 41 0 \n",
"4760 175 1704464730 46 48 37 18 41 0 \n",
"4770 175 1704464920 46 48 37 18 41 0 \n",
"4781 175 1704465110 46 48 37 18 41 0 \n",
"4790 175 1704465300 46 48 37 18 41 0 \n",
"4798 175 1704465490 46 48 37 18 41 0 \n",
"4809 175 1704465680 46 48 37 18 41 0 \n",
"4817 175 1704465870 46 48 37 18 41 0 \n",
"4826 175 1704466060 46 48 37 18 41 0 \n",
"4838 175 1704466250 46 48 37 18 41 0 \n",
"4847 175 1704466439 46 48 37 18 41 0 \n",
"4859 175 1704466630 46 48 37 18 41 0 \n",
"\n",
" ddur_7 ddur_8 cycle offset diff \n",
"17 0 0 160 57 161 \n",
"26 0 0 160 57 159 \n",
"37 0 0 160 57 160 \n",
"46 0 0 160 57 160 \n",
"55 0 0 160 57 160 \n",
"69 0 0 160 57 160 \n",
"78 0 0 160 57 160 \n",
"88 0 0 160 57 160 \n",
"98 0 0 160 57 160 \n",
"107 0 0 160 57 159 \n",
"117 0 0 160 57 161 \n",
"127 0 0 160 57 160 \n",
"137 0 0 160 57 160 \n",
"152 0 0 160 57 161 \n",
"162 0 0 160 57 159 \n",
"171 0 0 160 57 160 \n",
"181 0 0 160 57 160 \n",
"191 0 0 160 57 160 \n",
"200 0 0 160 57 159 \n",
"211 0 0 160 57 161 \n",
"223 0 0 160 57 160 \n",
"232 0 0 160 57 160 \n",
"242 0 0 160 57 161 \n",
"252 0 0 160 57 159 \n",
"261 0 0 160 57 161 \n",
"270 0 0 160 57 159 \n",
"284 0 0 160 57 160 \n",
"293 0 0 160 57 160 \n",
"302 0 0 160 57 160 \n",
"315 0 0 160 57 160 \n",
"325 0 0 160 57 160 \n",
"334 0 0 160 57 159 \n",
"345 0 0 160 57 161 \n",
"355 0 0 160 57 160 \n",
"367 0 0 160 57 160 \n",
"377 0 0 160 57 160 \n",
"386 0 0 160 57 160 \n",
"395 0 0 160 57 92 \n",
"404 0 0 160 57 158 \n",
"415 0 0 160 57 159 \n",
"424 0 0 160 57 161 \n",
"433 0 0 160 57 160 \n",
"444 0 0 160 57 160 \n",
"453 0 0 160 57 160 \n",
"465 0 0 160 57 160 \n",
"477 0 0 160 57 160 \n",
"486 0 0 160 57 160 \n",
"495 0 0 160 57 160 \n",
"506 0 0 160 57 160 \n",
"515 0 0 160 57 160 \n",
"524 0 0 160 57 160 \n",
"539 0 0 160 57 160 \n",
"549 0 0 160 57 160 \n",
"558 0 0 160 57 160 \n",
"569 0 0 160 57 160 \n",
"578 0 0 160 57 160 \n",
"587 0 0 160 57 160 \n",
"598 0 0 160 57 160 \n",
"610 0 0 160 57 160 \n",
"619 0 0 160 57 160 \n",
"631 0 0 160 57 160 \n",
"640 0 0 160 57 160 \n",
"649 0 0 160 57 160 \n",
"660 0 0 160 57 161 \n",
"668 0 0 160 57 159 \n",
"681 0 0 160 57 161 \n",
"693 0 0 160 57 159 \n",
"702 0 0 160 57 160 \n",
"712 0 0 160 57 160 \n",
"723 0 0 160 57 160 \n",
"732 0 0 160 57 160 \n",
"741 0 0 160 57 160 \n",
"755 0 0 160 57 160 \n",
"764 0 0 160 57 160 \n",
"773 0 0 160 57 160 \n",
"784 0 0 160 57 161 \n",
"793 0 0 160 57 159 \n",
"802 0 0 160 57 160 \n",
"813 0 0 160 57 160 \n",
"825 0 0 160 57 160 \n",
"834 0 0 160 57 160 \n",
"846 0 0 160 57 160 \n",
"856 0 0 160 57 160 \n",
"865 0 0 160 57 160 \n",
"876 0 0 160 57 160 \n",
"886 0 0 160 57 160 \n",
"898 0 0 160 57 160 \n",
"909 0 0 160 57 160 \n",
"918 0 0 160 57 160 \n",
"927 0 0 160 57 160 \n",
"938 0 0 160 57 160 \n",
"947 0 0 160 57 160 \n",
"956 0 0 160 57 160 \n",
"970 0 0 160 57 160 \n",
"979 0 0 160 57 160 \n",
"988 0 0 160 57 160 \n",
"999 0 0 160 57 160 \n",
"1009 0 0 160 57 160 \n",
"1018 0 0 160 57 160 \n",
"1030 0 0 160 57 160 \n",
"1042 0 0 160 57 160 \n",
"1052 0 0 160 57 160 \n",
"1063 0 0 160 57 160 \n",
"1072 0 0 160 57 160 \n",
"1081 0 0 160 57 160 \n",
"1093 0 0 160 57 161 \n",
"1102 0 0 160 57 159 \n",
"1113 0 0 160 57 160 \n",
"1124 0 0 160 57 160 \n",
"1134 0 0 160 57 159 \n",
"1142 0 0 160 57 161 \n",
"1154 0 0 160 57 160 \n",
"1163 0 0 160 57 160 \n",
"1173 0 0 160 57 160 \n",
"1186 0 0 160 57 160 \n",
"1195 0 0 160 57 160 \n",
"1206 0 0 160 57 160 \n",
"1217 0 0 160 57 160 \n",
"1226 0 0 160 57 160 \n",
"1235 0 0 160 57 160 \n",
"1247 0 0 160 57 160 \n",
"1258 0 0 160 57 160 \n",
"1267 0 0 160 57 159 \n",
"1279 0 0 160 57 161 \n",
"1288 0 0 160 57 160 \n",
"1291 0 0 160 57 59 \n",
"1305 0 0 160 57 161 \n",
"1314 0 0 160 57 160 \n",
"1325 0 0 160 57 160 \n",
"1336 0 0 160 57 160 \n",
"1345 0 0 160 57 160 \n",
"1354 0 0 160 57 160 \n",
"1365 0 0 160 57 160 \n",
"1376 0 0 160 57 160 \n",
"1386 0 0 160 57 161 \n",
"1397 0 0 160 57 159 \n",
"1406 0 0 160 57 160 \n",
"1416 0 0 160 57 161 \n",
"1428 0 0 160 57 159 \n",
"1438 0 0 160 57 160 \n",
"1448 0 0 160 57 160 \n",
"1460 0 0 160 57 160 \n",
"1470 0 0 160 57 160 \n",
"1479 0 0 160 57 160 \n",
"1489 0 0 160 57 160 \n",
"1497 0 0 160 57 160 \n",
"1506 0 0 160 57 160 \n",
"1517 0 0 160 57 160 \n",
"1528 0 0 160 57 160 \n",
"1686 0 0 160 57 2881 \n",
"1695 0 0 170 40 169 \n",
"1705 0 0 170 40 169 \n",
"1715 0 0 170 40 171 \n",
"1725 0 0 170 40 171 \n",
"1735 0 0 170 40 169 \n",
"1745 0 0 170 40 170 \n",
"1754 0 0 170 40 170 \n",
"1765 0 0 170 40 170 \n",
"1774 0 0 170 40 170 \n",
"1783 0 0 170 40 170 \n",
"1792 0 0 170 40 170 \n",
"1804 0 0 170 40 170 \n",
"1813 0 0 170 40 170 \n",
"1822 0 0 170 40 170 \n",
"1833 0 0 170 40 170 \n",
"1843 0 0 170 40 171 \n",
"1853 0 0 170 40 169 \n",
"1863 0 0 170 40 170 \n",
"1872 0 0 170 40 170 \n",
"1881 0 0 170 40 170 \n",
"1891 0 0 170 40 170 \n",
"1902 0 0 170 40 170 \n",
"1911 0 0 170 40 170 \n",
"1920 0 0 170 40 171 \n",
"1930 0 0 170 40 169 \n",
"1940 0 0 170 40 170 \n",
"1949 0 0 170 40 170 \n",
"1959 0 0 170 40 169 \n",
"1969 0 0 170 40 171 \n",
"1978 0 0 170 40 170 \n",
"1989 0 0 170 40 170 \n",
"1998 0 0 170 40 170 \n",
"2008 0 0 170 40 170 \n",
"2018 0 0 170 40 170 \n",
"2027 0 0 180 28 180 \n",
"2038 0 0 180 28 180 \n",
"2047 0 0 180 28 180 \n",
"2057 0 0 180 28 180 \n",
"2066 0 0 180 28 180 \n",
"2075 0 0 180 28 180 \n",
"2086 0 0 180 28 180 \n",
"2095 0 0 180 28 180 \n",
"2104 0 0 180 28 180 \n",
"2114 0 0 180 28 180 \n",
"2126 0 0 180 28 181 \n",
"2136 0 0 180 28 179 \n",
"2145 0 0 180 28 180 \n",
"2155 0 0 180 28 180 \n",
"2165 0 0 180 28 180 \n",
"2174 0 0 180 28 180 \n",
"2185 0 0 180 28 180 \n",
"2195 0 0 180 28 180 \n",
"2204 0 0 180 28 180 \n",
"2214 0 0 180 28 180 \n",
"2224 0 0 180 28 181 \n",
"2234 0 0 180 28 179 \n",
"2243 0 0 180 28 180 \n",
"2252 0 0 180 28 180 \n",
"2262 0 0 180 28 180 \n",
"2271 0 0 180 28 180 \n",
"2281 0 0 180 28 180 \n",
"2293 0 0 180 28 180 \n",
"2302 0 0 180 28 179 \n",
"2311 0 0 180 28 181 \n",
"2320 0 0 180 28 180 \n",
"2331 0 0 180 28 180 \n",
"2341 0 0 180 28 180 \n",
"2350 0 0 180 28 180 \n",
"2360 0 0 180 28 180 \n",
"2370 0 0 180 28 180 \n",
"2381 0 0 180 28 180 \n",
"2390 0 0 180 28 180 \n",
"2400 0 0 180 28 179 \n",
"2409 0 0 180 28 181 \n",
"2418 0 0 180 28 181 \n",
"2429 0 0 180 28 179 \n",
"2438 0 0 180 28 180 \n",
"2448 0 0 180 28 180 \n",
"2458 0 0 180 28 180 \n",
"2468 0 0 180 28 180 \n",
"2478 0 0 180 28 180 \n",
"2487 0 0 180 28 180 \n",
"2497 0 0 180 28 180 \n",
"2507 0 0 180 28 180 \n",
"2510 0 0 180 28 53 \n",
"2519 0 0 180 28 177 \n",
"2529 0 0 180 28 179 \n",
"2538 0 0 180 28 181 \n",
"2547 0 0 180 28 180 \n",
"2558 0 0 180 28 180 \n",
"2567 0 0 180 28 181 \n",
"2577 0 0 180 28 179 \n",
"2587 0 0 180 28 180 \n",
"2596 0 0 180 28 181 \n",
"2606 0 0 180 28 179 \n",
"2615 0 0 180 28 180 \n",
"2626 0 0 180 28 180 \n",
"2635 0 0 180 28 180 \n",
"2644 0 0 180 28 180 \n",
"2655 0 0 180 28 180 \n",
"2665 0 0 180 28 180 \n",
"2674 0 0 180 28 179 \n",
"2683 0 0 180 28 181 \n",
"2693 0 0 180 28 180 \n",
"2703 0 0 180 28 180 \n",
"2712 0 0 180 28 179 \n",
"2722 0 0 180 28 181 \n",
"2732 0 0 180 28 180 \n",
"2742 0 0 180 28 180 \n",
"2752 0 0 180 28 180 \n",
"2762 0 0 180 28 180 \n",
"2772 0 0 180 28 180 \n",
"2782 0 0 180 28 180 \n",
"2790 0 0 180 28 180 \n",
"2802 0 0 180 28 181 \n",
"2810 0 0 180 28 179 \n",
"2822 0 0 180 28 180 \n",
"2831 0 0 180 28 180 \n",
"2841 0 0 180 28 180 \n",
"2849 0 0 180 28 179 \n",
"2858 0 0 180 28 181 \n",
"2869 0 0 180 28 180 \n",
"2879 0 0 180 28 181 \n",
"2889 0 0 180 28 179 \n",
"2898 0 0 180 28 180 \n",
"2908 0 0 180 28 180 \n",
"2918 0 0 180 28 180 \n",
"2928 0 0 180 28 180 \n",
"2938 0 0 180 28 180 \n",
"2947 0 0 180 28 180 \n",
"2958 0 0 180 28 180 \n",
"2971 0 0 180 28 180 \n",
"2980 0 0 180 28 180 \n",
"2989 0 0 180 28 180 \n",
"2997 0 0 180 28 180 \n",
"3008 0 0 180 28 180 \n",
"3018 0 0 180 28 180 \n",
"3027 0 0 180 28 181 \n",
"3036 0 0 180 28 179 \n",
"3045 0 0 180 28 180 \n",
"3055 0 0 180 28 180 \n",
"3066 0 0 180 28 180 \n",
"3077 0 0 180 28 180 \n",
"3086 0 0 180 28 180 \n",
"3095 0 0 180 28 180 \n",
"3105 0 0 180 28 180 \n",
"3113 0 0 180 28 180 \n",
"3122 0 0 180 28 180 \n",
"3132 0 0 180 28 180 \n",
"3140 0 0 180 28 180 \n",
"3149 0 0 180 28 180 \n",
"3157 0 0 180 28 180 \n",
"3166 0 0 180 28 180 \n",
"3174 0 0 180 28 180 \n",
"3182 0 0 180 28 180 \n",
"3191 0 0 180 28 180 \n",
"3201 0 0 180 28 179 \n",
"3209 0 0 180 28 181 \n",
"3218 0 0 180 28 180 \n",
"3227 0 0 180 28 180 \n",
"3236 0 0 180 28 180 \n",
"3244 0 0 180 28 180 \n",
"3253 0 0 180 28 180 \n",
"3265 0 0 180 28 180 \n",
"3273 0 0 180 28 179 \n",
"3284 0 0 180 28 181 \n",
"3294 0 0 180 28 180 \n",
"3302 0 0 180 28 179 \n",
"3312 0 0 180 28 181 \n",
"3321 0 0 180 28 180 \n",
"3331 0 0 180 28 180 \n",
"3341 0 0 180 28 180 \n",
"3351 0 0 180 28 180 \n",
"3361 0 0 180 28 180 \n",
"3370 0 0 180 28 180 \n",
"3380 0 0 180 28 180 \n",
"3390 0 0 180 28 180 \n",
"3400 0 0 180 28 181 \n",
"3409 0 0 180 28 179 \n",
"3420 0 0 180 28 180 \n",
"3431 0 0 180 28 180 \n",
"3439 0 0 180 28 179 \n",
"3449 0 0 180 28 181 \n",
"3458 0 0 180 28 179 \n",
"3469 0 0 180 28 181 \n",
"3478 0 0 180 28 180 \n",
"3488 0 0 180 28 180 \n",
"3498 0 0 180 28 180 \n",
"3506 0 0 180 28 179 \n",
"3516 0 0 180 28 181 \n",
"3526 0 0 180 28 179 \n",
"3536 0 0 180 28 181 \n",
"3545 0 0 180 28 180 \n",
"3557 0 0 180 28 180 \n",
"3566 0 0 180 28 180 \n",
"3575 0 0 180 28 180 \n",
"3584 0 0 180 28 180 \n",
"3594 0 0 180 28 180 \n",
"3603 0 0 180 28 179 \n",
"3611 0 0 180 28 181 \n",
"3623 0 0 180 28 180 \n",
"3631 0 0 180 28 180 \n",
"3639 0 0 180 28 180 \n",
"3648 0 0 180 28 180 \n",
"3658 0 0 180 28 180 \n",
"3669 0 0 180 28 180 \n",
"3678 0 0 180 28 180 \n",
"3690 0 0 180 28 180 \n",
"3698 0 0 180 28 180 \n",
"3706 0 0 180 28 100 \n",
"3716 0 0 180 28 181 \n",
"3724 0 0 180 28 179 \n",
"3734 0 0 180 28 180 \n",
"3746 0 0 180 28 181 \n",
"3755 0 0 180 28 179 \n",
"3763 0 0 180 28 180 \n",
"3774 0 0 180 28 180 \n",
"3783 0 0 180 28 180 \n",
"3795 0 0 180 28 180 \n",
"3803 0 0 180 28 179 \n",
"3813 0 0 180 28 181 \n",
"3823 0 0 180 28 180 \n",
"3832 0 0 180 28 180 \n",
"3843 0 0 180 28 180 \n",
"3852 0 0 180 28 179 \n",
"3862 0 0 190 18 191 \n",
"3873 0 0 190 18 191 \n",
"3882 0 0 190 18 189 \n",
"3893 0 0 190 18 191 \n",
"3902 0 0 190 18 189 \n",
"3912 0 0 190 18 190 \n",
"3921 0 0 190 18 190 \n",
"3931 0 0 190 18 190 \n",
"3941 0 0 190 18 190 \n",
"3951 0 0 190 18 190 \n",
"3962 0 0 190 18 190 \n",
"3970 0 0 190 18 190 \n",
"3980 0 0 190 18 190 \n",
"3990 0 0 190 18 190 \n",
"4000 0 0 190 18 190 \n",
"4010 0 0 190 18 191 \n",
"4020 0 0 190 18 189 \n",
"4029 0 0 190 18 190 \n",
"4039 0 0 190 18 190 \n",
"4049 0 0 190 18 190 \n",
"4057 0 0 190 18 190 \n",
"4067 0 0 190 18 190 \n",
"4077 0 0 190 18 190 \n",
"4086 0 0 190 18 190 \n",
"4097 0 0 190 18 190 \n",
"4107 0 0 190 18 190 \n",
"4116 0 0 190 18 190 \n",
"4125 0 0 190 18 190 \n",
"4135 0 0 190 18 190 \n",
"4144 0 0 190 18 190 \n",
"4154 0 0 190 18 190 \n",
"4164 0 0 190 18 190 \n",
"4174 0 0 190 18 190 \n",
"4184 0 0 190 18 190 \n",
"4193 0 0 190 18 190 \n",
"4202 0 0 190 18 189 \n",
"4212 0 0 190 18 191 \n",
"4220 0 0 190 18 190 \n",
"4231 0 0 190 18 190 \n",
"4240 0 0 190 18 190 \n",
"4250 0 0 190 18 189 \n",
"4261 0 0 190 18 191 \n",
"4269 0 0 190 18 190 \n",
"4279 0 0 190 18 189 \n",
"4288 0 0 190 18 191 \n",
"4297 0 0 190 18 190 \n",
"4308 0 0 190 18 189 \n",
"4317 0 0 190 18 191 \n",
"4327 0 0 190 18 190 \n",
"4336 0 0 190 18 190 \n",
"4347 0 0 190 18 190 \n",
"4357 0 0 190 18 190 \n",
"4368 0 0 190 18 190 \n",
"4377 0 0 190 18 190 \n",
"4387 0 0 190 18 190 \n",
"4396 0 0 190 18 190 \n",
"4405 0 0 190 18 190 \n",
"4417 0 0 190 18 190 \n",
"4427 0 0 190 18 190 \n",
"4435 0 0 190 18 190 \n",
"4447 0 0 190 18 190 \n",
"4456 0 0 190 18 190 \n",
"4465 0 0 190 18 190 \n",
"4476 0 0 190 18 190 \n",
"4484 0 0 190 18 190 \n",
"4493 0 0 190 18 190 \n",
"4504 0 0 190 18 191 \n",
"4513 0 0 190 18 189 \n",
"4524 0 0 190 18 190 \n",
"4535 0 0 190 18 191 \n",
"4544 0 0 190 18 189 \n",
"4555 0 0 190 18 190 \n",
"4563 0 0 190 18 190 \n",
"4573 0 0 190 18 190 \n",
"4584 0 0 190 18 190 \n",
"4593 0 0 190 18 190 \n",
"4603 0 0 190 18 190 \n",
"4612 0 0 190 18 190 \n",
"4624 0 0 190 18 190 \n",
"4632 0 0 190 18 190 \n",
"4643 0 0 190 18 191 \n",
"4652 0 0 190 18 189 \n",
"4661 0 0 190 18 190 \n",
"4672 0 0 190 18 190 \n",
"4682 0 0 190 18 190 \n",
"4691 0 0 190 18 190 \n",
"4702 0 0 190 18 190 \n",
"4711 0 0 190 18 191 \n",
"4721 0 0 190 18 189 \n",
"4731 0 0 190 18 190 \n",
"4741 0 0 190 18 190 \n",
"4750 0 0 190 18 190 \n",
"4760 0 0 190 18 190 \n",
"4770 0 0 190 18 190 \n",
"4781 0 0 190 18 190 \n",
"4790 0 0 190 18 190 \n",
"4798 0 0 190 18 190 \n",
"4809 0 0 190 18 190 \n",
"4817 0 0 190 18 190 \n",
"4826 0 0 190 18 190 \n",
"4838 0 0 190 18 190 \n",
"4847 0 0 190 18 189 \n",
"4859 0 0 190 18 191 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"hist = history.copy()[history.inter_no==175]\n",
"hist['diff'] = hist['end_unix'].diff()\n",
"hist = hist[1:]\n",
"hist\n",
"hist['diff'] = hist['diff'].astype(int)\n",
"with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n",
" display(hist)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3. 결측, 이상치 처리"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>start_unix</th>\n",
" <th>dura_A1</th>\n",
" <th>dura_A2</th>\n",
" <th>dura_A3</th>\n",
" <th>dura_A4</th>\n",
" <th>dura_A5</th>\n",
" <th>dura_A6</th>\n",
" <th>dura_A7</th>\n",
" <th>dura_A8</th>\n",
" <th>dura_B1</th>\n",
" <th>dura_B2</th>\n",
" <th>dura_B3</th>\n",
" <th>dura_B4</th>\n",
" <th>dura_B5</th>\n",
" <th>dura_B6</th>\n",
" <th>dura_B7</th>\n",
" <th>dura_B8</th>\n",
" <th>cycle</th>\n",
" <th>pstart_unix</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>1704380400</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>55</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>59</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>1704380400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>1704405600</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>55</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>59</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>1704405600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>1704412800</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>55</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>59</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>1704412800</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>1704447000</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>55</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>59</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>1704447000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>176</td>\n",
" <td>1704380400</td>\n",
" <td>37</td>\n",
" <td>73</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>73</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>1704380400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>176</td>\n",
" <td>1704405600</td>\n",
" <td>37</td>\n",
" <td>93</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>93</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>1704405600</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>176</td>\n",
" <td>1704412800</td>\n",
" <td>37</td>\n",
" <td>103</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>103</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>1704412800</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>176</td>\n",
" <td>1704447000</td>\n",
" <td>37</td>\n",
" <td>113</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>113</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>1704447000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>177</td>\n",
" <td>1704380400</td>\n",
" <td>36</td>\n",
" <td>20</td>\n",
" <td>68</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>36</td>\n",
" <td>20</td>\n",
" <td>68</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>1704380400</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>177</td>\n",
" <td>1704405600</td>\n",
" <td>40</td>\n",
" <td>25</td>\n",
" <td>71</td>\n",
" <td>34</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>40</td>\n",
" <td>25</td>\n",
" <td>71</td>\n",
" <td>34</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>1704405600</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no start_unix dura_A1 dura_A2 dura_A3 dura_A4 dura_A5 dura_A6 \\\n",
"0 175 1704380400 37 39 55 29 0 0 \n",
"1 175 1704405600 40 42 55 33 0 0 \n",
"2 175 1704412800 43 45 55 37 0 0 \n",
"3 175 1704447000 46 48 55 41 0 0 \n",
"4 176 1704380400 37 73 40 0 0 0 \n",
"5 176 1704405600 37 93 40 0 0 0 \n",
"6 176 1704412800 37 103 40 0 0 0 \n",
"7 176 1704447000 37 113 40 0 0 0 \n",
"8 177 1704380400 36 20 68 26 0 0 \n",
"9 177 1704405600 40 25 71 34 0 0 \n",
"\n",
" dura_A7 dura_A8 dura_B1 dura_B2 dura_B3 dura_B4 dura_B5 dura_B6 \\\n",
"0 0 0 37 39 25 59 0 0 \n",
"1 0 0 40 42 29 59 0 0 \n",
"2 0 0 43 45 33 59 0 0 \n",
"3 0 0 46 48 37 59 0 0 \n",
"4 0 0 37 73 40 0 0 0 \n",
"5 0 0 37 93 40 0 0 0 \n",
"6 0 0 37 103 40 0 0 0 \n",
"7 0 0 37 113 40 0 0 0 \n",
"8 0 0 36 20 68 26 0 0 \n",
"9 0 0 40 25 71 34 0 0 \n",
"\n",
" dura_B7 dura_B8 cycle pstart_unix \n",
"0 0 0 160 1704380400 \n",
"1 0 0 170 1704405600 \n",
"2 0 0 180 1704412800 \n",
"3 0 0 190 1704447000 \n",
"4 0 0 150 1704380400 \n",
"5 0 0 170 1704405600 \n",
"6 0 0 180 1704412800 \n",
"7 0 0 190 1704447000 \n",
"8 0 0 150 1704380400 \n",
"9 0 0 170 1704405600 "
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"planned = plan.copy()\n",
"planned['start_unix'] = planned['start_hour'] * 3600 +planned['start_minute'] * 60 + midnight\n",
"start_unixes = planned.start_unix.unique()\n",
"planned['pstart_unix'] = planned['start_unix'].apply(lambda x:start_unixes[sum(start_unixes <= x) - 1]) # the unix time when the program started\n",
"planned = planned[['inter_no', 'start_unix'] + [f'dura_{alph}{j}' for alph in ['A', 'B'] for j in range(1,9)] + ['cycle', 'pstart_unix']]\n",
"planned.head(10)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([177, 176, 202, 178, 211, 201, 206, 210, 175], dtype=int64)"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"make_histid(100).inter_no.unique()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>start_hour</th>\n",
" <th>start_minute</th>\n",
" <th>ddur_1</th>\n",
" <th>ddur_2</th>\n",
" <th>ddur_3</th>\n",
" <th>ddur_4</th>\n",
" <th>ddur_5</th>\n",
" <th>ddur_6</th>\n",
" <th>ddur_7</th>\n",
" <th>ddur_8</th>\n",
" <th>cycle</th>\n",
" <th>offset</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>175</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>39</td>\n",
" <td>25</td>\n",
" <td>30</td>\n",
" <td>29</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>160</td>\n",
" <td>57</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>175</td>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>40</td>\n",
" <td>42</td>\n",
" <td>29</td>\n",
" <td>26</td>\n",
" <td>33</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>40</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>175</td>\n",
" <td>9</td>\n",
" <td>0</td>\n",
" <td>43</td>\n",
" <td>45</td>\n",
" <td>33</td>\n",
" <td>22</td>\n",
" <td>37</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>28</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>175</td>\n",
" <td>18</td>\n",
" <td>30</td>\n",
" <td>46</td>\n",
" <td>48</td>\n",
" <td>37</td>\n",
" <td>18</td>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>18</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>176</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>73</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>131</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>176</td>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>93</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>153</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>176</td>\n",
" <td>9</td>\n",
" <td>0</td>\n",
" <td>37</td>\n",
" <td>103</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>180</td>\n",
" <td>169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>176</td>\n",
" <td>18</td>\n",
" <td>30</td>\n",
" <td>37</td>\n",
" <td>113</td>\n",
" <td>40</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>190</td>\n",
" <td>185</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>177</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>36</td>\n",
" <td>20</td>\n",
" <td>68</td>\n",
" <td>26</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>35</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>177</td>\n",
" <td>7</td>\n",
" <td>0</td>\n",
" <td>40</td>\n",
" <td>25</td>\n",
" <td>71</td>\n",
" <td>34</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>170</td>\n",
" <td>33</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no start_hour start_minute ddur_1 ddur_2 ddur_3 ddur_4 ddur_5 \\\n",
"0 175 0 0 37 39 25 30 29 \n",
"1 175 7 0 40 42 29 26 33 \n",
"2 175 9 0 43 45 33 22 37 \n",
"3 175 18 30 46 48 37 18 41 \n",
"4 176 0 0 37 73 40 0 0 \n",
"5 176 7 0 37 93 40 0 0 \n",
"6 176 9 0 37 103 40 0 0 \n",
"7 176 18 30 37 113 40 0 0 \n",
"8 177 0 0 36 20 68 26 0 \n",
"9 177 7 0 40 25 71 34 0 \n",
"\n",
" ddur_6 ddur_7 ddur_8 cycle offset \n",
"0 0 0 0 160 57 \n",
"1 0 0 0 170 40 \n",
"2 0 0 0 180 28 \n",
"3 0 0 0 190 18 \n",
"4 0 0 0 150 131 \n",
"5 0 0 0 170 153 \n",
"6 0 0 0 180 169 \n",
"7 0 0 0 190 185 \n",
"8 0 0 0 150 35 \n",
"9 0 0 0 170 33 "
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pland = plan.copy() # A, B가 통합된 plan (plan detailed)\n",
"cums_A = np.array(pland[[f'dura_A{k}' for k in range(1,9)]].cumsum(axis=1))\n",
"cums_B = np.array(pland[[f'dura_B{k}' for k in range(1,9)]].cumsum(axis=1))\n",
"detailed_cums = []\n",
"i = 0\n",
"for row_A, row_B in zip(cums_A, cums_B):\n",
" combined_row = np.unique(np.concatenate((row_A, row_B)))\n",
" ddur = np.concatenate(([combined_row[0]], np.diff(combined_row)))\n",
" ddur = np.pad(ddur, (0, 8 - len(ddur)), constant_values=(0))\n",
" detailed_cums.append(ddur)\n",
" for j in range(8):\n",
" pland.at[i, f'ddur_{j+1}'] = ddur[j]\n",
" i+=1\n",
"pland = pland[['inter_no', 'start_hour', 'start_minute'] + [f'ddur_{i}' for i in range(1,9)] + ['cycle', 'offset']] # plan detailed\n",
"pland[[f'ddur_{i}' for i in range(1,9)]] = pland[[f'ddur_{i}' for i in range(1,9)]].astype(int)\n",
"pland[:10]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"histid = make_histid(25)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>inter_no</th>\n",
" <th>phas_A</th>\n",
" <th>phas_B</th>\n",
" <th>duration</th>\n",
" <th>inc_edge_A</th>\n",
" <th>inc_edge_B</th>\n",
" <th>out_edge_A</th>\n",
" <th>out_edge_B</th>\n",
" <th>diff</th>\n",
" </tr>\n",
" <tr>\n",
" <th>start_unix</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1704384400</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>37</td>\n",
" <td>-571542797_02</td>\n",
" <td>-571500487_01</td>\n",
" <td>571500487_01</td>\n",
" <td>571542797_02</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384400</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>39</td>\n",
" <td>-571500487_01</td>\n",
" <td>-571542797_02</td>\n",
" <td>571545870_01</td>\n",
" <td>571510153_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384400</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>25</td>\n",
" <td>571545870_02</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571542797_02</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384400</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>4</td>\n",
" <td>30</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384400</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571500487_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384561</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>37</td>\n",
" <td>-571542797_02</td>\n",
" <td>-571500487_01</td>\n",
" <td>571500487_01</td>\n",
" <td>571542797_02</td>\n",
" <td>161</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384561</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>39</td>\n",
" <td>-571500487_01</td>\n",
" <td>-571542797_02</td>\n",
" <td>571545870_01</td>\n",
" <td>571510153_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384561</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>25</td>\n",
" <td>571545870_02</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571542797_02</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384561</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>4</td>\n",
" <td>30</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384561</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571500487_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384720</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>37</td>\n",
" <td>-571542797_02</td>\n",
" <td>-571500487_01</td>\n",
" <td>571500487_01</td>\n",
" <td>571542797_02</td>\n",
" <td>159</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384720</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>39</td>\n",
" <td>-571500487_01</td>\n",
" <td>-571542797_02</td>\n",
" <td>571545870_01</td>\n",
" <td>571510153_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384720</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>25</td>\n",
" <td>571545870_02</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571542797_02</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384720</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>4</td>\n",
" <td>30</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384720</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571500487_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384880</th>\n",
" <td>175</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>37</td>\n",
" <td>-571542797_02</td>\n",
" <td>-571500487_01</td>\n",
" <td>571500487_01</td>\n",
" <td>571542797_02</td>\n",
" <td>160</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384880</th>\n",
" <td>175</td>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>39</td>\n",
" <td>-571500487_01</td>\n",
" <td>-571542797_02</td>\n",
" <td>571545870_01</td>\n",
" <td>571510153_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384880</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>25</td>\n",
" <td>571545870_02</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571542797_02</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384880</th>\n",
" <td>175</td>\n",
" <td>3</td>\n",
" <td>4</td>\n",
" <td>30</td>\n",
" <td>571545870_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1704384880</th>\n",
" <td>175</td>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>571510153_02</td>\n",
" <td>571510153_02</td>\n",
" <td>571500487_01</td>\n",
" <td>571545870_01</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" inter_no phas_A phas_B duration inc_edge_A inc_edge_B \\\n",
"start_unix \n",
"1704384400 175 1 1 37 -571542797_02 -571500487_01 \n",
"1704384400 175 2 2 39 -571500487_01 -571542797_02 \n",
"1704384400 175 3 3 25 571545870_02 571545870_02 \n",
"1704384400 175 3 4 30 571545870_02 571510153_02 \n",
"1704384400 175 4 4 29 571510153_02 571510153_02 \n",
"1704384561 175 1 1 37 -571542797_02 -571500487_01 \n",
"1704384561 175 2 2 39 -571500487_01 -571542797_02 \n",
"1704384561 175 3 3 25 571545870_02 571545870_02 \n",
"1704384561 175 3 4 30 571545870_02 571510153_02 \n",
"1704384561 175 4 4 29 571510153_02 571510153_02 \n",
"1704384720 175 1 1 37 -571542797_02 -571500487_01 \n",
"1704384720 175 2 2 39 -571500487_01 -571542797_02 \n",
"1704384720 175 3 3 25 571545870_02 571545870_02 \n",
"1704384720 175 3 4 30 571545870_02 571510153_02 \n",
"1704384720 175 4 4 29 571510153_02 571510153_02 \n",
"1704384880 175 1 1 37 -571542797_02 -571500487_01 \n",
"1704384880 175 2 2 39 -571500487_01 -571542797_02 \n",
"1704384880 175 3 3 25 571545870_02 571545870_02 \n",
"1704384880 175 3 4 30 571545870_02 571510153_02 \n",
"1704384880 175 4 4 29 571510153_02 571510153_02 \n",
"\n",
" out_edge_A out_edge_B diff \n",
"start_unix \n",
"1704384400 571500487_01 571542797_02 0 \n",
"1704384400 571545870_01 571510153_01 0 \n",
"1704384400 571510153_01 571542797_02 0 \n",
"1704384400 571510153_01 571545870_01 0 \n",
"1704384400 571500487_01 571545870_01 0 \n",
"1704384561 571500487_01 571542797_02 161 \n",
"1704384561 571545870_01 571510153_01 0 \n",
"1704384561 571510153_01 571542797_02 0 \n",
"1704384561 571510153_01 571545870_01 0 \n",
"1704384561 571500487_01 571545870_01 0 \n",
"1704384720 571500487_01 571542797_02 159 \n",
"1704384720 571545870_01 571510153_01 0 \n",
"1704384720 571510153_01 571542797_02 0 \n",
"1704384720 571510153_01 571545870_01 0 \n",
"1704384720 571500487_01 571545870_01 0 \n",
"1704384880 571500487_01 571542797_02 160 \n",
"1704384880 571545870_01 571510153_01 0 \n",
"1704384880 571510153_01 571542797_02 0 \n",
"1704384880 571510153_01 571545870_01 0 \n",
"1704384880 571500487_01 571545870_01 0 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"inter_no = 175\n",
"hist = histid.copy()[histid.inter_no==inter_no]\n",
"hist = hist.reset_index(drop=True)\n",
"hist['diff'] = hist['start_unix'].diff().fillna(0).astype(int)\n",
"hist = hist.set_index('start_unix')\n",
"with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n",
" display(hist[:20])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"ename": "SyntaxError",
"evalue": "unexpected EOF while parsing (1849903921.py, line 15)",
"output_type": "error",
"traceback": [
"\u001b[1;36m Cell \u001b[1;32mIn[27], line 15\u001b[1;36m\u001b[0m\n\u001b[1;33m else:\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m unexpected EOF while parsing\n"
]
}
],
"source": [
"inter_no = 175\n",
"hist = histid.copy()[histid.inter_no==inter_no]\n",
"hist = hist.reset_index(drop=True)\n",
"hist['diff'] = hist['start_unix'].diff().fillna(0).astype(int)\n",
"hist = hist.set_index('start_unix')\n",
"start_unixes = hist.index.unique()\n",
"for n in range(1, len(start_unixes)):\n",
" ind = (timetable['start_seconds'] <= start_unixes[n]).sum() - 1 \n",
" start_hour = timetable.iloc[ind].start_hour\n",
" start_minute = timetable.iloc[ind].start_minute\n",
" prow = pland[(pland.inter_no == inter_no)&(pland.start_hour == start_hour)&(pland.start_minute == start_minute)].iloc[0] # planned row\n",
" cycle = prow.cycle\n",
" if start_unixes[n] - start_unixes[n-1] < 2 * cycle:\n",
" pass\n",
" else:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"hist"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"matching"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"n = 3\n",
"ind = (timetable['start_seconds'] <= start_unixes[n]).sum() - 1 \n",
"start_hour = timetable.iloc[ind].start_hour\n",
"start_minute = timetable.iloc[ind].start_minute\n",
"prow = pland[(pland.inter_no == inter_no)&(pland.start_hour == start_hour)&(pland.start_minute == start_minute)].iloc[0] # planned row\n",
"cycle = prow.cycle\n",
"print(start_unixes[n] - start_unixes[n-1] < 2 * cycle)\n",
"ddurs = [f'ddur_{j}' for j in range(1, 9)]\n",
"print(prow[ddurs])\n",
"ndphase = (prow[ddurs]!=0).sum() # the number of (detailed) phases\n",
"isplit = isplits[(inter_no,start_hour,start_minute)]\n",
"print(isplit)\n",
"inter_nos = [inter_no] * ndphase\n",
"phas_As = [isplit[i][0] for i in isplit.keys()]\n",
"phas_Bs = [isplit[i][1] for i in isplit.keys()]\n",
"durations = prow[ddurs][prow[ddurs]!=0]\n",
"# new_rows = pd.DataFrame()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "rts",
"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.8.10"
}
},
"nbformat": 4,
"nbformat_minor": 2
}