Matrix class was implemented for basic matrix calculations such as sum and difference of matrixes , multiplying , inversing , determinant, triangular form and Unit matrix. Calculating determinants that calculated on triangular form is very fast but matrix inversing on high dimensions (such as 50x50) is more slower because of cofactors method. Matrix data can be imported and exported from a text file compatible with statistical and mathematical programs. (Pure java codes in a class extented from java.lang.Object , no packages need to be included)
Note: Matrix class was referenced in a statistical program in site brightstat
Click here to see javaDocs Click here to go examples



Descriptives class implements some descriptive statistics functions such as mean, median , variance , standart deviation , min , max , range and sorting. Sorting algorithm uses buble sort , so in high dimensional arrays it works slow. Mean and variance functions can calculate columns mean and variance in a matrix. Matrix class must be included in project to use this class.
Click here to see javaDocs



Multivariate class implements now only two functions. Covariance Matrix and Squared Mahanalobis Distances. This class uses the Matrix and Descriptive classes so in a project they must be imported. This class was not completely written. Some other functions such clustering, MCD (Minimum Covariance Determinant) and MVE (Minimum Volume Ellipsoid) will be implemented soon. Click here to see javaDocs



OLS class implements Ordinary Least Squares functions to calculate parameters, predicted values and residuals for a given model and data. Intercept and non-intercept models are optional. Statistical calculations (R Square, t and F values, standart errors) and hypothesis tests (P-values) were not implemented yet but will be done soon. Matrix class must be imported.
Click here to see javaDocs



LMS class implements a function for Least Median of Squares Regression estimator. LMS.Regress function gets x matrix and y vector and returns LMS parameters as a vector. Standart error and outlier detection implementation was not done yet. Needs Matrix, Descriptives and OLS classes to run.
Click here to see javaDocs



ANOVA (Analysis of variance) class was implemented for testing equality of more than one groups population means. F Ratio critical values were calculated for alfa=0.05. I included a test class and JFrame application to show how to use this simple java library. An applet version of this class is in applets part in this site. Source code was included in the jar file.
Click here to download



Source Codes of Classes
Click here to download the source codes of Matrix, Descriptive Statistics, Multivariate Statistics, OLS and LMS classes. A simple matrix file was included to zip file. To learn how to use these classes, please click the examples link.


Click here to go examples



Fast Port Scanner Command line utility for searching open ports of a host computer. Usage : Java PortScanner host startport stopport
Click here to download port scanner command line tool





JPortfolio 1.0 - Financial Portfolio Optimization via Multi-Objective Genetic Algorithms
JPortfolio is an optimization program based on multi-objective genetic algorithms. Program simply searchs for the optimum weight vector of stocks by maximizing the expected return and minimizing the risk of a portfolio. Instead of finding an optimum portfolio, JPortfolio finds more than one solitions on the Pareto frontier.The portfolios on the Pareto frontier dominates any other solutions but they don't dominate themselves. So, one can select a portfolio with a lower risk and higher return or higher risk and lower return from the Pareto frontier. For a brief introduction, help and download please click to http://www.mhsatman.com/jportfolio





JFunctionOptimizer 1.0 - Function Optimizer with Binary Coded Genetic Algorithms
JFunctionOptimizer is a simple function optimizition tool which is based on binary coded genetic algorithms. Usage is quite simple. Type a one or more than one variable function, select type of optimization (minimization or maximization), select ranges for variables and start optimization process. After few iterations, algorithm converges to real solution. When last solution has no more change, one can stop the algorithm using the menu. The reported best solution is the global optimum value of the function. For a brief introduction, help and download please click to http://www.mhsatman.com/jfunctionoptimizer