Improve the usability of the Daylio CSV export and explore reports around your data
This Python 3 CLI took will convert a Daylio CSV export into a more usable CSV and a SQLite database. There are also options to generate reports using stats regression models to find patterns, but this is less needed since Daylio added counts and correlations into their app UI.
What is Daylio? Read on this doc page.
This daylio-csv-parser application parses a CSV exported from Daylio (in premium mode) to create a more useful CSV.
In particular, the activities column with multiple activities listed in a single cell is split out into multiple columns, with appropriate names and values as 0
or 1
.
A summary of the command-line API is covered below.
Run the main script to read CSV exported from Daylio at a configured location and create a clean CSV.
$ make csv
Assuming you have created a clean CSV using the step above, you can run any of these commands if you wish to. The order does not matter.
Create a database file from the cleaned CSV. You can then access data in the database.
$ make db
View a report around mood score aggregate stats.
$ ./mood_report.py
View a report on a stats model which was fitted your data.
$ ./fit_model.py
Released under MIT by @MichaelCurrin.