{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from prettypandas import PrettyPandas" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "\n", "np.random.seed(24)\n", "df = pd.DataFrame({'A': np.linspace(1, 10, 10)})\n", "df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4), columns=list('BCDE'))],\n", " axis=1)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
01.01.329212-0.770033-0.316280-0.990810
12.0-1.070816-1.4387130.5644170.295722
23.0-1.6264040.2195650.6788051.889273
34.00.9615380.104011-0.4811650.850229
45.01.4534251.0577370.1655620.515018
56.0-1.3369360.5628611.392855-0.063328
67.00.1216681.207603-0.0020401.627796
78.00.3544931.037528-0.3856840.519818
89.01.686583-1.3259631.428984-2.089354
910.0-0.1298200.631523-0.5865380.290720
\n", "
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Summaries\n", "\n", "Supported summaries:\n", "\n", "* total\n", "* average\n", "* min\n", "* max\n", "* median" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDETotal
011.32921-0.770033-0.31628-0.990810.252088
12-1.07082-1.438710.5644170.2957220.350609
23-1.62640.2195650.6788051.889274.16124
340.9615380.104011-0.4811650.8502295.43461
451.453421.057740.1655620.5150188.19174
56-1.336940.5628611.39285-0.0633286.55545
670.1216681.2076-0.002040211.62789.95503
780.3544931.03753-0.3856840.5198189.52615
891.68658-1.325961.42898-2.089358.70025
910-0.129820.631523-0.5865380.2907210.2059
Total551.742941.286122.458912.84508
" ], "text/plain": [ " A B C D E Total\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.252088\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.350609\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 4.161238\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 5.434613\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 8.191742\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 6.555452\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 9.955026\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 9.526155\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 8.700249\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 10.205885\n", "Total 55.0 1.742943 1.286118 2.458914 2.845083 NaN" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.pipe(PrettyPandas).total(axis=None)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
340.9615380.104011-0.4811650.850229
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
Total551.742941.286122.458912.84508
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Total 55.0 1.742943 1.286118 2.458914 2.845083" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).total()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
340.9615380.104011-0.4811650.850229
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
Average5.50.1742940.1286120.2458910.284508
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Average 5.5 0.174294 0.128612 0.245891 0.284508" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).average()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDEAverage
011.32921-0.770033-0.31628-0.990810.0504176
12-1.07082-1.438710.5644170.2957220.0701218
23-1.62640.2195650.6788051.889270.832248
340.9615380.104011-0.4811650.8502291.08692
451.453421.057740.1655620.5150181.63835
56-1.336940.5628611.39285-0.0633281.31109
670.1216681.2076-0.002040211.62781.99101
780.3544931.03753-0.3856840.5198181.90523
891.68658-1.325961.42898-2.089351.74005
910-0.129820.631523-0.5865380.290722.04118
" ], "text/plain": [ " A B C D E Average\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.050418\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.070122\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 0.832248\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 1.086923\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 1.638348\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 1.311090\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 1.991005\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 1.905231\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 1.740050\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 2.041177" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).average(axis=1)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDEAverage
011.32921-0.770033-0.31628-0.990810.0504176
12-1.07082-1.438710.5644170.2957220.0701218
23-1.62640.2195650.6788051.889270.832248
340.9615380.104011-0.4811650.8502291.08692
451.453421.057740.1655620.5150181.63835
56-1.336940.5628611.39285-0.0633281.31109
670.1216681.2076-0.002040211.62781.99101
780.3544931.03753-0.3856840.5198181.90523
891.68658-1.325961.42898-2.089351.74005
910-0.129820.631523-0.5865380.290722.04118
Average5.50.1742940.1286120.2458910.284508
" ], "text/plain": [ " A B C D E Average\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.050418\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.070122\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 0.832248\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 1.086923\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 1.638348\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 1.311090\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 1.991005\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 1.905231\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 1.740050\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 2.041177\n", "Average 5.5 0.174294 0.128612 0.245891 0.284508 NaN" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).average(axis=None)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
340.9615380.104011-0.4811650.850229
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
Minimum1-1.6264-1.43871-0.586538-2.08935
Maximum101.686581.20761.428981.88927
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Minimum 1.0 -1.626404 -1.438713 -0.586538 -2.089354\n", "Maximum 10.0 1.686583 1.207603 1.428984 1.889273" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).min().max()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
340.9615380.104011-0.4811650.850229
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
Average5.50.1742940.1286120.2458910.284508
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Average 5.5 0.174294 0.128612 0.245891 0.284508" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).summary(np.mean, \"Average\")" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
340.9615380.104011-0.4811650.850229
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
> 0106757
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "> 0 10.0 6.000000 7.000000 5.000000 7.000000" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def count_greater_than_zero(column):\n", " return (column > 0).sum()\n", "\n", "PrettyPandas(df).summary(count_greater_than_zero, title=\"> 0\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Multiple Summaries" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDEAverageTotal
011.32921-0.770033-0.31628-0.990810.05041760.252088
12-1.07082-1.438710.5644170.2957220.07012180.350609
23-1.62640.2195650.6788051.889270.8322484.16124
340.9615380.104011-0.4811650.8502291.086925.43461
451.453421.057740.1655620.5150181.638358.19174
56-1.336940.5628611.39285-0.0633281.311096.55545
670.1216681.2076-0.002040211.62781.991019.95503
780.3544931.03753-0.3856840.5198181.905239.52615
891.68658-1.325961.42898-2.089351.740058.70025
910-0.129820.631523-0.5865380.290722.0411810.2059
Average5.50.1742940.1286120.2458910.284508
Total551.742941.286122.458912.84508
" ], "text/plain": [ " A B C D E Average Total\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.050418 0.252088\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.070122 0.350609\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 0.832248 4.161238\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 1.086923 5.434613\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 1.638348 8.191742\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 1.311090 6.555452\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 1.991005 9.955026\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 1.905231 9.526155\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 1.740050 8.700249\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 2.041177 10.205885\n", "Average 5.5 0.174294 0.128612 0.245891 0.284508 NaN NaN\n", "Total 55.0 1.742943 1.286118 2.458914 2.845083 NaN NaN" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).multi_summary([np.mean, np.sum],\n", " ['Average', 'Total'],\n", " axis=None)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Number Formatting" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "from prettypandas import as_percent, as_currency, as_unit" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-99.08%
12-1.07082-1.438710.56441729.57%
23-1.62640.2195650.678805188.93%
340.9615380.104011-0.48116585.02%
451.453421.057740.16556251.50%
56-1.336940.5628611.39285-6.33%
670.1216681.2076-0.00204021162.78%
780.3544931.03753-0.38568451.98%
891.68658-1.325961.42898-208.94%
910-0.129820.631523-0.58653829.07%
" ], "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.style.format(as_percent(), subset='E')" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0100.00%1.32921-0.770033-0.31628-0.99081
1200.00%-1.07082-1.438710.5644170.295722
2300.00%-1.62640.2195650.6788051.88927
3400.00%0.9615380.104011-0.4811650.850229
4500.00%1.453421.057740.1655620.515018
5600.00%-1.336940.5628611.39285-0.063328
6700.00%0.1216681.2076-0.002040211.6278
7800.00%0.3544931.03753-0.3856840.519818
8900.00%1.68658-1.325961.42898-2.08935
91000.00%-0.129820.631523-0.5865380.29072
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(subset='A') # Format just column A" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0100.00%132.92%-0.770033-0.31628-0.99081
1200.00%-107.08%-1.438710.5644170.295722
2300.00%-162.64%0.2195650.6788051.88927
3400.00%96.15%0.104011-0.4811650.850229
4500.00%145.34%1.057740.1655620.515018
5600.00%-133.69%0.5628611.39285-0.063328
6700.00%12.17%1.2076-0.002040211.6278
7800.00%35.45%1.03753-0.3856840.519818
8900.00%168.66%-1.325961.42898-2.08935
91000.00%-12.98%0.631523-0.5865380.29072
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(subset=['A', 'B']) # Format columns A and B" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0£1.00£1.33-£0.77-£0.32-£0.99
1£2.00-£1.07-£1.44£0.56£0.30
2£3.00-£1.63£0.22£0.68£1.89
3£4.00£0.96£0.10-£0.48£0.85
4£5.00£1.45£1.06£0.17£0.52
5£6.00-£1.34£0.56£1.39-£0.06
6£7.00£0.12£1.21-£0.00£1.63
7£8.00£0.35£1.04-£0.39£0.52
8£9.00£1.69-£1.33£1.43-£2.09
9£10.00-£0.13£0.63-£0.59£0.29
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_currency('GBP')" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0100.000%132.921%-77.003%-31.628%-99.081%
1200.000%-107.082%-143.871%56.442%29.572%
2300.000%-162.640%21.957%67.880%188.927%
3400.000%96.154%10.401%-48.117%85.023%
4500.000%145.342%105.774%16.556%51.502%
5600.000%-133.694%56.286%139.285%-6.333%
6700.000%12.167%120.760%-0.204%162.780%
7800.000%35.449%103.753%-38.568%51.982%
8900.000%168.658%-132.596%142.898%-208.935%
91000.000%-12.982%63.152%-58.654%29.072%
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(precision=3)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0£1.00£1.33-£0.77-£0.32-£0.99
1£2.00-£1.07-£1.44£0.56£0.30
2£3.00-£1.63£0.22£0.68£1.89
3£4.00£0.96£0.10-£0.48£0.85
4£5.00£1.45£1.06£0.17£0.52
5£6.00-£1.34£0.56£1.39-£0.06
6£7.00£0.12£1.21-£0.00£1.63
7£8.00£0.35£1.04-£0.39£0.52
8£9.00£1.69-£1.33£1.43-£2.09
9£10.00-£0.13£0.63-£0.59£0.29
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_currency(currency=\"GBP\")" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
01.00 mol1.33 mol-0.77 mol-0.32 mol-0.99 mol
12.00 mol-1.07 mol-1.44 mol0.56 mol0.30 mol
23.00 mol-1.63 mol0.22 mol0.68 mol1.89 mol
34.00 mol0.96 mol0.10 mol-0.48 mol0.85 mol
45.00 mol1.45 mol1.06 mol0.17 mol0.52 mol
56.00 mol-1.34 mol0.56 mol1.39 mol-0.06 mol
67.00 mol0.12 mol1.21 mol-0.00 mol1.63 mol
78.00 mol0.35 mol1.04 mol-0.39 mol0.52 mol
89.00 mol1.69 mol-1.33 mol1.43 mol-2.09 mol
910.00 mol-0.13 mol0.63 mol-0.59 mol0.29 mol
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_unit(' mol', location='suffix')" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
01132.92%-0.770033-0.31628-0.99081
12-107.08%-1.438710.5644170.295722
23-162.64%0.2195650.6788051.88927
3496.15%0.104011-0.4811650.850229
45145.34%1.057740.1655620.515018
56-133.69%0.5628611.39285-0.063328
6712.17%1.2076-0.002040211.6278
7835.45%1.03753-0.3856840.519818
89168.66%-1.325961.42898-2.08935
910-12.98%0.631523-0.5865380.29072
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(subset=['B'])" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
01132.92%-0.770033-0.31628-0.99081
12-107.08%-1.438710.5644170.295722
23-162.64%0.2195650.6788051.88927
3496.15%0.104011-0.4811650.850229
45145.34%1.057740.1655620.515018
56-133.69%0.5628611.39285-0.063328
6712.17%1.2076-0.002040211.6278
7835.45%1.03753-0.3856840.519818
89168.66%-1.325961.42898-2.08935
910-12.98%0.631523-0.5865380.29072
Total55174.29%1.286122.458912.84508
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Total 55.0 1.742943 1.286118 2.458914 2.845083" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(subset=['B']).total()" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0100%133%-77%-32%-99%
1200%-107%-144%56%30%
2300%-163%22%68%189%
3400%96%10%-48%85%
4500%145%106%17%52%
5600%-134%56%139%-6%
6700%12%121%-0%163%
7800%35%104%-39%52%
8900%169%-133%143%-209%
91000%-13%63%-59%29%
Median550%24%39%8%41%
" ], "text/plain": [ "" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(\n", " df.pipe(PrettyPandas)\n", " .as_percent(precision=0)\n", " .median()\n", " .style\n", " .background_gradient()\n", ")" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
011.32921-0.770033-0.31628-0.99081
12-1.07082-1.438710.5644170.295722
23-1.62640.2195650.6788051.88927
3400.00%96.15%10.40%-48.12%85.02%
451.453421.057740.1655620.515018
56-1.336940.5628611.39285-0.063328
670.1216681.2076-0.002040211.6278
780.3544931.03753-0.3856840.519818
891.68658-1.325961.42898-2.08935
910-0.129820.631523-0.5865380.29072
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PrettyPandas(df).as_percent(subset=pd.IndexSlice[3,:], precision=2)" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDETotal
0$1.00$1.33-$0.77-$0.32-$0.99$0.25
1200.00%-107.08%-143.87%56.44%29.57%35.06%
23-1.62640.2195650.6788051.889274.16124
340.9615380.104011-0.4811650.8502295.43461
451.453421.057740.1655620.5150188.19174
56-1.336940.5628611.39285-0.0633286.55545
670.1216681.2076-0.002040211.62789.95503
780.3544931.03753-0.3856840.5198189.52615
891.68658-1.325961.42898-2.089358.70025
910-0.129820.631523-0.5865380.2907210.2059
" ], "text/plain": [ " A B C D E Total\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.252088\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.350609\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 4.161238\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 5.434613\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 8.191742\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 6.555452\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 9.955026\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 9.526155\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 8.700249\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 10.205885" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "first_row_idx = pd.IndexSlice[0, :]\n", "second_row_idx = pd.IndexSlice[1, :]\n", "\n", "(\n", " df.pipe(PrettyPandas)\n", " .as_currency(subset=first_row_idx)\n", " .as_percent(subset=second_row_idx)\n", " .total(axis=1)\n", ")" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDE
0£1.00132.92%-0.770033-0.31628-0.99081
1£2.00-107.08%-1.438710.5644170.295722
2£3.00-162.64%0.2195650.6788051.88927
3£4.0096.15%0.104011-0.4811650.850229
4£5.00145.34%1.057740.1655620.515018
5£6.00-133.69%0.5628611.39285-0.063328
6£7.0012.17%1.2076-0.002040211.6278
7£8.0035.45%1.03753-0.3856840.519818
8£9.00168.66%-1.325961.42898-2.08935
9£10.00-12.98%0.631523-0.5865380.29072
Total£55.00174.29%1.286122.458912.84508
Average£5.5017.43%0.1286120.2458910.284508
" ], "text/plain": [ " A B C D E\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229\n", "4 5.0 1.453425 1.057737 0.165562 0.515018\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720\n", "Total 55.0 1.742943 1.286118 2.458914 2.845083\n", "Average 5.5 0.174294 0.128612 0.245891 0.284508" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(\n", " df\n", " .pipe(PrettyPandas)\n", " .as_currency('GBP', subset='A')\n", " .as_percent(subset='B')\n", " .total()\n", " .average()\n", ")" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABCDETotal
01.01.329212-0.770033-0.316280-0.9908100.252088
12.0-1.070816-1.4387130.5644170.2957220.350609
23.0-1.6264040.2195650.6788051.8892734.161238
34.00.9615380.104011-0.4811650.8502295.434613
45.01.4534251.0577370.1655620.5150188.191742
56.0-1.3369360.5628611.392855-0.0633286.555452
67.00.1216681.207603-0.0020401.6277969.955026
78.00.3544931.037528-0.3856840.5198189.526155
89.01.686583-1.3259631.428984-2.0893548.700249
910.0-0.1298200.631523-0.5865380.29072010.205885
\n", "
" ], "text/plain": [ " A B C D E Total\n", "0 1.0 1.329212 -0.770033 -0.316280 -0.990810 0.252088\n", "1 2.0 -1.070816 -1.438713 0.564417 0.295722 0.350609\n", "2 3.0 -1.626404 0.219565 0.678805 1.889273 4.161238\n", "3 4.0 0.961538 0.104011 -0.481165 0.850229 5.434613\n", "4 5.0 1.453425 1.057737 0.165562 0.515018 8.191742\n", "5 6.0 -1.336936 0.562861 1.392855 -0.063328 6.555452\n", "6 7.0 0.121668 1.207603 -0.002040 1.627796 9.955026\n", "7 8.0 0.354493 1.037528 -0.385684 0.519818 9.526155\n", "8 9.0 1.686583 -1.325963 1.428984 -2.089354 8.700249\n", "9 10.0 -0.129820 0.631523 -0.586538 0.290720 10.205885" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(\n", " df\n", " .pipe(PrettyPandas)\n", " .total(axis=1)\n", " .to_frame()\n", ")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, "nbformat": 4, "nbformat_minor": 1 }