beancount / smart_importer

Augment Beancount importers with machine learning functionality.
MIT License
246 stars 28 forks source link

Checker for potential mistakes #85

Closed gety9 closed 5 years ago

gety9 commented 5 years ago

Guys hi,

I think it will be very useful to have option to check main ledger file for potential mistakes. It will be useful for transactions that you enter manually (for example cash) You feed to smart importer your main ledger file and it goes through it and than outputs entries which are possibly incorrect, so you can look them through and quickly double check that everything is right.

For example if you have lots of entries like these:

2018-05-10 * "Whole Foods"
  Assets:Cash                                          -61.95 USD
  Expenses:Food

2018-05-17 * "Whole Foods"
  Assets:Cash                                          -31.10 USD
  Expenses:Food

and than by mistake entered this:

2018-06-01 * "Whole Foods"
  Assets:Cash                                          -41.44 USD
  Expenses:Phone

this functionality will help you to quickly look through entries that might be wrong without need to go through all main file manually.

johannesjh commented 5 years ago

Nice idea, but it does not really fit the import usecase in my opinion. I see checking existing data as a fundamentally different usecase, in contrast to importing new data, which is what the smart_importer addresses. Also outlier detection is probably/maybe (?) a different machine learning task than classification, which is what is used in the smart_importer project.

For these reasons, if that's ok for you, I would like to propose: Please feel free to create a script that performs such checks, but let's keep it separate from the smart_importer codebase. Feel free, of course, to use and abuse the existing smart_importer source code for your script :-)