I’m a regular user of the StackOverflow forum, but as this question is about a recommendation for libraries, which is supported at StackOverflow, and as my question is about data science libraries, I’ve decided to take my chance here (my original question has been kicked from the "Artificial Intelligence forum").
I’m developping a program that takes a table of a database and predicts the next (limited list of) tupple(s),
e.g. for the following table:
A B C D ================ 1 12 0 A 2 14 0 A 3 16 0 A 4 18 0 A 5 20 0 A
I would like to predict the following tupple:
A B C D ================ 6 22 0 A
For that, I have created two SQL queries:
SELECT COUNT DISTINCT ...
=> if the result is 1, then all values are equal, easy peasy 🙂
SELECT MAX(col1-lag_col1) FROM ( SELECT Col1, LAG(Col1) ... (take the difference between subsequent tupples)
=> If both maximum and minimum are equal and not zero, there’s an arithmetic progression (more information here).
I thought I was on a good track, but then the first problems started arising:
In a list of +800 tupples, the arithmetic progression was disturbed by one single erroneous entry, messing up my prediction.
I have seen values like AB123, AB124, AB125, …: although this is easy for a person to predict, it’s not that straightforward for a computer (and what in case of ABC12x or AB12, AC12, AD12, …?).
In both cases, the key solution is pattern recognition: if I can feed the values to a pattern recogniser, it might find the pattern (and maybe the values, messing it up) and I might use that for predicting the next tupple(s).
What’s the programmers term for pattern recognition? Right: it’s A.I., artificial intelligence, more exactly data science. But as most of you know, that’s an enormously broad term.
Therefore I’m risking my chances here: does anybody know about a library (or whatever) I might use in my C# program in order to find patterns and predict values (numbers, strings and their combinations)?