{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "'grep' is not recognized as an internal or external command,\n",
      "operable program or batch file.\n"
     ]
    }
   ],
   "source": [
    "! grep -i capacity fullcap_20230822.txt | awk '{print $7\",\"$13\",\"$15}' | grep ^4 > battery_caps_20230822.txt\n",
    "# normally that makes the file, the I manually cleanup and set."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "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>SN</th>\n",
       "      <th>Capacity</th>\n",
       "      <th>FullChargeCapacity</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>405</td>\n",
       "      <td>1845</td>\n",
       "      <td>1845</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>408</td>\n",
       "      <td>2328</td>\n",
       "      <td>2886</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>406</td>\n",
       "      <td>1914</td>\n",
       "      <td>2104</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>419</td>\n",
       "      <td>1866</td>\n",
       "      <td>1980</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>408</td>\n",
       "      <td>2328</td>\n",
       "      <td>2886</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    SN  Capacity  FullChargeCapacity\n",
       "0  405      1845                1845\n",
       "1  408      2328                2886\n",
       "2  406      1914                2104\n",
       "3  419      1866                1980\n",
       "4  408      2328                2886"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data = pd.read_csv('battery_caps_20230822.csv')\n",
    "data.head()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[<Axes: title={'center': '405'}>, <Axes: title={'center': '406'}>],\n",
       "       [<Axes: title={'center': '408'}>, <Axes: title={'center': '419'}>],\n",
       "       [<Axes: title={'center': '437'}>, <Axes: title={'center': '453'}>]],\n",
       "      dtype=object)"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 6 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.hist('FullChargeCapacity', by='SN')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "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>Capacity</th>\n",
       "      <th>FullChargeCapacity</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SN</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>405</th>\n",
       "      <td>1845.000000</td>\n",
       "      <td>2260.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>406</th>\n",
       "      <td>1914.000000</td>\n",
       "      <td>2080.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>408</th>\n",
       "      <td>2337.000000</td>\n",
       "      <td>2886.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>419</th>\n",
       "      <td>1818.000000</td>\n",
       "      <td>1950.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>437</th>\n",
       "      <td>1695.666667</td>\n",
       "      <td>1852.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>453</th>\n",
       "      <td>2355.555556</td>\n",
       "      <td>3019.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        Capacity  FullChargeCapacity\n",
       "SN                                  \n",
       "405  1845.000000         2260.250000\n",
       "406  1914.000000         2080.250000\n",
       "408  2337.000000         2886.000000\n",
       "419  1818.000000         1950.333333\n",
       "437  1695.666667         1852.000000\n",
       "453  2355.555556         3019.000000"
      ]
     },
     "execution_count": 40,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby('SN').mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Capacity              11965.222222\n",
       "FullChargeCapacity    14047.833333\n",
       "dtype: float64"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby('SN').mean().sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.10.7"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
