Thanks for your latest email with more detailed user instructions. I'll take a look. It could take some time ...
Hi Bloubul,
Well Ive tested Lottoselector extensively and examined the code for the 3 bins macro and here are my conclusions:-
The good news is it is working perfectly, needs no amendments which is just as well as it is copyrighted.
I think the issue you are facing arises as a result of the data you are feeding in. The 3 bins feature is particularly sensitive to the integrity of the dataset you input. Built into the reading procedure is a mechanism that looks for a homogeneous build up of frequencies/skips with no dead balls or inconsistencies or skews in balance of the lottery. If it encounters any it simply aborts the process with no output.
I created 2 test files:-
testset 59 ...highest ball number 59 .. works 1000 draws
testset 80....highest ball number 80 .. works 1000 draws
I have emailed you all the test files.
This proves that the reason some files do not work has nothing to do with the highest ball number.
The data files you sent me had some datasets that worked and others that didn't. Here is a rundown of the outcomes.
1.russia_649 (works OK, with sufficient draws) is a pure 649 database
2. lunch.txt (works OK , with sufficient draws) as it is a uniform 649 file throughout.
3.powerball.txt doesnt work because it is a mixed matrix set of results. The highest ball number is 45 up to draw 896 then it changes to up to highest ball 50 for the rest of the draws. 3 bins method does not like this at all, sees ball 50 missing for too long over lotto history and throws it out. No output.
I split the powerball.txt results into 2 files :-
a) powerball_45 with 896 draws (renumbered 1 to 896) it works.
b) powerball_50 with only 34 (most recent) draws. Doesn't work because there are not enough draws in the file for it to check for a balanced set.
4.usa powerball.txt doesnt work because it mixes 3 matrices in a single file.The first 1093 draws are 549 matrix, followed by 1356 draws using 559 matrix, followed by 318 draws using 569 matrix. And you wondered why it didnt' work ??
I have split this file into 3 files :-
a) usapowerball_49 which is a pure 549 file for the first 1093 draws, it works
b) usapowerball_59 which is a pure 559 file for the next 1356 draws, it works.
Note that they need to be renumbered to start from draw 1 for it to work (even though its not really draw 1).
c) usapowerball_69 which is a pure 569 file which has 318 or so draws, not enough data for the 3 bins method to work.
I have found out by running tests that for a lottery with up to 69 numbers even 500 draws might not be enough data for the programme to be happy that the data set is balanced with no dead balls. It would give no output.
In fact I created test sets of 559 matrix results, 500 draws in each and
some sets worked in 3 bins, some sets didn't. The difference seems to be balance across the lottery is needed.
Try 559TEST_FAILS and try 559TEST_WORKS, both 500 draws - one works the other fails, for the reasons mentioned. A 569 lottery needs even more draws before a balance can be seen.
I have included all the test files and reconfigured powerball files in a zip file in my email to you.
Just an observation, if you are using any application, be it Excel or otherwise to predict the next draw, I would suggest it needs to be working on a dataset that agrees with with the current lottery matrix in question. If you mix your results with ancient results on a different matrix you cannot expect the prediction process to be accurate. Just because other parts of Lottoselector give an output, it doesnt mean they are of any use or meaningful, if you mix up data sets. Im sure Nick Koutras wasnt expecting mixed datasets being imported when he designed this programme.