Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Model Car Test Cases "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Imports"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"from scipy.stats import stats\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Load the Data"
]
},
{
"cell_type": "code",
"execution_count": 2,
"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>Unnamed: 0</th>\n",
" <th>chatter__data</th>\n",
" <th>diagnostics__header_frame_id</th>\n",
" <th>diagnostics__header_seq</th>\n",
" <th>diagnostics__header_stamp_nsecs</th>\n",
" <th>diagnostics__header_stamp_secs</th>\n",
" <th>drive_parameters__angle</th>\n",
" <th>drive_parameters__velocity</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>...</th>\n",
" <th>rosout_agg__file</th>\n",
" <th>rosout_agg__function</th>\n",
" <th>rosout_agg__header_frame_id</th>\n",
" <th>rosout_agg__header_seq</th>\n",
" <th>rosout_agg__header_stamp_nsecs</th>\n",
" <th>rosout_agg__header_stamp_secs</th>\n",
" <th>rosout_agg__level</th>\n",
" <th>rosout_agg__line</th>\n",
" <th>rosout_agg__msg</th>\n",
" <th>rosout_agg__name</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2018-01-28 20:06:12.336234496</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2018-01-28 20:06:12.433865216</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2018-01-28 20:06:12.544487680</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2018-01-28 20:06:12.602825728</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1970-01-01 00:10:12.591298000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>...</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 71 columns</p>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 chatter__data diagnostics__header_frame_id \\\n",
"0 2018-01-28 20:06:12.336234496 NaN NaN \n",
"1 2018-01-28 20:06:12.433865216 NaN NaN \n",
"2 2018-01-28 20:06:12.544487680 NaN NaN \n",
"3 2018-01-28 20:06:12.602825728 NaN NaN \n",
"4 1970-01-01 00:10:12.591298000 NaN NaN \n",
"\n",
" diagnostics__header_seq diagnostics__header_stamp_nsecs \\\n",
"0 NaN NaN \n",
"1 NaN NaN \n",
"2 NaN NaN \n",
"3 NaN NaN \n",
"4 NaN NaN \n",
"\n",
" diagnostics__header_stamp_secs drive_parameters__angle \\\n",
"0 NaN NaN \n",
"1 NaN NaN \n",
"2 NaN NaN \n",
"3 NaN NaN \n",
"4 NaN NaN \n",
"\n",
" drive_parameters__velocity drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"0 NaN NaN NaN \n",
"1 NaN NaN NaN \n",
"2 NaN NaN NaN \n",
"3 NaN NaN NaN \n",
"4 NaN NaN NaN \n",
"\n",
" ... rosout_agg__file rosout_agg__function \\\n",
"0 ... NaN NaN \n",
"1 ... NaN NaN \n",
"2 ... NaN NaN \n",
"3 ... NaN NaN \n",
"4 ... NaN NaN \n",
"\n",
" rosout_agg__header_frame_id rosout_agg__header_seq \\\n",
"0 NaN NaN \n",
"1 NaN NaN \n",
"2 NaN NaN \n",
"3 NaN NaN \n",
"4 NaN NaN \n",
"\n",
" rosout_agg__header_stamp_nsecs rosout_agg__header_stamp_secs \\\n",
"0 NaN NaN \n",
"1 NaN NaN \n",
"2 NaN NaN \n",
"3 NaN NaN \n",
"4 NaN NaN \n",
"\n",
" rosout_agg__level rosout_agg__line rosout_agg__msg rosout_agg__name \n",
"0 NaN NaN NaN NaN \n",
"1 NaN NaN NaN NaN \n",
"2 NaN NaN NaN NaN \n",
"3 NaN NaN NaN NaN \n",
"4 NaN NaN NaN NaN \n",
"\n",
"[5 rows x 71 columns]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Load the Data\n",
"base_path = './data/'\n",
"sensor_data = pd.read_csv(base_path + 'On500MSRev100MS.csv')\n",
"\n",
"# Convert time column into datetime data types\n",
"sensor_data.iloc[:, 0] = pd.to_datetime(sensor_data.iloc[:, 0])\n",
"\n",
"# Data Preview\n",
"sensor_data.head()"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array(['Unnamed: 0', 'chatter__data', 'diagnostics__header_frame_id',\n",
" 'diagnostics__header_seq', 'diagnostics__header_stamp_nsecs',\n",
" 'diagnostics__header_stamp_secs', 'drive_parameters__angle',\n",
" 'drive_parameters__velocity', 'drive_pwm__pwm_angle',\n",
" 'drive_pwm__pwm_drive', 'imu__angular_velocity_covariance0',\n",
" 'imu__angular_velocity_covariance1',\n",
" 'imu__angular_velocity_covariance2',\n",
" 'imu__angular_velocity_covariance3',\n",
" 'imu__angular_velocity_covariance4',\n",
" 'imu__angular_velocity_covariance5',\n",
" 'imu__angular_velocity_covariance6',\n",
" 'imu__angular_velocity_covariance7',\n",
" 'imu__angular_velocity_covariance8', 'imu__angular_velocity_x',\n",
" 'imu__angular_velocity_y', 'imu__angular_velocity_z',\n",
" 'imu__header_frame_id', 'imu__header_seq',\n",
" 'imu__header_stamp_nsecs', 'imu__header_stamp_secs',\n",
" 'imu__linear_acceleration_covariance0',\n",
" 'imu__linear_acceleration_covariance1',\n",
" 'imu__linear_acceleration_covariance2',\n",
" 'imu__linear_acceleration_covariance3',\n",
" 'imu__linear_acceleration_covariance4',\n",
" 'imu__linear_acceleration_covariance5',\n",
" 'imu__linear_acceleration_covariance6',\n",
" 'imu__linear_acceleration_covariance7',\n",
" 'imu__linear_acceleration_covariance8',\n",
" 'imu__linear_acceleration_x', 'imu__linear_acceleration_y',\n",
" 'imu__linear_acceleration_z', 'imu__orientation_covariance0',\n",
" 'imu__orientation_covariance1', 'imu__orientation_covariance2',\n",
" 'imu__orientation_covariance3', 'imu__orientation_covariance4',\n",
" 'imu__orientation_covariance5', 'imu__orientation_covariance6',\n",
" 'imu__orientation_covariance7', 'imu__orientation_covariance8',\n",
" 'imu__orientation_w', 'imu__orientation_x', 'imu__orientation_y',\n",
" 'imu__orientation_z', 'rosout__file', 'rosout__function',\n",
" 'rosout__header_frame_id', 'rosout__header_seq',\n",
" 'rosout__header_stamp_nsecs', 'rosout__header_stamp_secs',\n",
" 'rosout__level', 'rosout__line', 'rosout__msg', 'rosout__name',\n",
" 'rosout_agg__file', 'rosout_agg__function',\n",
" 'rosout_agg__header_frame_id', 'rosout_agg__header_seq',\n",
" 'rosout_agg__header_stamp_nsecs', 'rosout_agg__header_stamp_secs',\n",
" 'rosout_agg__level', 'rosout_agg__line', 'rosout_agg__msg',\n",
" 'rosout_agg__name'], dtype=object)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sensor_data.columns.values"
]
},
{
"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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2018-01-28 20:06:12.336234496</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2018-01-28 20:06:12.433865216</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2018-01-28 20:06:12.544487680</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2018-01-28 20:06:12.602825728</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1970-01-01 00:10:12.591298000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive\n",
"0 2018-01-28 20:06:12.336234496 NaN NaN\n",
"1 2018-01-28 20:06:12.433865216 NaN NaN\n",
"2 2018-01-28 20:06:12.544487680 NaN NaN\n",
"3 2018-01-28 20:06:12.602825728 NaN NaN\n",
"4 1970-01-01 00:10:12.591298000 NaN NaN"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# extract the particular data of interest\n",
"pwm_data = sensor_data.loc[:, ['Unnamed: 0', 'drive_pwm__pwm_angle', 'drive_pwm__pwm_drive']]\n",
"imu_linear_accel = sensor_data.loc[:, ['imu__linear_acceleration_x', 'imu__linear_acceleration_y', 'imu__linear_acceleration_z']]\n",
"\n",
"# Forward Fill PWM values\n",
"pwm_data = pwm_data.fillna(method='ffill')\n",
"pwm_data.head()"
]
},
{
"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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>imu__linear_acceleration_x</th>\n",
" <th>imu__linear_acceleration_y</th>\n",
" <th>imu__linear_acceleration_z</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1970-01-01 00:42:00.864973000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.235191</td>\n",
" <td>0.235191</td>\n",
" <td>8.472231</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>1970-01-01 00:42:00.885788999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.078525</td>\n",
" <td>0.117595</td>\n",
" <td>8.472231</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>1970-01-01 00:42:00.907567000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.039071</td>\n",
" <td>0.196120</td>\n",
" <td>8.197969</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>1970-01-01 00:42:00.926911999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.078525</td>\n",
" <td>0.235191</td>\n",
" <td>8.315565</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>1970-01-01 00:42:00.947696000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.117595</td>\n",
" <td>0.157049</td>\n",
" <td>8.511685</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"7 1970-01-01 00:42:00.864973000 NaN NaN \n",
"8 1970-01-01 00:42:00.885788999 NaN NaN \n",
"10 1970-01-01 00:42:00.907567000 NaN NaN \n",
"11 1970-01-01 00:42:00.926911999 NaN NaN \n",
"12 1970-01-01 00:42:00.947696000 NaN NaN \n",
"\n",
" imu__linear_acceleration_x imu__linear_acceleration_y \\\n",
"7 0.235191 0.235191 \n",
"8 0.078525 0.117595 \n",
"10 0.039071 0.196120 \n",
"11 0.078525 0.235191 \n",
"12 0.117595 0.157049 \n",
"\n",
" imu__linear_acceleration_z \n",
"7 8.472231 \n",
"8 8.472231 \n",
"10 8.197969 \n",
"11 8.315565 \n",
"12 8.511685 "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Concat pwm with accel data\n",
"pwm_accel_data = pd.concat([pwm_data, imu_linear_accel], axis=1)\n",
"pwm_accel_data = pwm_accel_data.dropna(how='all', subset=['drive_pwm__pwm_angle', 'drive_pwm__pwm_drive', 'imu__linear_acceleration_x', 'imu__linear_acceleration_y', 'imu__linear_acceleration_z'])\n",
"pwm_accel_data.head()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"imu__linear_acceleration_x 0.125486\n",
"imu__linear_acceleration_y 0.198093\n",
"imu__linear_acceleration_z 8.401788\n",
"dtype: float64"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Calculate gravity for each axis\n",
"first_couple_accel = pwm_accel_data.iloc[0:20, 3:]\n",
"means = first_couple_accel.apply(np.mean, axis=0)\n",
"means"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"8.405060192059393"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# verify this is indeed gravity\n",
"np.sqrt(means[0]**2 + means[1]**2 + means[2]**2)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>imu__linear_acceleration_x</th>\n",
" <th>imu__linear_acceleration_y</th>\n",
" <th>imu__linear_acceleration_z</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1970-01-01 00:42:00.864973000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.109705</td>\n",
" <td>0.037098</td>\n",
" <td>0.070442</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>1970-01-01 00:42:00.885788999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.046962</td>\n",
" <td>-0.080497</td>\n",
" <td>0.070442</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>1970-01-01 00:42:00.907567000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.086415</td>\n",
" <td>-0.001973</td>\n",
" <td>-0.203819</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>1970-01-01 00:42:00.926911999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.046962</td>\n",
" <td>0.037098</td>\n",
" <td>-0.086224</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>1970-01-01 00:42:00.947696000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.007891</td>\n",
" <td>-0.041043</td>\n",
" <td>0.109896</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"7 1970-01-01 00:42:00.864973000 NaN NaN \n",
"8 1970-01-01 00:42:00.885788999 NaN NaN \n",
"10 1970-01-01 00:42:00.907567000 NaN NaN \n",
"11 1970-01-01 00:42:00.926911999 NaN NaN \n",
"12 1970-01-01 00:42:00.947696000 NaN NaN \n",
"\n",
" imu__linear_acceleration_x imu__linear_acceleration_y \\\n",
"7 0.109705 0.037098 \n",
"8 -0.046962 -0.080497 \n",
"10 -0.086415 -0.001973 \n",
"11 -0.046962 0.037098 \n",
"12 -0.007891 -0.041043 \n",
"\n",
" imu__linear_acceleration_z \n",
"7 0.070442 \n",
"8 0.070442 \n",
"10 -0.203819 \n",
"11 -0.086224 \n",
"12 0.109896 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Subract gravity from imu values\n",
"pwm_accel_data.loc[:, 'imu__linear_acceleration_x'] -= means[0]\n",
"pwm_accel_data.loc[:, 'imu__linear_acceleration_y'] -= means[1]\n",
"pwm_accel_data.loc[:, 'imu__linear_acceleration_z'] -= means[2]\n",
"pwm_accel_data.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To calculate velocity from acceleration, we must integrate acceleration over time. Given we have discrete data points, we must take a discrete approach. We will use the [Riemann Sum](https://en.wikipedia.org/wiki/Riemann_sum) method. Luckily, the sample rate for acceleration is very high, so we will have fairly accurate measures of instaneious velocit\n",
"\n",
"#### So how exactly is it going to be done?\n",
"\n",
"Since each row has a timestamp, we can take consecutive rows as a rectangle, where the base of the rectange can be the time difference between consecutive rows, and the height of the rectangle to be the acceleartion at that time. In this case we'll use right-hand riemann sums. For example:\n",
"\n",
"```python\n",
"t1, a1 = pwm_accel_data.iloc[0, [0, 3]]\n",
"t2, a2 = pwm_accel_data.iloc[1, [0, 3]]\n",
"rectange_base = t2.timestamp()-t1.timestamp() # timestamp converts to milliseconds\n",
"approx_instantaneous_velocity = rectange_base * a2 # a2 because right-hand riemann sums\n",
"```\n",
"\n",
"##### **Note**: I don't know what's the units of the accelerometer readings."
]
},
{
"cell_type": "code",
"execution_count": 9,
"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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>imu__linear_acceleration_x</th>\n",
" <th>imu__linear_acceleration_y</th>\n",
" <th>imu__linear_acceleration_z</th>\n",
" <th>instant_velocity_x</th>\n",
" <th>instant_velocity_y</th>\n",
" <th>instant_velocity_z</th>\n",
" <th>speed</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1970-01-01 00:42:00.864973000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>0.109705</td>\n",
" <td>0.037098</td>\n",
" <td>0.070442</td>\n",
" <td>-0.000978</td>\n",
" <td>-0.001676</td>\n",
" <td>0.001466</td>\n",
" <td>0.002432</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>1970-01-01 00:42:00.885788999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.046962</td>\n",
" <td>-0.080497</td>\n",
" <td>0.070442</td>\n",
" <td>-0.001882</td>\n",
" <td>-0.000043</td>\n",
" <td>-0.004439</td>\n",
" <td>0.004821</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>1970-01-01 00:42:00.907567000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.086415</td>\n",
" <td>-0.001973</td>\n",
" <td>-0.203819</td>\n",
" <td>-0.000908</td>\n",
" <td>0.000718</td>\n",
" <td>-0.001668</td>\n",
" <td>0.002030</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>1970-01-01 00:42:00.926911999</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.046962</td>\n",
" <td>0.037098</td>\n",
" <td>-0.086224</td>\n",
" <td>-0.000164</td>\n",
" <td>-0.000853</td>\n",
" <td>0.002284</td>\n",
" <td>0.002444</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>1970-01-01 00:42:00.947696000</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>-0.007891</td>\n",
" <td>-0.041043</td>\n",
" <td>0.109896</td>\n",
" <td>0.001405</td>\n",
" <td>-0.000817</td>\n",
" <td>0.003749</td>\n",
" <td>0.004086</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"7 1970-01-01 00:42:00.864973000 NaN NaN \n",
"8 1970-01-01 00:42:00.885788999 NaN NaN \n",
"10 1970-01-01 00:42:00.907567000 NaN NaN \n",
"11 1970-01-01 00:42:00.926911999 NaN NaN \n",
"12 1970-01-01 00:42:00.947696000 NaN NaN \n",
"\n",
" imu__linear_acceleration_x imu__linear_acceleration_y \\\n",
"7 0.109705 0.037098 \n",
"8 -0.046962 -0.080497 \n",
"10 -0.086415 -0.001973 \n",
"11 -0.046962 0.037098 \n",
"12 -0.007891 -0.041043 \n",
"\n",
" imu__linear_acceleration_z instant_velocity_x instant_velocity_y \\\n",
"7 0.070442 -0.000978 -0.001676 \n",
"8 0.070442 -0.001882 -0.000043 \n",
"10 -0.203819 -0.000908 0.000718 \n",
"11 -0.086224 -0.000164 -0.000853 \n",
"12 0.109896 0.001405 -0.000817 \n",
"\n",
" instant_velocity_z speed \n",
"7 0.001466 0.002432 \n",
"8 -0.004439 0.004821 \n",
"10 -0.001668 0.002030 \n",
"11 0.002284 0.002444 \n",
"12 0.003749 0.004086 "
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#---------------------------------------\n",
"# Calculate time difference\n",
"#---------------------------------------\n",
"# Extract left hand side of rectangle\n",
"t1_series = pwm_accel_data.iloc[:, 0]\n",
"accel_x1 = pwm_accel_data.iloc[:, 3]\n",
"accel_y1 = pwm_accel_data.iloc[:, 4]\n",
"accel_z1 = pwm_accel_data.iloc[:, 5]\n",
"\n",
"# Shift the series to get left hand side of rectangle (pad left with zero)\n",
"# For example:\n",
"# Time\n",
"# t1 = [0, 2, 3, 4, 5]\n",
"# t2 = [2, 3, 4, 5, 0] # right side done next\n",
"# Acceleration\n",
"# x1 = [0, 9, 8, 7, 6]\n",
"# x2 = [9, 8, 7, 6, 0] # right side done next\n",
"t1_series_padded = np.pad(t1_series, (1,0), 'constant')\n",
"accel_x1_padded = np.pad(accel_x1, (1,0), 'constant')\n",
"accel_y1_padded = np.pad(accel_y1, (1,0), 'constant')\n",
"accel_z1_padded = np.pad(accel_z1, (1,0), 'constant')\n",
"\n",
"# Now the right hand side of rectangle\n",
"t2_series = np.pad(t1_series, (0,1), 'constant')\n",
"accel_x2 = np.pad(accel_x1, (0,1), 'constant')\n",
"accel_y2 = np.pad(accel_y1, (0,1), 'constant')\n",
"accel_z2 = np.pad(accel_z1, (0,1), 'constant')\n",
"\n",
"# Convert datetimes to timestamps (unix which is in seconds) (example in next cell)\n",
"tstamp2_series = (t2_series - np.datetime64('1970-01-01T00:00:00')) / np.timedelta64(1, 's')\n",
"tstamp1_series_padded = (t1_series_padded - np.datetime64('1970-01-01T00:00:00')) / np.timedelta64(1, 's')\n",
"\n",
"# Now substract them to get length of base\n",
"width_series = tstamp2_series - tstamp1_series_padded\n",
"\n",
"# Calculate the approximate velocity\n",
"approx_instant_velocity_x = width_series * accel_x2\n",
"approx_instant_velocity_y = width_series * accel_y2\n",
"approx_instant_velocity_z = width_series * accel_z2\n",
"approx_speed = np.sqrt(approx_instant_velocity_x**2 + \\\n",
" approx_instant_velocity_y**2 + \\\n",
" approx_instant_velocity_z**2)\n",
"\n",
"# Add the velocity columns to pmw dataframe\n",
"pwm_accel_data['instant_velocity_x'] = approx_instant_velocity_x[1:] # exclude the first one\n",
"pwm_accel_data['instant_velocity_y'] = approx_instant_velocity_y[1:] # exclude the first one\n",
"pwm_accel_data['instant_velocity_z'] = approx_instant_velocity_z[1:] # exclude the first one\n",
"pwm_accel_data['speed'] = approx_speed[1:]\n",
"\n",
"pwm_accel_data.head()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1970-01-01T00:42:00.864973000\n",
"2520864.973\n"
]
}
],
"source": [
"# Example of timestamp conversion\n",
"print(t2_series[0])\n",
"print((t2_series[0] - np.datetime64('1970-01-01T00:00:00')) / np.timedelta64(1, 'ms'))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Calculate Correlation\n",
"\n",
"Let's get the correlation between **pwm** and **speed**.\n",
"\n",
"First, lets take a look at the scatter plot get an inutive sense of the data."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x7fa22b025a20>"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fa23388aa58>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(pwm_accel_data.drive_pwm__pwm_drive, pwm_accel_data.speed)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([ nan, 10486., 9503., 9831.])"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sensor_data.drive_pwm__pwm_drive.unique()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It looks like we only have a few different PWM values (even before preprocessing). I don't think we can make an accurate estimate with these values."
]
},
{
"cell_type": "code",
"execution_count": 13,
"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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>imu__linear_acceleration_x</th>\n",
" <th>imu__linear_acceleration_y</th>\n",
" <th>imu__linear_acceleration_z</th>\n",
" <th>instant_velocity_x</th>\n",
" <th>instant_velocity_y</th>\n",
" <th>instant_velocity_z</th>\n",
" <th>speed</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>352</th>\n",
" <td>1970-01-01 00:42:07.575413999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.037098</td>\n",
" <td>0.227492</td>\n",
" <td>0.000632</td>\n",
" <td>-0.000040</td>\n",
" <td>0.003775</td>\n",
" <td>0.003827</td>\n",
" </tr>\n",
" <tr>\n",
" <th>353</th>\n",
" <td>1970-01-01 00:42:07.595447000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>0.031563</td>\n",
" <td>-0.001973</td>\n",
" <td>0.188421</td>\n",
" <td>-0.000165</td>\n",
" <td>-0.000860</td>\n",
" <td>-0.000988</td>\n",
" <td>0.001321</td>\n",
" </tr>\n",
" <tr>\n",
" <th>354</th>\n",
" <td>1970-01-01 00:42:07.616406999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.007891</td>\n",
" <td>-0.041043</td>\n",
" <td>-0.047153</td>\n",
" <td>-0.001733</td>\n",
" <td>0.001535</td>\n",
" <td>-0.002520</td>\n",
" <td>0.003422</td>\n",
" </tr>\n",
" <tr>\n",
" <th>355</th>\n",
" <td>1970-01-01 00:42:07.636457999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.086415</td>\n",
" <td>0.076552</td>\n",
" <td>-0.125678</td>\n",
" <td>-0.000165</td>\n",
" <td>0.000778</td>\n",
" <td>-0.000161</td>\n",
" <td>0.000811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>356</th>\n",
" <td>1970-01-01 00:42:07.657416999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.007891</td>\n",
" <td>0.037098</td>\n",
" <td>-0.007699</td>\n",
" <td>0.010535</td>\n",
" <td>-0.032151</td>\n",
" <td>0.029472</td>\n",
" <td>0.044869</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"352 1970-01-01 00:42:07.575413999 9831.0 10486.0 \n",
"353 1970-01-01 00:42:07.595447000 9831.0 10486.0 \n",
"354 1970-01-01 00:42:07.616406999 9831.0 10486.0 \n",
"355 1970-01-01 00:42:07.636457999 9831.0 10486.0 \n",
"356 1970-01-01 00:42:07.657416999 9831.0 10486.0 \n",
"\n",
" imu__linear_acceleration_x imu__linear_acceleration_y \\\n",
"352 0.070634 0.037098 \n",
"353 0.031563 -0.001973 \n",
"354 -0.007891 -0.041043 \n",
"355 -0.086415 0.076552 \n",
"356 -0.007891 0.037098 \n",
"\n",
" imu__linear_acceleration_z instant_velocity_x instant_velocity_y \\\n",
"352 0.227492 0.000632 -0.000040 \n",
"353 0.188421 -0.000165 -0.000860 \n",
"354 -0.047153 -0.001733 0.001535 \n",
"355 -0.125678 -0.000165 0.000778 \n",
"356 -0.007699 0.010535 -0.032151 \n",
"\n",
" instant_velocity_z speed \n",
"352 0.003775 0.003827 \n",
"353 -0.000988 0.001321 \n",
"354 -0.002520 0.003422 \n",
"355 -0.000161 0.000811 \n",
"356 0.029472 0.044869 "
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pwm_for_correlation = pwm_accel_data.dropna()\n",
"pwm_for_correlation.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lets show the correlation for **imu__linear_acceleration_x**"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"correlation (0.5832753987256681, 1.287182740143699e-18)\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x7fa22afbc780>"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fa23388ad30>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"print('correlation',\n",
" stats.pearsonr(pwm_for_correlation.drive_pwm__pwm_drive,\n",
" pwm_for_correlation.imu__linear_acceleration_x))\n",
"\n",
"plt.scatter(pwm_accel_data.drive_pwm__pwm_drive, pwm_accel_data.imu__linear_acceleration_x.abs())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's check to same for the corresponding velocity"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x7fa22ae8fcc0>"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7fa22af169b0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pwm_accel_data.imu__linear_acceleration_x = pwm_accel_data.imu__linear_acceleration_x.abs()\n",
"grouped_stuff = pwm_accel_data.groupby('drive_pwm__pwm_drive').apply(np.mean)\n",
"grouped_stuff.head()\n",
"plt.scatter(grouped_stuff.drive_pwm__pwm_drive, grouped_stuff.imu__linear_acceleration_x.abs())"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/reynaldo/miniconda3/envs/autocar/lib/python3.6/site-packages/pandas/core/frame.py:3027: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" return super(DataFrame, self).rename(**kwargs)\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>Unnamed: 0</th>\n",
" <th>drive_pwm__pwm_angle</th>\n",
" <th>drive_pwm__pwm_drive</th>\n",
" <th>imu__linear_acceleration_x</th>\n",
" <th>imu__linear_acceleration_y</th>\n",
" <th>imu__linear_acceleration_z</th>\n",
" <th>instant_velocity_x</th>\n",
" <th>instant_velocity_y</th>\n",
" <th>instant_velocity_z</th>\n",
" <th>speed</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>352</th>\n",
" <td>1970-01-01 00:42:07.575413999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.037098</td>\n",
" <td>0.227492</td>\n",
" <td>0.000632</td>\n",
" <td>-0.000040</td>\n",
" <td>0.003775</td>\n",
" <td>0.003827</td>\n",
" </tr>\n",
" <tr>\n",
" <th>353</th>\n",
" <td>1970-01-01 00:42:07.595447000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>0.031563</td>\n",
" <td>-0.001973</td>\n",
" <td>0.188421</td>\n",
" <td>-0.000165</td>\n",
" <td>-0.000860</td>\n",
" <td>-0.000988</td>\n",
" <td>0.001321</td>\n",
" </tr>\n",
" <tr>\n",
" <th>354</th>\n",
" <td>1970-01-01 00:42:07.616406999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.007891</td>\n",
" <td>-0.041043</td>\n",
" <td>-0.047153</td>\n",
" <td>-0.001733</td>\n",
" <td>0.001535</td>\n",
" <td>-0.002520</td>\n",
" <td>0.003422</td>\n",
" </tr>\n",
" <tr>\n",
" <th>355</th>\n",
" <td>1970-01-01 00:42:07.636457999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.086415</td>\n",
" <td>0.076552</td>\n",
" <td>-0.125678</td>\n",
" <td>-0.000165</td>\n",
" <td>0.000778</td>\n",
" <td>-0.000161</td>\n",
" <td>0.000811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>356</th>\n",
" <td>1970-01-01 00:42:07.657416999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.007891</td>\n",
" <td>0.037098</td>\n",
" <td>-0.007699</td>\n",
" <td>0.010535</td>\n",
" <td>-0.032151</td>\n",
" <td>0.029472</td>\n",
" <td>0.044869</td>\n",
" </tr>\n",
" <tr>\n",
" <th>357</th>\n",
" <td>1970-01-01 00:42:07.678405000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>0.501945</td>\n",
" <td>-1.531862</td>\n",
" <td>1.404212</td>\n",
" <td>0.215865</td>\n",
" <td>0.011744</td>\n",
" <td>0.099603</td>\n",
" <td>0.238026</td>\n",
" </tr>\n",
" <tr>\n",
" <th>358</th>\n",
" <td>1970-01-01 00:42:07.698432000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>10.778709</td>\n",
" <td>0.586387</td>\n",
" <td>4.973442</td>\n",
" <td>0.129885</td>\n",
" <td>-0.018152</td>\n",
" <td>-0.040497</td>\n",
" <td>0.137258</td>\n",
" </tr>\n",
" <tr>\n",
" <th>359</th>\n",
" <td>1970-01-01 00:42:07.719416999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>6.189425</td>\n",
" <td>-0.864977</td>\n",
" <td>-1.929828</td>\n",
" <td>-0.006432</td>\n",
" <td>-0.007884</td>\n",
" <td>-0.055068</td>\n",
" <td>0.056000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>360</th>\n",
" <td>1970-01-01 00:42:07.739416999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.321606</td>\n",
" <td>-0.394213</td>\n",
" <td>-2.753379</td>\n",
" <td>0.073918</td>\n",
" <td>0.010658</td>\n",
" <td>0.040996</td>\n",
" <td>0.085195</td>\n",
" </tr>\n",
" <tr>\n",
" <th>361</th>\n",
" <td>1970-01-01 00:42:07.760403000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>3.522269</td>\n",
" <td>0.507863</td>\n",
" <td>1.953501</td>\n",
" <td>-0.019786</td>\n",
" <td>0.009383</td>\n",
" <td>-0.037845</td>\n",
" <td>0.043724</td>\n",
" </tr>\n",
" <tr>\n",
" <th>362</th>\n",
" <td>1970-01-01 00:42:07.780419000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>-0.988491</td>\n",
" <td>0.468792</td>\n",
" <td>-1.890758</td>\n",
" <td>0.052202</td>\n",
" <td>0.005688</td>\n",
" <td>0.005560</td>\n",
" <td>0.052804</td>\n",
" </tr>\n",
" <tr>\n",
" <th>363</th>\n",
" <td>1970-01-01 00:42:07.801277999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.502598</td>\n",
" <td>0.272672</td>\n",
" <td>0.266562</td>\n",
" <td>0.036784</td>\n",
" <td>-0.002396</td>\n",
" <td>0.022634</td>\n",
" <td>0.043256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>364</th>\n",
" <td>1970-01-01 00:42:07.821316000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>1.835714</td>\n",
" <td>-0.119568</td>\n",
" <td>1.129567</td>\n",
" <td>0.039297</td>\n",
" <td>-0.001687</td>\n",
" <td>0.008879</td>\n",
" <td>0.040323</td>\n",
" </tr>\n",
" <tr>\n",
" <th>365</th>\n",
" <td>1970-01-01 00:42:07.842277000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>1.874785</td>\n",
" <td>-0.080497</td>\n",
" <td>0.423612</td>\n",
" <td>0.043863</td>\n",
" <td>-0.003970</td>\n",
" <td>-0.009588</td>\n",
" <td>0.045074</td>\n",
" </tr>\n",
" <tr>\n",
" <th>366</th>\n",
" <td>1970-01-01 00:42:07.862316000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.188883</td>\n",
" <td>-0.198093</td>\n",
" <td>-0.478464</td>\n",
" <td>0.044265</td>\n",
" <td>-0.009916</td>\n",
" <td>-0.002636</td>\n",
" <td>0.045438</td>\n",
" </tr>\n",
" <tr>\n",
" <th>367</th>\n",
" <td>1970-01-01 00:42:07.883291000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.110358</td>\n",
" <td>-0.472737</td>\n",
" <td>-0.125678</td>\n",
" <td>0.034405</td>\n",
" <td>-0.000040</td>\n",
" <td>-0.000944</td>\n",
" <td>0.034418</td>\n",
" </tr>\n",
" <tr>\n",
" <th>368</th>\n",
" <td>1970-01-01 00:42:07.903315999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>1.718118</td>\n",
" <td>-0.001973</td>\n",
" <td>-0.047153</td>\n",
" <td>0.049994</td>\n",
" <td>-0.000860</td>\n",
" <td>0.011345</td>\n",
" <td>0.051273</td>\n",
" </tr>\n",
" <tr>\n",
" <th>369</th>\n",
" <td>1970-01-01 00:42:07.924277999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.385003</td>\n",
" <td>-0.041043</td>\n",
" <td>0.541207</td>\n",
" <td>0.055805</td>\n",
" <td>0.004074</td>\n",
" <td>0.001478</td>\n",
" <td>0.055973</td>\n",
" </tr>\n",
" <tr>\n",
" <th>370</th>\n",
" <td>1970-01-01 00:42:07.945263000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.659265</td>\n",
" <td>0.194147</td>\n",
" <td>0.070442</td>\n",
" <td>0.058954</td>\n",
" <td>-0.005558</td>\n",
" <td>0.010090</td>\n",
" <td>0.060069</td>\n",
" </tr>\n",
" <tr>\n",
" <th>371</th>\n",
" <td>1970-01-01 00:42:07.965357000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.933909</td>\n",
" <td>-0.276617</td>\n",
" <td>0.502136</td>\n",
" <td>0.053958</td>\n",
" <td>-0.001683</td>\n",
" <td>0.011314</td>\n",
" <td>0.055157</td>\n",
" </tr>\n",
" <tr>\n",
" <th>372</th>\n",
" <td>1970-01-01 00:42:07.986261999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.581123</td>\n",
" <td>-0.080497</td>\n",
" <td>0.541207</td>\n",
" <td>0.054906</td>\n",
" <td>0.007043</td>\n",
" <td>0.002988</td>\n",
" <td>0.055437</td>\n",
" </tr>\n",
" <tr>\n",
" <th>375</th>\n",
" <td>1970-01-01 00:42:08.027263999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>3.169483</td>\n",
" <td>0.076552</td>\n",
" <td>0.227492</td>\n",
" <td>0.057236</td>\n",
" <td>-0.000823</td>\n",
" <td>-0.003302</td>\n",
" <td>0.057337</td>\n",
" </tr>\n",
" <tr>\n",
" <th>376</th>\n",
" <td>1970-01-01 00:42:08.047309000</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.855385</td>\n",
" <td>-0.041043</td>\n",
" <td>-0.164748</td>\n",
" <td>0.050789</td>\n",
" <td>-0.001687</td>\n",
" <td>-0.010025</td>\n",
" <td>0.051797</td>\n",
" </tr>\n",
" <tr>\n",
" <th>377</th>\n",
" <td>1970-01-01 00:42:08.068260999</td>\n",
" <td>9831.0</td>\n",
" <td>10486.0</td>\n",
" <td>2.424074</td>\n",
" <td>-0.080497</td>\n",
" <td>-0.478464</td>\n",
" <td>0.049393</td>\n",
" <td>-0.003972</td>\n",
" <td>-0.005662</td>\n",
" <td>0.049875</td>\n",
" </tr>\n",
" <tr>\n",
" <th>381</th>\n",
" <td>1970-01-01 00:42:08.109296000</td>\n",
" <td>9831.0</td>\n",
" <td>9503.0</td>\n",
" <td>2.777243</td>\n",
" <td>0.272672</td>\n",
" <td>0.306016</td>\n",
" <td>0.051710</td>\n",
" <td>-0.001613</td>\n",
" <td>0.016345</td>\n",
" <td>0.054256</td>\n",
" </tr>\n",
" <tr>\n",
" <th>389</th>\n",
" <td>1970-01-01 00:42:08.191333000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>2.267025</td>\n",
" <td>-0.355142</td>\n",
" <td>-0.439393</td>\n",
" <td>-0.018945</td>\n",
" <td>-0.005759</td>\n",
" <td>-0.040177</td>\n",
" <td>0.044791</td>\n",
" </tr>\n",
" <tr>\n",
" <th>390</th>\n",
" <td>1970-01-01 00:42:08.212152000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>-0.909966</td>\n",
" <td>-0.276617</td>\n",
" <td>-1.929828</td>\n",
" <td>-0.067803</td>\n",
" <td>-0.013413</td>\n",
" <td>-0.023752</td>\n",
" <td>0.073084</td>\n",
" </tr>\n",
" <tr>\n",
" <th>391</th>\n",
" <td>1970-01-01 00:42:08.232206000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>-3.381002</td>\n",
" <td>-0.668857</td>\n",
" <td>-1.184419</td>\n",
" <td>0.016322</td>\n",
" <td>-0.006314</td>\n",
" <td>0.021023</td>\n",
" <td>0.027354</td>\n",
" </tr>\n",
" <tr>\n",
" <th>392</th>\n",
" <td>1970-01-01 00:42:08.252207999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.816043</td>\n",
" <td>-0.315688</td>\n",
" <td>1.051042</td>\n",
" <td>-0.000165</td>\n",
" <td>0.008179</td>\n",
" <td>0.002303</td>\n",
" <td>0.008499</td>\n",
" </tr>\n",
" <tr>\n",
" <th>393</th>\n",
" <td>1970-01-01 00:42:08.273165000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>-0.007891</td>\n",
" <td>0.390267</td>\n",
" <td>0.109896</td>\n",
" <td>-0.009585</td>\n",
" <td>0.004670</td>\n",
" <td>0.003773</td>\n",
" <td>0.011310</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>527</th>\n",
" <td>1970-01-01 00:42:10.981529000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>-0.007891</td>\n",
" <td>0.155077</td>\n",
" <td>-0.164748</td>\n",
" <td>0.002303</td>\n",
" <td>0.005724</td>\n",
" <td>-0.000990</td>\n",
" <td>0.006248</td>\n",
" </tr>\n",
" <tr>\n",
" <th>528</th>\n",
" <td>1970-01-01 00:42:11.002520000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.109705</td>\n",
" <td>0.272672</td>\n",
" <td>-0.047153</td>\n",
" <td>0.003774</td>\n",
" <td>0.003892</td>\n",
" <td>0.002986</td>\n",
" <td>0.006189</td>\n",
" </tr>\n",
" <tr>\n",
" <th>529</th>\n",
" <td>1970-01-01 00:42:11.022567999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.194147</td>\n",
" <td>0.148967</td>\n",
" <td>0.003918</td>\n",
" <td>0.001593</td>\n",
" <td>0.003101</td>\n",
" <td>0.005244</td>\n",
" </tr>\n",
" <tr>\n",
" <th>530</th>\n",
" <td>1970-01-01 00:42:11.043383000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.076552</td>\n",
" <td>0.148967</td>\n",
" <td>0.002988</td>\n",
" <td>0.001534</td>\n",
" <td>0.001411</td>\n",
" <td>0.003643</td>\n",
" </tr>\n",
" <tr>\n",
" <th>531</th>\n",
" <td>1970-01-01 00:42:11.063418000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.076552</td>\n",
" <td>0.070442</td>\n",
" <td>0.001481</td>\n",
" <td>0.002424</td>\n",
" <td>-0.003453</td>\n",
" <td>0.004471</td>\n",
" </tr>\n",
" <tr>\n",
" <th>532</th>\n",
" <td>1970-01-01 00:42:11.084379999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.115623</td>\n",
" <td>-0.164748</td>\n",
" <td>0.003772</td>\n",
" <td>0.003107</td>\n",
" <td>-0.001728</td>\n",
" <td>0.005183</td>\n",
" </tr>\n",
" <tr>\n",
" <th>533</th>\n",
" <td>1970-01-01 00:42:11.104417999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.155077</td>\n",
" <td>-0.086224</td>\n",
" <td>0.003132</td>\n",
" <td>0.003256</td>\n",
" <td>0.003956</td>\n",
" <td>0.006005</td>\n",
" </tr>\n",
" <tr>\n",
" <th>534</th>\n",
" <td>1970-01-01 00:42:11.125413000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.155077</td>\n",
" <td>0.188421</td>\n",
" <td>0.002985</td>\n",
" <td>0.001532</td>\n",
" <td>0.005335</td>\n",
" <td>0.006303</td>\n",
" </tr>\n",
" <tr>\n",
" <th>535</th>\n",
" <td>1970-01-01 00:42:11.145427999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.076552</td>\n",
" <td>0.266562</td>\n",
" <td>0.003127</td>\n",
" <td>0.001605</td>\n",
" <td>-0.000989</td>\n",
" <td>0.003651</td>\n",
" </tr>\n",
" <tr>\n",
" <th>536</th>\n",
" <td>1970-01-01 00:42:11.166393999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.076552</td>\n",
" <td>-0.047153</td>\n",
" <td>-0.000158</td>\n",
" <td>0.002316</td>\n",
" <td>-0.004083</td>\n",
" <td>0.004697</td>\n",
" </tr>\n",
" <tr>\n",
" <th>539</th>\n",
" <td>1970-01-01 00:42:11.207393000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.155077</td>\n",
" <td>-0.086224</td>\n",
" <td>0.003948</td>\n",
" <td>0.002425</td>\n",
" <td>0.003124</td>\n",
" <td>0.005588</td>\n",
" </tr>\n",
" <tr>\n",
" <th>540</th>\n",
" <td>1970-01-01 00:42:11.228365999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.115623</td>\n",
" <td>0.148967</td>\n",
" <td>0.003772</td>\n",
" <td>0.002317</td>\n",
" <td>0.003776</td>\n",
" <td>0.005818</td>\n",
" </tr>\n",
" <tr>\n",
" <th>541</th>\n",
" <td>1970-01-01 00:42:11.248403999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.115623</td>\n",
" <td>0.188421</td>\n",
" <td>0.002299</td>\n",
" <td>0.000778</td>\n",
" <td>-0.000988</td>\n",
" <td>0.002621</td>\n",
" </tr>\n",
" <tr>\n",
" <th>542</th>\n",
" <td>1970-01-01 00:42:11.269362999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.109705</td>\n",
" <td>0.037098</td>\n",
" <td>-0.047153</td>\n",
" <td>0.001416</td>\n",
" <td>0.003109</td>\n",
" <td>-0.003303</td>\n",
" <td>0.004753</td>\n",
" </tr>\n",
" <tr>\n",
" <th>543</th>\n",
" <td>1970-01-01 00:42:11.289413999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.155077</td>\n",
" <td>-0.164748</td>\n",
" <td>0.003127</td>\n",
" <td>0.004070</td>\n",
" <td>-0.000988</td>\n",
" <td>0.005226</td>\n",
" </tr>\n",
" <tr>\n",
" <th>544</th>\n",
" <td>1970-01-01 00:42:11.310375999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.194147</td>\n",
" <td>-0.047153</td>\n",
" <td>0.004566</td>\n",
" <td>0.003893</td>\n",
" <td>0.002987</td>\n",
" <td>0.006703</td>\n",
" </tr>\n",
" <tr>\n",
" <th>545</th>\n",
" <td>1970-01-01 00:42:11.330429000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.227683</td>\n",
" <td>0.194147</td>\n",
" <td>0.148967</td>\n",
" <td>0.003943</td>\n",
" <td>0.001604</td>\n",
" <td>0.003947</td>\n",
" <td>0.005806</td>\n",
" </tr>\n",
" <tr>\n",
" <th>546</th>\n",
" <td>1970-01-01 00:42:11.351379000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.076552</td>\n",
" <td>0.188421</td>\n",
" <td>0.002989</td>\n",
" <td>0.001534</td>\n",
" <td>-0.000154</td>\n",
" <td>0.003363</td>\n",
" </tr>\n",
" <tr>\n",
" <th>547</th>\n",
" <td>1970-01-01 00:42:11.371416999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.076552</td>\n",
" <td>-0.007699</td>\n",
" <td>0.000662</td>\n",
" <td>0.004071</td>\n",
" <td>-0.003455</td>\n",
" <td>0.005381</td>\n",
" </tr>\n",
" <tr>\n",
" <th>548</th>\n",
" <td>1970-01-01 00:42:11.392388000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.031563</td>\n",
" <td>0.194147</td>\n",
" <td>-0.164748</td>\n",
" <td>0.002198</td>\n",
" <td>0.004674</td>\n",
" <td>-0.000154</td>\n",
" <td>0.005167</td>\n",
" </tr>\n",
" <tr>\n",
" <th>549</th>\n",
" <td>1970-01-01 00:42:11.412428000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.109705</td>\n",
" <td>0.233218</td>\n",
" <td>-0.007699</td>\n",
" <td>0.003943</td>\n",
" <td>0.002422</td>\n",
" <td>0.006411</td>\n",
" <td>0.007907</td>\n",
" </tr>\n",
" <tr>\n",
" <th>550</th>\n",
" <td>1970-01-01 00:42:11.433378000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.188229</td>\n",
" <td>0.115623</td>\n",
" <td>0.306016</td>\n",
" <td>0.002989</td>\n",
" <td>0.001534</td>\n",
" <td>0.002985</td>\n",
" <td>0.004494</td>\n",
" </tr>\n",
" <tr>\n",
" <th>551</th>\n",
" <td>1970-01-01 00:42:11.453414000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.076552</td>\n",
" <td>0.148967</td>\n",
" <td>0.002300</td>\n",
" <td>0.003251</td>\n",
" <td>-0.001808</td>\n",
" <td>0.004373</td>\n",
" </tr>\n",
" <tr>\n",
" <th>552</th>\n",
" <td>1970-01-01 00:42:11.474377999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.109705</td>\n",
" <td>0.155077</td>\n",
" <td>-0.086224</td>\n",
" <td>0.001473</td>\n",
" <td>0.004049</td>\n",
" <td>-0.001798</td>\n",
" <td>0.004669</td>\n",
" </tr>\n",
" <tr>\n",
" <th>553</th>\n",
" <td>1970-01-01 00:42:11.495234999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.070634</td>\n",
" <td>0.194147</td>\n",
" <td>-0.086224</td>\n",
" <td>0.004560</td>\n",
" <td>0.003106</td>\n",
" <td>0.003774</td>\n",
" <td>0.006685</td>\n",
" </tr>\n",
" <tr>\n",
" <th>554</th>\n",
" <td>1970-01-01 00:42:11.515264000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.227683</td>\n",
" <td>0.155077</td>\n",
" <td>0.188421</td>\n",
" <td>0.004562</td>\n",
" <td>0.001534</td>\n",
" <td>0.002202</td>\n",
" <td>0.005293</td>\n",
" </tr>\n",
" <tr>\n",
" <th>555</th>\n",
" <td>1970-01-01 00:42:11.535301999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.227683</td>\n",
" <td>0.076552</td>\n",
" <td>0.109896</td>\n",
" <td>0.003127</td>\n",
" <td>0.003251</td>\n",
" <td>-0.000988</td>\n",
" <td>0.004617</td>\n",
" </tr>\n",
" <tr>\n",
" <th>556</th>\n",
" <td>1970-01-01 00:42:11.556263999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.155077</td>\n",
" <td>-0.047153</td>\n",
" <td>0.002301</td>\n",
" <td>0.003252</td>\n",
" <td>-0.005102</td>\n",
" <td>0.006473</td>\n",
" </tr>\n",
" <tr>\n",
" <th>557</th>\n",
" <td>1970-01-01 00:42:11.577236000</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.109705</td>\n",
" <td>0.155077</td>\n",
" <td>-0.243273</td>\n",
" <td>0.002991</td>\n",
" <td>0.003893</td>\n",
" <td>0.000629</td>\n",
" <td>0.004950</td>\n",
" </tr>\n",
" <tr>\n",
" <th>558</th>\n",
" <td>1970-01-01 00:42:11.597288999</td>\n",
" <td>9831.0</td>\n",
" <td>9831.0</td>\n",
" <td>0.149158</td>\n",
" <td>0.194147</td>\n",
" <td>0.031372</td>\n",
" <td>-0.000000</td>\n",
" <td>-0.000000</td>\n",
" <td>-0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>189 rows × 10 columns</p>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 drive_pwm__pwm_angle drive_pwm__pwm_drive \\\n",
"352 1970-01-01 00:42:07.575413999 9831.0 10486.0 \n",
"353 1970-01-01 00:42:07.595447000 9831.0 10486.0 \n",
"354 1970-01-01 00:42:07.616406999 9831.0 10486.0 \n",
"355 1970-01-01 00:42:07.636457999 9831.0 10486.0 \n",
"356 1970-01-01 00:42:07.657416999 9831.0 10486.0 \n",
"357 1970-01-01 00:42:07.678405000 9831.0 10486.0 \n",
"358 1970-01-01 00:42:07.698432000 9831.0 10486.0 \n",
"359 1970-01-01 00:42:07.719416999 9831.0 10486.0 \n",
"360 1970-01-01 00:42:07.739416999 9831.0 10486.0 \n",
"361 1970-01-01 00:42:07.760403000 9831.0 10486.0 \n",
"362 1970-01-01 00:42:07.780419000 9831.0 10486.0 \n",
"363 1970-01-01 00:42:07.801277999 9831.0 10486.0 \n",
"364 1970-01-01 00:42:07.821316000 9831.0 10486.0 \n",
"365 1970-01-01 00:42:07.842277000 9831.0 10486.0 \n",
"366 1970-01-01 00:42:07.862316000 9831.0 10486.0 \n",
"367 1970-01-01 00:42:07.883291000 9831.0 10486.0 \n",
"368 1970-01-01 00:42:07.903315999 9831.0 10486.0 \n",
"369 1970-01-01 00:42:07.924277999 9831.0 10486.0 \n",
"370 1970-01-01 00:42:07.945263000 9831.0 10486.0 \n",
"371 1970-01-01 00:42:07.965357000 9831.0 10486.0 \n",
"372 1970-01-01 00:42:07.986261999 9831.0 10486.0 \n",
"375 1970-01-01 00:42:08.027263999 9831.0 10486.0 \n",
"376 1970-01-01 00:42:08.047309000 9831.0 10486.0 \n",
"377 1970-01-01 00:42:08.068260999 9831.0 10486.0 \n",
"381 1970-01-01 00:42:08.109296000 9831.0 9503.0 \n",
"389 1970-01-01 00:42:08.191333000 9831.0 9831.0 \n",
"390 1970-01-01 00:42:08.212152000 9831.0 9831.0 \n",
"391 1970-01-01 00:42:08.232206000 9831.0 9831.0 \n",
"392 1970-01-01 00:42:08.252207999 9831.0 9831.0 \n",
"393 1970-01-01 00:42:08.273165000 9831.0 9831.0 \n",
".. ... ... ... \n",
"527 1970-01-01 00:42:10.981529000 9831.0 9831.0 \n",
"528 1970-01-01 00:42:11.002520000 9831.0 9831.0 \n",
"529 1970-01-01 00:42:11.022567999 9831.0 9831.0 \n",
"530 1970-01-01 00:42:11.043383000 9831.0 9831.0 \n",
"531 1970-01-01 00:42:11.063418000 9831.0 9831.0 \n",
"532 1970-01-01 00:42:11.084379999 9831.0 9831.0 \n",
"533 1970-01-01 00:42:11.104417999 9831.0 9831.0 \n",
"534 1970-01-01 00:42:11.125413000 9831.0 9831.0 \n",
"535 1970-01-01 00:42:11.145427999 9831.0 9831.0 \n",
"536 1970-01-01 00:42:11.166393999 9831.0 9831.0 \n",
"539 1970-01-01 00:42:11.207393000 9831.0 9831.0 \n",
"540 1970-01-01 00:42:11.228365999 9831.0 9831.0 \n",
"541 1970-01-01 00:42:11.248403999 9831.0 9831.0 \n",
"542 1970-01-01 00:42:11.269362999 9831.0 9831.0 \n",
"543 1970-01-01 00:42:11.289413999 9831.0 9831.0 \n",
"544 1970-01-01 00:42:11.310375999 9831.0 9831.0 \n",
"545 1970-01-01 00:42:11.330429000 9831.0 9831.0 \n",
"546 1970-01-01 00:42:11.351379000 9831.0 9831.0 \n",
"547 1970-01-01 00:42:11.371416999 9831.0 9831.0 \n",
"548 1970-01-01 00:42:11.392388000 9831.0 9831.0 \n",
"549 1970-01-01 00:42:11.412428000 9831.0 9831.0 \n",
"550 1970-01-01 00:42:11.433378000 9831.0 9831.0 \n",
"551 1970-01-01 00:42:11.453414000 9831.0 9831.0 \n",
"552 1970-01-01 00:42:11.474377999 9831.0 9831.0 \n",
"553 1970-01-01 00:42:11.495234999 9831.0 9831.0 \n",
"554 1970-01-01 00:42:11.515264000 9831.0 9831.0 \n",
"555 1970-01-01 00:42:11.535301999 9831.0 9831.0 \n",
"556 1970-01-01 00:42:11.556263999 9831.0 9831.0 \n",
"557 1970-01-01 00:42:11.577236000 9831.0 9831.0 \n",
"558 1970-01-01 00:42:11.597288999 9831.0 9831.0 \n",
"\n",
" imu__linear_acceleration_x imu__linear_acceleration_y \\\n",
"352 0.070634 0.037098 \n",
"353 0.031563 -0.001973 \n",
"354 -0.007891 -0.041043 \n",
"355 -0.086415 0.076552 \n",
"356 -0.007891 0.037098 \n",
"357 0.501945 -1.531862 \n",
"358 10.778709 0.586387 \n",
"359 6.189425 -0.864977 \n",
"360 -0.321606 -0.394213 \n",
"361 3.522269 0.507863 \n",
"362 -0.988491 0.468792 \n",
"363 2.502598 0.272672 \n",
"364 1.835714 -0.119568 \n",
"365 1.874785 -0.080497 \n",
"366 2.188883 -0.198093 \n",
"367 2.110358 -0.472737 \n",
"368 1.718118 -0.001973 \n",
"369 2.385003 -0.041043 \n",
"370 2.659265 0.194147 \n",
"371 2.933909 -0.276617 \n",
"372 2.581123 -0.080497 \n",
"375 3.169483 0.076552 \n",
"376 2.855385 -0.041043 \n",
"377 2.424074 -0.080497 \n",
"381 2.777243 0.272672 \n",
"389 2.267025 -0.355142 \n",
"390 -0.909966 -0.276617 \n",
"391 -3.381002 -0.668857 \n",
"392 0.816043 -0.315688 \n",
"393 -0.007891 0.390267 \n",
".. ... ... \n",
"527 -0.007891 0.155077 \n",
"528 0.109705 0.272672 \n",
"529 0.188229 0.194147 \n",
"530 0.188229 0.076552 \n",
"531 0.149158 0.076552 \n",
"532 0.070634 0.115623 \n",
"533 0.188229 0.155077 \n",
"534 0.149158 0.155077 \n",
"535 0.149158 0.076552 \n",
"536 0.149158 0.076552 \n",
"539 0.070634 0.155077 \n",
"540 0.188229 0.115623 \n",
"541 0.188229 0.115623 \n",
"542 0.109705 0.037098 \n",
"543 0.070634 0.155077 \n",
"544 0.149158 0.194147 \n",
"545 0.227683 0.194147 \n",
"546 0.188229 0.076552 \n",
"547 0.149158 0.076552 \n",
"548 0.031563 0.194147 \n",
"549 0.109705 0.233218 \n",
"550 0.188229 0.115623 \n",
"551 0.149158 0.076552 \n",
"552 0.109705 0.155077 \n",
"553 0.070634 0.194147 \n",
"554 0.227683 0.155077 \n",
"555 0.227683 0.076552 \n",
"556 0.149158 0.155077 \n",
"557 0.109705 0.155077 \n",
"558 0.149158 0.194147 \n",
"\n",
" imu__linear_acceleration_z instant_velocity_x instant_velocity_y \\\n",
"352 0.227492 0.000632 -0.000040 \n",
"353 0.188421 -0.000165 -0.000860 \n",
"354 -0.047153 -0.001733 0.001535 \n",
"355 -0.125678 -0.000165 0.000778 \n",
"356 -0.007699 0.010535 -0.032151 \n",
"357 1.404212 0.215865 0.011744 \n",
"358 4.973442 0.129885 -0.018152 \n",
"359 -1.929828 -0.006432 -0.007884 \n",
"360 -2.753379 0.073918 0.010658 \n",
"361 1.953501 -0.019786 0.009383 \n",
"362 -1.890758 0.052202 0.005688 \n",
"363 0.266562 0.036784 -0.002396 \n",
"364 1.129567 0.039297 -0.001687 \n",
"365 0.423612 0.043863 -0.003970 \n",
"366 -0.478464 0.044265 -0.009916 \n",
"367 -0.125678 0.034405 -0.000040 \n",
"368 -0.047153 0.049994 -0.000860 \n",
"369 0.541207 0.055805 0.004074 \n",
"370 0.070442 0.058954 -0.005558 \n",
"371 0.502136 0.053958 -0.001683 \n",
"372 0.541207 0.054906 0.007043 \n",
"375 0.227492 0.057236 -0.000823 \n",
"376 -0.164748 0.050789 -0.001687 \n",
"377 -0.478464 0.049393 -0.003972 \n",
"381 0.306016 0.051710 -0.001613 \n",
"389 -0.439393 -0.018945 -0.005759 \n",
"390 -1.929828 -0.067803 -0.013413 \n",
"391 -1.184419 0.016322 -0.006314 \n",
"392 1.051042 -0.000165 0.008179 \n",
"393 0.109896 -0.009585 0.004670 \n",
".. ... ... ... \n",
"527 -0.164748 0.002303 0.005724 \n",
"528 -0.047153 0.003774 0.003892 \n",
"529 0.148967 0.003918 0.001593 \n",
"530 0.148967 0.002988 0.001534 \n",
"531 0.070442 0.001481 0.002424 \n",
"532 -0.164748 0.003772 0.003107 \n",
"533 -0.086224 0.003132 0.003256 \n",
"534 0.188421 0.002985 0.001532 \n",
"535 0.266562 0.003127 0.001605 \n",
"536 -0.047153 -0.000158 0.002316 \n",
"539 -0.086224 0.003948 0.002425 \n",
"540 0.148967 0.003772 0.002317 \n",
"541 0.188421 0.002299 0.000778 \n",
"542 -0.047153 0.001416 0.003109 \n",
"543 -0.164748 0.003127 0.004070 \n",
"544 -0.047153 0.004566 0.003893 \n",
"545 0.148967 0.003943 0.001604 \n",
"546 0.188421 0.002989 0.001534 \n",
"547 -0.007699 0.000662 0.004071 \n",
"548 -0.164748 0.002198 0.004674 \n",
"549 -0.007699 0.003943 0.002422 \n",
"550 0.306016 0.002989 0.001534 \n",
"551 0.148967 0.002300 0.003251 \n",
"552 -0.086224 0.001473 0.004049 \n",
"553 -0.086224 0.004560 0.003106 \n",
"554 0.188421 0.004562 0.001534 \n",
"555 0.109896 0.003127 0.003251 \n",
"556 -0.047153 0.002301 0.003252 \n",
"557 -0.243273 0.002991 0.003893 \n",
"558 0.031372 -0.000000 -0.000000 \n",
"\n",
" instant_velocity_z speed \n",
"352 0.003775 0.003827 \n",
"353 -0.000988 0.001321 \n",
"354 -0.002520 0.003422 \n",
"355 -0.000161 0.000811 \n",
"356 0.029472 0.044869 \n",
"357 0.099603 0.238026 \n",
"358 -0.040497 0.137258 \n",
"359 -0.055068 0.056000 \n",
"360 0.040996 0.085195 \n",
"361 -0.037845 0.043724 \n",
"362 0.005560 0.052804 \n",
"363 0.022634 0.043256 \n",
"364 0.008879 0.040323 \n",
"365 -0.009588 0.045074 \n",
"366 -0.002636 0.045438 \n",
"367 -0.000944 0.034418 \n",
"368 0.011345 0.051273 \n",
"369 0.001478 0.055973 \n",
"370 0.010090 0.060069 \n",
"371 0.011314 0.055157 \n",
"372 0.002988 0.055437 \n",
"375 -0.003302 0.057337 \n",
"376 -0.010025 0.051797 \n",
"377 -0.005662 0.049875 \n",
"381 0.016345 0.054256 \n",
"389 -0.040177 0.044791 \n",
"390 -0.023752 0.073084 \n",
"391 0.021023 0.027354 \n",
"392 0.002303 0.008499 \n",
"393 0.003773 0.011310 \n",
".. ... ... \n",
"527 -0.000990 0.006248 \n",
"528 0.002986 0.006189 \n",
"529 0.003101 0.005244 \n",
"530 0.001411 0.003643 \n",
"531 -0.003453 0.004471 \n",
"532 -0.001728 0.005183 \n",
"533 0.003956 0.006005 \n",
"534 0.005335 0.006303 \n",
"535 -0.000989 0.003651 \n",
"536 -0.004083 0.004697 \n",
"539 0.003124 0.005588 \n",
"540 0.003776 0.005818 \n",
"541 -0.000988 0.002621 \n",
"542 -0.003303 0.004753 \n",
"543 -0.000988 0.005226 \n",
"544 0.002987 0.006703 \n",
"545 0.003947 0.005806 \n",
"546 -0.000154 0.003363 \n",
"547 -0.003455 0.005381 \n",
"548 -0.000154 0.005167 \n",
"549 0.006411 0.007907 \n",
"550 0.002985 0.004494 \n",
"551 -0.001808 0.004373 \n",
"552 -0.001798 0.004669 \n",
"553 0.003774 0.006685 \n",
"554 0.002202 0.005293 \n",
"555 -0.000988 0.004617 \n",
"556 -0.005102 0.006473 \n",
"557 0.000629 0.004950 \n",
"558 -0.000000 0.000000 \n",
"\n",
"[189 rows x 10 columns]"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# df = pd.DataFrame({\"A\": [1, 2, 3], \"B\": [4, 5, 6]})\n",
"# df.rename(columns={\"A\": \"a\"})\n",
"pwm_for_correlation.rename(columns={0: 'timething'}, inplace=True)\n",
"pwm_for_correlation"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}