#### Overview of this book

If you are looking to build data science models that are good for production, Java has come to the rescue. With the aid of strong libraries such as MLlib, Weka, DL4j, and more, you can efficiently perform all the data science tasks you need to. This unique book provides modern recipes to solve your common and not-so-common data science-related problems. We start with recipes to help you obtain, clean, index, and search data. Then you will learn a variety of techniques to analyze, learn from, and retrieve information from data. You will also understand how to handle big data, learn deeply from data, and visualize data. Finally, you will work through unique recipes that solve your problems while taking data science to production, writing distributed data science applications, and much more - things that will come in handy at work.
Java Data Science Cookbook
Credits
www.PacktPub.com
Customer Feedback
Preface
Indexing and Searching Data
Visualizing Data

## Conducting a Chi-square test

For conducting a Chi-square test on two sets of data distributions, one distribution will be called the observed distribution and the other distribution will be called the expected distribution.

### How to do it...

1. Create a method that takes these two distributions as arguments. Note that the observed distribution is a `long` array, while the expected distribution is a `double` array:

```        public void getChiSquare(long[] observed, double[] expected){
```
2. Get the t-statistic of the Chi-square test as follows:

```        System.out.println(TestUtils.chiSquare(expected, observed));
```
3. The p-value of the test can found in a similar way but with a different method:

```        System.out.println(TestUtils.chiSquareTest(expected,
observed));
```
4. We can also observe whether the difference between the expected and observed data distributions is significant for a given confidence interval, as follows:

`        System.out.println(TestUtils.chiSquareTest(expected, observed...`