Percentile Values for Winning Number History (base on skip n

Percentile Values for Winning Number History (base on skip n

Postby sysp34 » Thu Feb 28, 2008 5:35 am

stan and EL members

just a though adding Percentile Values for default statistics.

Percentile Values. Values of a quantitative variable that divide the ordered data into groups so that a certain percentage is above and another percentage is below. Quartiles (the 25th, 50th, and 75th percentiles) divide the observations into four groups of equal size. If you want an equal number of groups other than four, select Cut points for n equal groups. You can also specify individual percentiles (for example, the 95th percentile, the value below which 95% of the observations fall).

well EL have Min, Avg, Med*, and Max which is similar/equal with percentile values:

Q0 = Minimum Skip
Q1
Q2 = Average Skip
Q3
Q4 = Maximum Skip

Image

Thanks to ImageShack for Free Image Hosting

if we can get the Q1 and Q3 (read as part of skip limiter (min,Q1,Q2,Q3,QM1,QM2,QM3,Max)) i believe after xyz attempt/trials we can "knew" some number, number groups, segment and other filters will be appear within percentile values or near to percentile values, is it?


good luck
You do not have the required permissions to view the files attached to this post.
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am

Percentile Value for P5 36/39

Postby sysp34 » Fri Feb 29, 2008 9:46 pm

ops i make a mistake using minimum function to count the stats from each position.

here are an overall position for skip history, the workout designed for P5 36/39

(the same files as above thread)

good luck
You do not have the required permissions to view the files attached to this post.
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am

Postby stan » Sat Mar 01, 2008 7:29 pm

i'm not sure it's possible to calculate the percentiles in a single pass of evaluated data. there might be some approximation trick (like the one i used for median) but i'm not sure it'd be any good then
Expert Lotto Team
User avatar
stan
Site Admin
 
Posts: 6338
Joined: Thu Sep 23, 2004 1:01 pm

Postby Midas » Sun Mar 02, 2008 12:20 pm

The functions for percentiles (Q1), Q(2), Q(3), Interquartile Range (IQR),Semiquartile Deviation (SID), kth percentile can be obtained from the original median calculation. I use the freely available public domain Octave toolbox to derive these parameters in a few lines of code. The code is transparent and should be easily transportable to java or any other language with minor adaptation.

Sysp34, check out IQR and SID. Interesting?.

More importantly you forgot to pinpoint the importance of outliers in percentile tracking. I have included below this jackpot winning feature just for EL.

Good Luck ;-)
Midas

The Octave Toolbox


GNU Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with Matlab. It may also be used as a batch-oriented language.Octave has extensive tools for solving common numerical linear algebra problems, finding the roots of nonlinear equations, integrating ordinary functions, manipulating polynomials, and integrating ordinary differential and differential-algebraic equations. It is easily extensible and customizable via user-defined functions written in Octave's own language, or using dynamically loaded modules written in C++, C, Fortran, or other languages.

GNU Octave is also freely redistributable software. You may redistribute it and/or modify it under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation.Octave was written by John W. Eaton and many others. Because Octave is free software you are encouraged to help make Octave more useful by writing and contributing additional functions for it, and by reporting any problems you may have.



Algorithm

% STEP 1 – We need to rank and the data in order from representative
sample (small set).

(Btw use the same trick as last time first shuffle the sequence then
sample the distribution by ‘bootstrapping’the sample within
confidence interval to get a small nice representative set of the
distribution.

THEN sort the small representative sample in order and compute the
MEDIAN as last time. Use this universal value in the algorithm
below.)

% The following code should be transparent. The built in function
‘find’ is explained at the end, there are java versions of this
function which can easily be adapted.

% Please note all the various statistics are easily derived
from simple median equations.

Given a small representative ‘dataset (x)’ derived from preprocessing above

Let:

y = sort(x);

% compute 25th percentile (first quartile)
Q(1) = median(y(find(y<median(y))));

% compute 50th percentile (second quartile)
Q(2) = median(y);

% compute 75th percentile (third quartile)
Q(3) = median(y(find(y>median(y))));

% compute Interquartile Range (IQR)
IQR = Q(3)-Q(1);

% compute Semi Interquartile Deviation (SID)
% The importance and implication of the SID is that if you
% start with the median and go 1 SID unit above it
% and 1 SID unit below it, you should (normally)
% account for 50% of the data in the original data set

SID = IQR/2;

% determine extreme Q1 outliers (e.g., x < Q1 - 3*IQR)
iy = find(y<Q(1)-3*IQR);
if length(iy)>0,
outliersQ1 = y(iy);
else
outliersQ1 = [];
end

% determine extreme Q3 outliers (e.g., x > Q1 + 3*IQR)
iy = find(y>Q(1)+3*IQR);
if length(iy)>0,
outliersQ3 = y(iy)
else
outliersQ3 = [];
end

% compute total number of outliers
Noutliers = length(outliersQ1)+length(outliersQ3);

% display results

disp(['Mean: ',num2str(mx)]);
disp(['Standard Deviation: ',num2str(sigma)]);
disp(['Median: ',num2str(medianx)]);
disp(['25th Percentile: ',num2str(Q(1))]);
disp(['50th Percentile: ',num2str(Q(2))]);
disp(['75th Percentile: ',num2str(Q(3))]);
disp(['Semi Interquartile Deviation: ',num2str(SID)]);
disp(['Number of outliers: ',num2str(Noutliers)]);


% Percentile Calculation an Example

% define percent
kpercent = 75;

% STEP 1 - rank the data
y = sort(x);

% STEP 2 - find k% (k /100) of the sample size, n.
k = kpercent/100;
result = k*Nx;

% STEP 3 - if this is an integer, add 0.5. If it isn't an integer round up.
[N,D] = rat(k*Nx);
if isequal(D,1), % k*Nx is an integer, add 0.5
result = result+0.5;
else % round up
result = round(result);
end

% STEP 4 - Find the number in this position. If your depth ends
% in 0.5, then take the midpoint between the two numbers.
[T,R] = strtok(num2str(result),'0.5');
if strcmp(R,'.5'),
Qk = mean(y(result-0.5:result+0.5));
else
Qk = y(result);
end

% display result
fprintf(1,['
The ',num2str(kpercent),'th percentile is ',num2str(Qk),'.

']);


______________________________________________________________________________________________________________________________________________________________
% Octave Built in Function (Btw easily transportable code)

FIND Find indices of nonzero elements.
I = FIND(X) returns the linear indices of the array X that are
nonzero. X may be a logical expression.
Use IND2SUB(I,SIZE(X)) to calculate
multiple subscripts from the linear indices I.

I = FIND(X,K) returns at most the first K indices of X that are
nonzero. K must be a positive integer, but can be of any numeric
type.

I = FIND(X,K,'first') is the same as I = FIND(X,K).

I = FIND(X,K,'last') returns at most the last K indices of X
That are nonzero.

[I,J] = FIND(X,...) returns the row and column indices instead of
linear indices into X. This syntax is especially useful when
working with sparse matrices. If X is an N-dimensional array
where N > 2, then
J is a linear index over the N-1 trailing dimensions of X.

[I,J,V] = FIND(X,...) also returns a vector V containing the
values that correspond to the row and column indices I and J.
If X is a logical expression, then V will contain the values
returned after evaluating that expression.

%Examples:
Let

X = [1 0 4 -3 0 0 0 8 6];

‘Using Octave’

indices = find(X); returns linear indices for the nonzero entries of

X.

indices =

1 3 4 8 9



You can use a logical expression to define X. For example,
find(X > 2); returns the linear indices corresponding to the entries of X that are greater than 2.

ans =

3 8 9

The following commands
Let:

X = [3 2 0; -5 0 7; 0 0 1];
[i,j,v] = find(X)

return

i =

1
2
1
2
3



a vector of row indices of the nonzero entries of X,

j =

1
1
2
3
3



a vector of column indices of the nonzero entries of X, and

v =

3
-5
2
7
1



a vector containing the nonzero entries of X.

Some operations on a vector

Let:

x = [11 0 33 0 55]';

find(x)

ans =

1
3
5

find(x == 0)

ans =

2
4

find(0 < x & x < 10*pi)

ans =

1



For the matrix

M = magic(3)

M =

8 1 6
3 5 7
4 9 2

find(M > 3, 4)



returns the indices of the first four entries of M that are greater than 3.

ans =

1
3
5
6



If X is a vector of all zeros, find(X) returns an empty, 0-by-1 matrix. For example:

indices = find([0;0;0])

indices =

Empty matrix: 0-by-1 .................QED.
Midas
 
Posts: 144
Joined: Wed Apr 19, 2006 7:20 pm

Postby sysp34 » Mon Mar 03, 2008 8:21 am

[quote=Midas]
The functions for percentiles (Q1), Q(2), Q(3), Interquartile Range (IQR),Semiquartile Deviation (SID), kth percentile can be obtained from the original median calculation. I use the freely available public domain Octave toolbox to derive these parameters in a few lines of code. The code is transparent and should be easily transportable to java or any other language with minor adaptation.

Sysp34, check out IQR and SID. Interesting?.

More importantly you forgot to pinpoint the importance of outliers in percentile tracking. I have included below this jackpot winning feature just for EL.

[/quote]

Midas, thank for great info.

yup the Interquartile Range (IQR),Semiquartile Deviation (SID), kth percentile very interesting, longtime ago i've use this technique when creating some spreadsheet for pick 3/4 unfortunately those day i can't find skip formula to track the skip history only last week i took little bit workout to create skip formula and it work, thank to carbob who enlighten me about skip formula and mrexcell folks.

the idea from above table might be similar with Interquartile Range (IQR)
Q1 = minimum
Q2 = 25%
Q3 = 50%
QM1 = Q1 between Q3 - Max (Q4)
QM2 = Q2 between Q3 - Max (Q4)
QM3 = Q3 between Q3 - Max (Q4)

although the percentile function tough to use in lotto numbers itself (tickets number: 1 to xx) but one or two number will be trapped in this function. also i thought it might be work on other filters like: number group, segment, even/odd, low/high, sum group, etc.

about Interquartile Range (IQR) actually i like to add some function in Morefunc created by Laurent Longre

Image


Image

but the impact only a smooth skip limit, unfortunately it took a while for Klamath in the process :((

an experimenting using percentile value as prediction segment pattern

Image

Thanks to ImageShack for Free Image Hosting

thank and good luck
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am

Postby sysp34 » Tue Mar 04, 2008 4:41 am

Result for Mon, Mar 3, 2008

Cash 3 3-4-7

2 of 3 (boxed) 8-7-3
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am

FL Cash 3 Result 8-9-6 Review

Postby sysp34 » Wed Mar 05, 2008 10:26 am

only a review using percentile values as prediction WNH-Segment in segment size 10/10

Image
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am

Pick 3 segment 10/10 hit and skip analysis

Postby sysp34 » Thu Mar 06, 2008 5:59 pm

greeting EL members

well the "percentile value" can be combined with hit and skip chart like this

Image

see attachment for the workout, use 7zip to extract the files

good luck
You do not have the required permissions to view the files attached to this post.
sysp34
 
Posts: 559
Joined: Thu Nov 30, 2006 2:22 am


Return to Comments, suggestions, features requests

Who is online

Users browsing this forum: No registered users and 24 guests