diff --git a/.gitignore b/.gitignore
index 4fb4c96..f3a95a0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
**/*.csv
+.ipynb_checkpoints/
diff --git a/Untitled.ipynb b/Untitled.ipynb
new file mode 100644
index 0000000..d07fb3b
--- /dev/null
+++ b/Untitled.ipynb
@@ -0,0 +1,1051 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "c0ccf4cd",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "9bc76e03",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df = pd.read_csv('diet.csv')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "id": "a6f9c607",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "KauraTyynyt 8\n",
+ "Cheese 7\n",
+ "Ketchup 7\n",
+ "Milk 6\n",
+ "Orange 6\n",
+ "Sugar 6\n",
+ "Egg 6\n",
+ "RainbowNoodles 5\n",
+ "Margarine 5\n",
+ "CherryTomatoes 5\n",
+ "Name: name, dtype: int64"
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df['name'].value_counts().head(10)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "id": "e9a1667f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " timestamp | \n",
+ " grams | \n",
+ " calories | \n",
+ " carbs | \n",
+ " fat | \n",
+ " protein | \n",
+ " saturated_fat | \n",
+ " sugar | \n",
+ " fiber | \n",
+ "
\n",
+ " \n",
+ " | name | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | Omlette | \n",
+ " 1.620148e+09 | \n",
+ " 382.000000 | \n",
+ " 680.800000 | \n",
+ " 22.890000 | \n",
+ " 46.780000 | \n",
+ " 35.340000 | \n",
+ " 6.8200 | \n",
+ " 2.520000 | \n",
+ " 1.650000 | \n",
+ "
\n",
+ " \n",
+ " | OmletteWithoutMilk | \n",
+ " 1.620737e+09 | \n",
+ " 330.000000 | \n",
+ " 665.300000 | \n",
+ " 19.890000 | \n",
+ " 46.630000 | \n",
+ " 34.840000 | \n",
+ " 6.8200 | \n",
+ " 0.420000 | \n",
+ " 0.600000 | \n",
+ "
\n",
+ " \n",
+ " | LeipaJuusto | \n",
+ " 1.621168e+09 | \n",
+ " 188.000000 | \n",
+ " 518.880000 | \n",
+ " 6.580000 | \n",
+ " 41.360000 | \n",
+ " 30.080000 | \n",
+ " 26.3200 | \n",
+ " 5.260000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Egg | \n",
+ " 1.620818e+09 | \n",
+ " 172.166667 | \n",
+ " 266.858333 | \n",
+ " 1.930000 | \n",
+ " 18.250000 | \n",
+ " 21.693333 | \n",
+ " 0.0000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | ProteinSpaghettiBolognese | \n",
+ " 1.620805e+09 | \n",
+ " 518.000000 | \n",
+ " 649.075000 | \n",
+ " 118.760000 | \n",
+ " 6.950000 | \n",
+ " 21.000000 | \n",
+ " 1.2650 | \n",
+ " 14.845000 | \n",
+ " 11.845000 | \n",
+ "
\n",
+ " \n",
+ " | ProteinRahka | \n",
+ " 1.620931e+09 | \n",
+ " 175.000000 | \n",
+ " 117.250000 | \n",
+ " 10.500000 | \n",
+ " 0.350000 | \n",
+ " 17.500000 | \n",
+ " 0.1800 | \n",
+ " 10.330000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | MilkSoup | \n",
+ " 1.620793e+09 | \n",
+ " 330.000000 | \n",
+ " 495.380000 | \n",
+ " 61.360000 | \n",
+ " 16.930000 | \n",
+ " 15.430000 | \n",
+ " 5.1800 | \n",
+ " 4.710000 | \n",
+ " 3.510000 | \n",
+ "
\n",
+ " \n",
+ " | FakeChickenVeggies | \n",
+ " 1.620210e+09 | \n",
+ " 163.000000 | \n",
+ " 277.720000 | \n",
+ " 17.490000 | \n",
+ " 16.100000 | \n",
+ " 13.890000 | \n",
+ " 1.4200 | \n",
+ " 2.950000 | \n",
+ " 3.920000 | \n",
+ "
\n",
+ " \n",
+ " | CreamPotatoes | \n",
+ " 1.620579e+09 | \n",
+ " 430.000000 | \n",
+ " 538.550000 | \n",
+ " 43.720000 | \n",
+ " 31.170000 | \n",
+ " 13.850000 | \n",
+ " 14.3300 | \n",
+ " 3.300000 | \n",
+ " 2.380000 | \n",
+ "
\n",
+ " \n",
+ " | Pancake | \n",
+ " 1.620461e+09 | \n",
+ " 210.000000 | \n",
+ " 403.500000 | \n",
+ " 44.220000 | \n",
+ " 16.290000 | \n",
+ " 13.300000 | \n",
+ " 3.5300 | \n",
+ " 3.320000 | \n",
+ " 1.400000 | \n",
+ "
\n",
+ " \n",
+ " | Cheese | \n",
+ " 1.620517e+09 | \n",
+ " 42.714286 | \n",
+ " 140.530000 | \n",
+ " 0.000000 | \n",
+ " 10.251429 | \n",
+ " 11.532857 | \n",
+ " 5.9800 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Blov | \n",
+ " 1.620528e+09 | \n",
+ " 300.000000 | \n",
+ " 404.540000 | \n",
+ " 68.980000 | \n",
+ " 7.270000 | \n",
+ " 11.370000 | \n",
+ " 0.8500 | \n",
+ " 8.760000 | \n",
+ " 7.870000 | \n",
+ "
\n",
+ " \n",
+ " | RainbowNoodles | \n",
+ " 1.620367e+09 | \n",
+ " 85.000000 | \n",
+ " 383.350000 | \n",
+ " 53.550000 | \n",
+ " 15.300000 | \n",
+ " 9.350000 | \n",
+ " 7.3100 | \n",
+ " 1.440000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Muesli | \n",
+ " 1.620594e+09 | \n",
+ " 108.750000 | \n",
+ " 425.212500 | \n",
+ " 67.320000 | \n",
+ " 11.857500 | \n",
+ " 9.135000 | \n",
+ " 4.2375 | \n",
+ " 29.040000 | \n",
+ " 6.525000 | \n",
+ "
\n",
+ " \n",
+ " | FakeChicken | \n",
+ " 1.620647e+09 | \n",
+ " 65.000000 | \n",
+ " 92.300000 | \n",
+ " 7.350000 | \n",
+ " 3.250000 | \n",
+ " 8.540000 | \n",
+ " 0.3300 | \n",
+ " 1.020000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | OatmealPorridge | \n",
+ " 1.620911e+09 | \n",
+ " 280.000000 | \n",
+ " 258.880000 | \n",
+ " 34.100000 | \n",
+ " 8.420000 | \n",
+ " 8.400000 | \n",
+ " 1.9000 | \n",
+ " 2.360000 | \n",
+ " 6.600000 | \n",
+ "
\n",
+ " \n",
+ " | FriedFalafel | \n",
+ " 1.621105e+09 | \n",
+ " 80.000000 | \n",
+ " 209.190000 | \n",
+ " 14.810000 | \n",
+ " 11.460000 | \n",
+ " 7.960000 | \n",
+ " 0.9100 | \n",
+ " 3.050000 | \n",
+ " 7.370000 | \n",
+ "
\n",
+ " \n",
+ " | KauraTyynyt | \n",
+ " 1.620907e+09 | \n",
+ " 65.000000 | \n",
+ " 165.100000 | \n",
+ " 25.350000 | \n",
+ " 2.665000 | \n",
+ " 7.800000 | \n",
+ " 0.3250 | \n",
+ " 0.520000 | \n",
+ " 4.290000 | \n",
+ "
\n",
+ " \n",
+ " | TaffelJuustoSnaks | \n",
+ " 1.620405e+09 | \n",
+ " 70.000000 | \n",
+ " 385.000000 | \n",
+ " 35.700000 | \n",
+ " 23.100000 | \n",
+ " 7.000000 | \n",
+ " 4.3400 | \n",
+ " 2.520000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Oatmeal | \n",
+ " 1.620120e+09 | \n",
+ " 50.000000 | \n",
+ " 181.000000 | \n",
+ " 27.000000 | \n",
+ " 3.750000 | \n",
+ " 7.000000 | \n",
+ " 0.6500 | \n",
+ " 0.550000 | \n",
+ " 5.500000 | \n",
+ "
\n",
+ " \n",
+ " | FriedPotatoes | \n",
+ " 1.620922e+09 | \n",
+ " 415.000000 | \n",
+ " 399.010000 | \n",
+ " 53.150000 | \n",
+ " 14.940000 | \n",
+ " 6.390000 | \n",
+ " 1.0800 | \n",
+ " 0.000000 | \n",
+ " 3.200000 | \n",
+ "
\n",
+ " \n",
+ " | Milk | \n",
+ " 1.620455e+09 | \n",
+ " 189.166667 | \n",
+ " 121.066667 | \n",
+ " 0.000000 | \n",
+ " 6.621667 | \n",
+ " 6.053333 | \n",
+ " 4.3500 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | WhiteBeansTomatoSauce | \n",
+ " 1.620481e+09 | \n",
+ " 140.000000 | \n",
+ " 147.000000 | \n",
+ " 25.200000 | \n",
+ " 0.000000 | \n",
+ " 5.600000 | \n",
+ " 0.0000 | \n",
+ " 2.800000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | MashedPotato | \n",
+ " 1.620210e+09 | \n",
+ " 300.000000 | \n",
+ " 241.660000 | \n",
+ " 30.690000 | \n",
+ " 8.380000 | \n",
+ " 5.020000 | \n",
+ " 2.8000 | \n",
+ " 0.000000 | \n",
+ " 1.850000 | \n",
+ "
\n",
+ " \n",
+ " | RoastedVeggies | \n",
+ " 1.620390e+09 | \n",
+ " 325.000000 | \n",
+ " 367.355000 | \n",
+ " 47.370000 | \n",
+ " 16.055000 | \n",
+ " 4.930000 | \n",
+ " 1.1900 | \n",
+ " 4.015000 | \n",
+ " 4.565000 | \n",
+ "
\n",
+ " \n",
+ " | BakedPotatoes | \n",
+ " 1.621105e+09 | \n",
+ " 310.000000 | \n",
+ " 274.480000 | \n",
+ " 40.120000 | \n",
+ " 8.310000 | \n",
+ " 4.830000 | \n",
+ " 0.5900 | \n",
+ " 0.000000 | \n",
+ " 2.410000 | \n",
+ "
\n",
+ " \n",
+ " | WhiteBread | \n",
+ " 1.620238e+09 | \n",
+ " 50.000000 | \n",
+ " 126.500000 | \n",
+ " 22.500000 | \n",
+ " 1.250000 | \n",
+ " 4.700000 | \n",
+ " 0.1500 | \n",
+ " 0.550000 | \n",
+ " 3.050000 | \n",
+ "
\n",
+ " \n",
+ " | GelatiPremium | \n",
+ " 1.621058e+09 | \n",
+ " 84.000000 | \n",
+ " 284.760000 | \n",
+ " 25.790000 | \n",
+ " 17.890000 | \n",
+ " 4.540000 | \n",
+ " 11.0000 | \n",
+ " 23.940000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | SobaChili | \n",
+ " 1.620383e+09 | \n",
+ " 92.000000 | \n",
+ " 200.560000 | \n",
+ " 25.210000 | \n",
+ " 8.560000 | \n",
+ " 4.510000 | \n",
+ " 4.0500 | \n",
+ " 5.520000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | DarkBread | \n",
+ " 1.620278e+09 | \n",
+ " 50.000000 | \n",
+ " 121.000000 | \n",
+ " 21.800000 | \n",
+ " 0.650000 | \n",
+ " 4.100000 | \n",
+ " 0.1000 | \n",
+ " 0.700000 | \n",
+ " 5.850000 | \n",
+ "
\n",
+ " \n",
+ " | Watermelon | \n",
+ " 1.621006e+09 | \n",
+ " 610.000000 | \n",
+ " 183.000000 | \n",
+ " 48.800000 | \n",
+ " 0.000000 | \n",
+ " 3.660000 | \n",
+ " 0.0000 | \n",
+ " 36.600000 | \n",
+ " 2.440000 | \n",
+ "
\n",
+ " \n",
+ " | KeishaCandy | \n",
+ " 1.620747e+09 | \n",
+ " 37.000000 | \n",
+ " 204.610000 | \n",
+ " 17.390000 | \n",
+ " 12.950000 | \n",
+ " 3.000000 | \n",
+ " 6.6600 | \n",
+ " 16.650000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | VanilliIceCream | \n",
+ " 1.620579e+09 | \n",
+ " 90.000000 | \n",
+ " 144.000000 | \n",
+ " 20.250000 | \n",
+ " 5.670000 | \n",
+ " 2.880000 | \n",
+ " 3.6900 | \n",
+ " 17.910000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | SeedAndOilSalad | \n",
+ " 1.621105e+09 | \n",
+ " 150.000000 | \n",
+ " 113.540000 | \n",
+ " 4.270000 | \n",
+ " 9.520000 | \n",
+ " 2.850000 | \n",
+ " 0.7400 | \n",
+ " 2.450000 | \n",
+ " 0.770000 | \n",
+ "
\n",
+ " \n",
+ " | Hummus | \n",
+ " 1.621083e+09 | \n",
+ " 41.500000 | \n",
+ " 115.370000 | \n",
+ " 3.200000 | \n",
+ " 9.875000 | \n",
+ " 2.820000 | \n",
+ " 1.1250 | \n",
+ " 0.085000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | VahvlitortTallinn | \n",
+ " 1.620359e+09 | \n",
+ " 45.000000 | \n",
+ " 227.250000 | \n",
+ " 18.000000 | \n",
+ " 22.950000 | \n",
+ " 2.700000 | \n",
+ " 0.0000 | \n",
+ " 11.250000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | BiscuitRings | \n",
+ " 1.620421e+09 | \n",
+ " 50.000000 | \n",
+ " 270.500000 | \n",
+ " 30.900000 | \n",
+ " 15.050000 | \n",
+ " 2.300000 | \n",
+ " 7.4000 | \n",
+ " 11.550000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Pringles | \n",
+ " 1.621015e+09 | \n",
+ " 50.000000 | \n",
+ " 268.000000 | \n",
+ " 28.000000 | \n",
+ " 16.000000 | \n",
+ " 2.300000 | \n",
+ " 1.5000 | \n",
+ " 1.200000 | \n",
+ " 1.450000 | \n",
+ "
\n",
+ " \n",
+ " | MousseCherry | \n",
+ " 1.620612e+09 | \n",
+ " 31.500000 | \n",
+ " 168.525000 | \n",
+ " 13.040000 | \n",
+ " 11.465000 | \n",
+ " 2.045000 | \n",
+ " 6.6800 | \n",
+ " 9.890000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Pomegranate | \n",
+ " 1.621135e+09 | \n",
+ " 100.000000 | \n",
+ " 83.000000 | \n",
+ " 19.000000 | \n",
+ " 0.000000 | \n",
+ " 1.700000 | \n",
+ " 0.0000 | \n",
+ " 14.000000 | \n",
+ " 4.000000 | \n",
+ "
\n",
+ " \n",
+ " | SourCream | \n",
+ " 1.620409e+09 | \n",
+ " 60.000000 | \n",
+ " 83.400000 | \n",
+ " 2.400000 | \n",
+ " 7.200000 | \n",
+ " 1.680000 | \n",
+ " 4.0200 | \n",
+ " 2.400000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Banana | \n",
+ " 1.620646e+09 | \n",
+ " 136.750000 | \n",
+ " 121.707500 | \n",
+ " 31.232500 | \n",
+ " 0.450000 | \n",
+ " 1.492500 | \n",
+ " 0.0000 | \n",
+ " 16.722500 | \n",
+ " 3.555000 | \n",
+ "
\n",
+ " \n",
+ " | BoiledWokMix | \n",
+ " 1.620922e+09 | \n",
+ " 90.000000 | \n",
+ " 74.330000 | \n",
+ " 4.660000 | \n",
+ " 4.870000 | \n",
+ " 1.440000 | \n",
+ " 0.3700 | \n",
+ " 3.300000 | \n",
+ " 2.290000 | \n",
+ "
\n",
+ " \n",
+ " | GelatelliVeganIceCream | \n",
+ " 1.620411e+09 | \n",
+ " 62.000000 | \n",
+ " 212.040000 | \n",
+ " 21.270000 | \n",
+ " 13.210000 | \n",
+ " 1.430000 | \n",
+ " 9.9200 | \n",
+ " 15.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | BerryMustikaVaarika | \n",
+ " 1.620579e+09 | \n",
+ " 100.000000 | \n",
+ " 85.000000 | \n",
+ " 13.000000 | \n",
+ " 0.000000 | \n",
+ " 0.950000 | \n",
+ " 0.0000 | \n",
+ " 7.200000 | \n",
+ " 4.700000 | \n",
+ "
\n",
+ " \n",
+ " | Salad | \n",
+ " 1.620148e+09 | \n",
+ " 60.000000 | \n",
+ " 6.000000 | \n",
+ " 0.600000 | \n",
+ " 0.120000 | \n",
+ " 0.660000 | \n",
+ " 0.0000 | \n",
+ " 0.300000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Cocoa | \n",
+ " 1.620579e+09 | \n",
+ " 10.000000 | \n",
+ " 37.300000 | \n",
+ " 7.860000 | \n",
+ " 0.290000 | \n",
+ " 0.480000 | \n",
+ " 0.1500 | \n",
+ " 7.660000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | CherryTomatoes | \n",
+ " 1.620744e+09 | \n",
+ " 48.800000 | \n",
+ " 8.784000 | \n",
+ " 1.912000 | \n",
+ " 0.096000 | \n",
+ " 0.430000 | \n",
+ " 0.0000 | \n",
+ " 1.280000 | \n",
+ " 0.584000 | \n",
+ "
\n",
+ " \n",
+ " | Ketchup | \n",
+ " 1.620674e+09 | \n",
+ " 33.571429 | \n",
+ " 34.242857 | \n",
+ " 7.788571 | \n",
+ " 0.000000 | \n",
+ " 0.402857 | \n",
+ " 0.0000 | \n",
+ " 7.654286 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | SaladDressing | \n",
+ " 1.620289e+09 | \n",
+ " 40.000000 | \n",
+ " 103.600000 | \n",
+ " 5.600000 | \n",
+ " 8.920000 | \n",
+ " 0.160000 | \n",
+ " 0.6000 | \n",
+ " 4.320000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | PureOrangeJuice | \n",
+ " 1.621037e+09 | \n",
+ " 134.000000 | \n",
+ " 60.300000 | \n",
+ " 12.595000 | \n",
+ " 0.270000 | \n",
+ " 0.110000 | \n",
+ " 0.0000 | \n",
+ " 12.595000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Sugar | \n",
+ " 1.620373e+09 | \n",
+ " 18.333333 | \n",
+ " 73.333333 | \n",
+ " 18.333333 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 18.333333 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Margarine | \n",
+ " 1.620566e+09 | \n",
+ " 15.600000 | \n",
+ " 98.280000 | \n",
+ " 0.000000 | \n",
+ " 10.920000 | \n",
+ " 0.000000 | \n",
+ " 3.1200 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | SaskiaPeach | \n",
+ " 1.620760e+09 | \n",
+ " 243.333333 | \n",
+ " 38.933333 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 9.733333 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | PickleSlices | \n",
+ " 1.620888e+09 | \n",
+ " 33.750000 | \n",
+ " 18.225000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 4.080000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Orange | \n",
+ " 1.620933e+09 | \n",
+ " 138.333333 | \n",
+ " 69.166667 | \n",
+ " 17.983333 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 11.758333 | \n",
+ " 3.043333 | \n",
+ "
\n",
+ " \n",
+ " | Oil | \n",
+ " 1.620786e+09 | \n",
+ " 15.750000 | \n",
+ " 130.410000 | \n",
+ " 0.000000 | \n",
+ " 14.490000 | \n",
+ " 0.000000 | \n",
+ " 1.1025 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | Honey | \n",
+ " 1.620592e+09 | \n",
+ " 15.000000 | \n",
+ " 9.600000 | \n",
+ " 2.550000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 2.550000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | MonsterEnergy | \n",
+ " 1.620575e+09 | \n",
+ " 500.000000 | \n",
+ " 235.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 55.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | CocaCola | \n",
+ " 1.620441e+09 | \n",
+ " 330.000000 | \n",
+ " 138.600000 | \n",
+ " 34.980000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0000 | \n",
+ " 34.980000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " timestamp grams calories carbs \\\n",
+ "name \n",
+ "Omlette 1.620148e+09 382.000000 680.800000 22.890000 \n",
+ "OmletteWithoutMilk 1.620737e+09 330.000000 665.300000 19.890000 \n",
+ "LeipaJuusto 1.621168e+09 188.000000 518.880000 6.580000 \n",
+ "Egg 1.620818e+09 172.166667 266.858333 1.930000 \n",
+ "ProteinSpaghettiBolognese 1.620805e+09 518.000000 649.075000 118.760000 \n",
+ "ProteinRahka 1.620931e+09 175.000000 117.250000 10.500000 \n",
+ "MilkSoup 1.620793e+09 330.000000 495.380000 61.360000 \n",
+ "FakeChickenVeggies 1.620210e+09 163.000000 277.720000 17.490000 \n",
+ "CreamPotatoes 1.620579e+09 430.000000 538.550000 43.720000 \n",
+ "Pancake 1.620461e+09 210.000000 403.500000 44.220000 \n",
+ "Cheese 1.620517e+09 42.714286 140.530000 0.000000 \n",
+ "Blov 1.620528e+09 300.000000 404.540000 68.980000 \n",
+ "RainbowNoodles 1.620367e+09 85.000000 383.350000 53.550000 \n",
+ "Muesli 1.620594e+09 108.750000 425.212500 67.320000 \n",
+ "FakeChicken 1.620647e+09 65.000000 92.300000 7.350000 \n",
+ "OatmealPorridge 1.620911e+09 280.000000 258.880000 34.100000 \n",
+ "FriedFalafel 1.621105e+09 80.000000 209.190000 14.810000 \n",
+ "KauraTyynyt 1.620907e+09 65.000000 165.100000 25.350000 \n",
+ "TaffelJuustoSnaks 1.620405e+09 70.000000 385.000000 35.700000 \n",
+ "Oatmeal 1.620120e+09 50.000000 181.000000 27.000000 \n",
+ "FriedPotatoes 1.620922e+09 415.000000 399.010000 53.150000 \n",
+ "Milk 1.620455e+09 189.166667 121.066667 0.000000 \n",
+ "WhiteBeansTomatoSauce 1.620481e+09 140.000000 147.000000 25.200000 \n",
+ "MashedPotato 1.620210e+09 300.000000 241.660000 30.690000 \n",
+ "RoastedVeggies 1.620390e+09 325.000000 367.355000 47.370000 \n",
+ "BakedPotatoes 1.621105e+09 310.000000 274.480000 40.120000 \n",
+ "WhiteBread 1.620238e+09 50.000000 126.500000 22.500000 \n",
+ "GelatiPremium 1.621058e+09 84.000000 284.760000 25.790000 \n",
+ "SobaChili 1.620383e+09 92.000000 200.560000 25.210000 \n",
+ "DarkBread 1.620278e+09 50.000000 121.000000 21.800000 \n",
+ "Watermelon 1.621006e+09 610.000000 183.000000 48.800000 \n",
+ "KeishaCandy 1.620747e+09 37.000000 204.610000 17.390000 \n",
+ "VanilliIceCream 1.620579e+09 90.000000 144.000000 20.250000 \n",
+ "SeedAndOilSalad 1.621105e+09 150.000000 113.540000 4.270000 \n",
+ "Hummus 1.621083e+09 41.500000 115.370000 3.200000 \n",
+ "VahvlitortTallinn 1.620359e+09 45.000000 227.250000 18.000000 \n",
+ "BiscuitRings 1.620421e+09 50.000000 270.500000 30.900000 \n",
+ "Pringles 1.621015e+09 50.000000 268.000000 28.000000 \n",
+ "MousseCherry 1.620612e+09 31.500000 168.525000 13.040000 \n",
+ "Pomegranate 1.621135e+09 100.000000 83.000000 19.000000 \n",
+ "SourCream 1.620409e+09 60.000000 83.400000 2.400000 \n",
+ "Banana 1.620646e+09 136.750000 121.707500 31.232500 \n",
+ "BoiledWokMix 1.620922e+09 90.000000 74.330000 4.660000 \n",
+ "GelatelliVeganIceCream 1.620411e+09 62.000000 212.040000 21.270000 \n",
+ "BerryMustikaVaarika 1.620579e+09 100.000000 85.000000 13.000000 \n",
+ "Salad 1.620148e+09 60.000000 6.000000 0.600000 \n",
+ "Cocoa 1.620579e+09 10.000000 37.300000 7.860000 \n",
+ "CherryTomatoes 1.620744e+09 48.800000 8.784000 1.912000 \n",
+ "Ketchup 1.620674e+09 33.571429 34.242857 7.788571 \n",
+ "SaladDressing 1.620289e+09 40.000000 103.600000 5.600000 \n",
+ "PureOrangeJuice 1.621037e+09 134.000000 60.300000 12.595000 \n",
+ "Sugar 1.620373e+09 18.333333 73.333333 18.333333 \n",
+ "Margarine 1.620566e+09 15.600000 98.280000 0.000000 \n",
+ "SaskiaPeach 1.620760e+09 243.333333 38.933333 0.000000 \n",
+ "PickleSlices 1.620888e+09 33.750000 18.225000 0.000000 \n",
+ "Orange 1.620933e+09 138.333333 69.166667 17.983333 \n",
+ "Oil 1.620786e+09 15.750000 130.410000 0.000000 \n",
+ "Honey 1.620592e+09 15.000000 9.600000 2.550000 \n",
+ "MonsterEnergy 1.620575e+09 500.000000 235.000000 0.000000 \n",
+ "CocaCola 1.620441e+09 330.000000 138.600000 34.980000 \n",
+ "\n",
+ " fat protein saturated_fat sugar \\\n",
+ "name \n",
+ "Omlette 46.780000 35.340000 6.8200 2.520000 \n",
+ "OmletteWithoutMilk 46.630000 34.840000 6.8200 0.420000 \n",
+ "LeipaJuusto 41.360000 30.080000 26.3200 5.260000 \n",
+ "Egg 18.250000 21.693333 0.0000 0.000000 \n",
+ "ProteinSpaghettiBolognese 6.950000 21.000000 1.2650 14.845000 \n",
+ "ProteinRahka 0.350000 17.500000 0.1800 10.330000 \n",
+ "MilkSoup 16.930000 15.430000 5.1800 4.710000 \n",
+ "FakeChickenVeggies 16.100000 13.890000 1.4200 2.950000 \n",
+ "CreamPotatoes 31.170000 13.850000 14.3300 3.300000 \n",
+ "Pancake 16.290000 13.300000 3.5300 3.320000 \n",
+ "Cheese 10.251429 11.532857 5.9800 0.000000 \n",
+ "Blov 7.270000 11.370000 0.8500 8.760000 \n",
+ "RainbowNoodles 15.300000 9.350000 7.3100 1.440000 \n",
+ "Muesli 11.857500 9.135000 4.2375 29.040000 \n",
+ "FakeChicken 3.250000 8.540000 0.3300 1.020000 \n",
+ "OatmealPorridge 8.420000 8.400000 1.9000 2.360000 \n",
+ "FriedFalafel 11.460000 7.960000 0.9100 3.050000 \n",
+ "KauraTyynyt 2.665000 7.800000 0.3250 0.520000 \n",
+ "TaffelJuustoSnaks 23.100000 7.000000 4.3400 2.520000 \n",
+ "Oatmeal 3.750000 7.000000 0.6500 0.550000 \n",
+ "FriedPotatoes 14.940000 6.390000 1.0800 0.000000 \n",
+ "Milk 6.621667 6.053333 4.3500 0.000000 \n",
+ "WhiteBeansTomatoSauce 0.000000 5.600000 0.0000 2.800000 \n",
+ "MashedPotato 8.380000 5.020000 2.8000 0.000000 \n",
+ "RoastedVeggies 16.055000 4.930000 1.1900 4.015000 \n",
+ "BakedPotatoes 8.310000 4.830000 0.5900 0.000000 \n",
+ "WhiteBread 1.250000 4.700000 0.1500 0.550000 \n",
+ "GelatiPremium 17.890000 4.540000 11.0000 23.940000 \n",
+ "SobaChili 8.560000 4.510000 4.0500 5.520000 \n",
+ "DarkBread 0.650000 4.100000 0.1000 0.700000 \n",
+ "Watermelon 0.000000 3.660000 0.0000 36.600000 \n",
+ "KeishaCandy 12.950000 3.000000 6.6600 16.650000 \n",
+ "VanilliIceCream 5.670000 2.880000 3.6900 17.910000 \n",
+ "SeedAndOilSalad 9.520000 2.850000 0.7400 2.450000 \n",
+ "Hummus 9.875000 2.820000 1.1250 0.085000 \n",
+ "VahvlitortTallinn 22.950000 2.700000 0.0000 11.250000 \n",
+ "BiscuitRings 15.050000 2.300000 7.4000 11.550000 \n",
+ "Pringles 16.000000 2.300000 1.5000 1.200000 \n",
+ "MousseCherry 11.465000 2.045000 6.6800 9.890000 \n",
+ "Pomegranate 0.000000 1.700000 0.0000 14.000000 \n",
+ "SourCream 7.200000 1.680000 4.0200 2.400000 \n",
+ "Banana 0.450000 1.492500 0.0000 16.722500 \n",
+ "BoiledWokMix 4.870000 1.440000 0.3700 3.300000 \n",
+ "GelatelliVeganIceCream 13.210000 1.430000 9.9200 15.000000 \n",
+ "BerryMustikaVaarika 0.000000 0.950000 0.0000 7.200000 \n",
+ "Salad 0.120000 0.660000 0.0000 0.300000 \n",
+ "Cocoa 0.290000 0.480000 0.1500 7.660000 \n",
+ "CherryTomatoes 0.096000 0.430000 0.0000 1.280000 \n",
+ "Ketchup 0.000000 0.402857 0.0000 7.654286 \n",
+ "SaladDressing 8.920000 0.160000 0.6000 4.320000 \n",
+ "PureOrangeJuice 0.270000 0.110000 0.0000 12.595000 \n",
+ "Sugar 0.000000 0.000000 0.0000 18.333333 \n",
+ "Margarine 10.920000 0.000000 3.1200 0.000000 \n",
+ "SaskiaPeach 0.000000 0.000000 0.0000 9.733333 \n",
+ "PickleSlices 0.000000 0.000000 0.0000 4.080000 \n",
+ "Orange 0.000000 0.000000 0.0000 11.758333 \n",
+ "Oil 14.490000 0.000000 1.1025 0.000000 \n",
+ "Honey 0.000000 0.000000 0.0000 2.550000 \n",
+ "MonsterEnergy 0.000000 0.000000 0.0000 55.000000 \n",
+ "CocaCola 0.000000 0.000000 0.0000 34.980000 \n",
+ "\n",
+ " fiber \n",
+ "name \n",
+ "Omlette 1.650000 \n",
+ "OmletteWithoutMilk 0.600000 \n",
+ "LeipaJuusto 0.000000 \n",
+ "Egg 0.000000 \n",
+ "ProteinSpaghettiBolognese 11.845000 \n",
+ "ProteinRahka 0.000000 \n",
+ "MilkSoup 3.510000 \n",
+ "FakeChickenVeggies 3.920000 \n",
+ "CreamPotatoes 2.380000 \n",
+ "Pancake 1.400000 \n",
+ "Cheese 0.000000 \n",
+ "Blov 7.870000 \n",
+ "RainbowNoodles 0.000000 \n",
+ "Muesli 6.525000 \n",
+ "FakeChicken 0.000000 \n",
+ "OatmealPorridge 6.600000 \n",
+ "FriedFalafel 7.370000 \n",
+ "KauraTyynyt 4.290000 \n",
+ "TaffelJuustoSnaks 0.000000 \n",
+ "Oatmeal 5.500000 \n",
+ "FriedPotatoes 3.200000 \n",
+ "Milk 0.000000 \n",
+ "WhiteBeansTomatoSauce 0.000000 \n",
+ "MashedPotato 1.850000 \n",
+ "RoastedVeggies 4.565000 \n",
+ "BakedPotatoes 2.410000 \n",
+ "WhiteBread 3.050000 \n",
+ "GelatiPremium 0.000000 \n",
+ "SobaChili 0.000000 \n",
+ "DarkBread 5.850000 \n",
+ "Watermelon 2.440000 \n",
+ "KeishaCandy 0.000000 \n",
+ "VanilliIceCream 0.000000 \n",
+ "SeedAndOilSalad 0.770000 \n",
+ "Hummus 0.000000 \n",
+ "VahvlitortTallinn 0.000000 \n",
+ "BiscuitRings 0.000000 \n",
+ "Pringles 1.450000 \n",
+ "MousseCherry 0.000000 \n",
+ "Pomegranate 4.000000 \n",
+ "SourCream 0.000000 \n",
+ "Banana 3.555000 \n",
+ "BoiledWokMix 2.290000 \n",
+ "GelatelliVeganIceCream 0.000000 \n",
+ "BerryMustikaVaarika 4.700000 \n",
+ "Salad 0.000000 \n",
+ "Cocoa 0.000000 \n",
+ "CherryTomatoes 0.584000 \n",
+ "Ketchup 0.000000 \n",
+ "SaladDressing 0.000000 \n",
+ "PureOrangeJuice 0.000000 \n",
+ "Sugar 0.000000 \n",
+ "Margarine 0.000000 \n",
+ "SaskiaPeach 0.000000 \n",
+ "PickleSlices 0.000000 \n",
+ "Orange 3.043333 \n",
+ "Oil 0.000000 \n",
+ "Honey 0.000000 \n",
+ "MonsterEnergy 0.000000 \n",
+ "CocaCola 0.000000 "
+ ]
+ },
+ "execution_count": 27,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.groupby('name').mean().sort_values('protein', ascending=False)"
+ ]
+ }
+ ],
+ "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.9.4"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/analyze.py b/analyze.py
index 8d327c6..d0a2a8f 100644
--- a/analyze.py
+++ b/analyze.py
@@ -119,7 +119,8 @@ total_words = 0
word_frequency = Counter()
total_csv = [['day', 'entries', 'words']]
-daily_csv = [['day', 'entries', 'words', 'calories', 'protein']]
+daily_csv = [['day', 'entries', 'words', 'calories', 'carbs', 'fat', 'protein',
+ 'sugar']]
entry_csv = [['timestamp', 'words']]
words_csv = [['word', 'count']]
@@ -137,6 +138,9 @@ for fpath in sorted((Path.home() / 'workspace' / 'journal').glob('*.md')):
daily_words = 0
daily_calories = 0.0
daily_protein = 0.0
+ daily_carbs = 0.0
+ daily_fat = 0.0
+ daily_sugar = 0.0
for (timestamp, content) in sorted(entries, key=lambda x: x[0]):
timestamp = int(datetime.strptime(timestamp, '%Y-%m-%d %H:%M:%S').timestamp())
@@ -183,6 +187,9 @@ for fpath in sorted((Path.home() / 'workspace' / 'journal').glob('*.md')):
daily_calories += food.get('Energy', 0.0)
daily_protein += food.get('Protein', 0.0)
+ daily_fat += food.get('Fat', 0.0)
+ daily_carbs += food.get('Carbs', 0.0)
+ daily_sugar += food.get('Sugar', 0.0)
words = ''.join(
c if c in string.ascii_letters+"'" else ' '
@@ -196,8 +203,19 @@ for fpath in sorted((Path.home() / 'workspace' / 'journal').glob('*.md')):
entry_csv.append([timestamp, entry_words])
- daily_csv.append([day, daily_entries, daily_words, daily_calories,
- daily_protein])
+ daily_macros = daily_protein + daily_fat + daily_carbs
+
+ daily_csv.append([
+ day,
+ daily_entries,
+ daily_words,
+ round(daily_calories, 2),
+ round(100 * (daily_carbs / daily_macros) if daily_carbs else 0, 2),
+ round(100 * (daily_fat / daily_macros) if daily_fat else 0, 2),
+ round(100 * (daily_protein / daily_macros) if daily_protein else 0, 2),
+ round(daily_protein, 2),
+ round(daily_sugar, 2)
+ ])
total_entries += daily_entries
total_words += daily_words
diff --git a/foods b/foods
index 641511c..61c3b52 100644
--- a/foods
+++ b/foods
@@ -1,4 +1,72 @@
+CheesePizza
+Energy 210kcal
+Fat 5.3g
+SaturatedFat 2.4g
+Carbs 30.6g
+Sugar 3.9g
+Protein 8.9g
+Salt 0.9g
+
+ChiliBeans
+Energy 85kcal
+Carbs 12g
+Sugar 2.5g
+Fiber 5.8g
+Protein 6.0g
+Salt 0.65g
+
+ProteinPowder
+Energy 369kcal
+Fat 5.4g
+SaturatedFat 3.4g
+Carbs 7.2g
+Sugar 6.8g
+Protein 72.0g
+Salt 0.3g
+
+KasviGrillimakkara
+Energy 234kcal
+Fat 15.2g
+SaturatedFat 5.9g
+Carbs 12.1g
+Fiber 4.5g
+Protein 10.0g
+Salt 1.55g
+
+Remoulade
+Energy 486kcal
+Fat 50.3g
+SaturatedFat 4.0g
+Carbs 7.0g
+Sugar 5.2g
+Protein 0.8g
+Salt 1.04
+
+ItaliamoGlassate
+Energy 537kcal
+Fat 32g
+SaturatedFat 19g
+Carbs 54g
+Sugar 25g
+Protein 7.3g
+Salt 1g
+
+LeipaJuusto
+Energy 276kcal
+Fat 22g
+SaturatedFat 14g
+Carbs 3.5g
+Sugar 2.8g
+Protein 16g
+
+Pomegranate
+Energy 83kcal
+Carbs 19g
+Fiber 4g
+Sugar 14g
+Protein 1.7g
+
RainbowNoodles
Energy 451kcal
Fat 18g
@@ -36,6 +104,13 @@ SaturatedFat 2.3g
Protein 3.2g
Salt 0.1g
+SkimMilk
+Energy 46kcal
+Fat 1.5g
+SaturatedFat 1.0g
+Protein 3.4g
+Salt 0.1g
+
BellPepper
Energy 31kcal
Protein 1g
@@ -196,6 +271,14 @@ Sugar 2.5g
Fiber 4g
Protein 13g
+TricolorePasta
+Energy 351kcal
+Fat 1.4g
+SaturatedFat 0.3g
+Carbs 72g
+Sugar 3.9g
+Protein 11g
+
SaskiaPeach
Energy 16kcal
Sugar 4g
@@ -323,6 +406,14 @@ Sugar 19.9g
Protein 3.2g
Salt 0.12g
+Strawberry
+Energy 33kcal
+Carbs 8g
+Fiber 2g
+Sugar 4.9g
+Protein 0.7g
+Fat 0.3g
+
Cocoa
Energy 373kcal
Fat 2.9g
@@ -394,6 +485,75 @@ Sugar 6g
Fiber 0.4g
Protein 0.6g
+Pringles
+Energy 536kcal
+Fat 32g
+SaturatedFat 3g
+Carbs 56g
+Sugar 2.4g
+Fiber 2.9g
+Protein 4.6g
+Salt 1.4g
+
+GelatiPremium
+Energy 339kcal
+Fat 21.3g
+SaturatedFat 13.1g
+Carbs 30.7g
+Sugar 28.5g
+Protein 5.4g
+Salt 0.08g
+
+Hummus
+Energy 278kcal
+Fat 23.8g
+SaturatedFat 2.7g
+Carbs 7.7g
+Sugar 0.2g
+Protein 6.8g
+Salt 0.92g
+
+PureOrangeJuice
+Energy 45kcal
+Fat 0.2g
+Carbs 9.4g
+Sugar 9.4g
+Protein 0.08g
+
+Cucumber
+Energy 15kcal
+Carbs 3.6g
+Sugar 1.7g
+Fiber 0.5g
+Protein 0.7g
+
+Falafel
+Energy 219kcal
+Fat 8.5g
+SaturatedFat 0.7g
+Carbs 19.9g
+Sugar 4.1g
+Fiber 9.9g
+Protein 10.7g
+Salt 1.4g
+
+SunflowerSeeds
+Energy 616kcal
+Fat 53.9g
+SaturatedFat 4.5g
+Carbs 5.1g
+Sugar 3.4g
+Protein 21.4g
+Salt 0.05
+
+HalloumiCheese
+Energy 319kcal
+Fat 25g
+SaturatedFat 16g
+Carbs 1.5g
+Protein 22.0g
+Salt 2.7g
+
---
Omlette
@@ -483,3 +643,30 @@ Oatmeal 150g
Margarine 14g
Honey 25g
TOTAL 700g
+
+BakedPotatoes
+Potato 1440g
+Oil 40g
+
+SeedAndOilSalad
+Salad 120g
+Cucumber 120g
+CherryTomatoes 120g
+Oil 15g
+SunflowerSeeds 20g
+
+FriedFalafel
+Falafel 400g
+Oil 30g
+
+PastaSalad
+TricolorePasta 500g
+Salad 300g
+Oil 20g
+SaladDressing 65g
+TOTAL 1675g
+
+ProteinShake
+SkimMilk 400g
+ProteinPowder 60g
+