Usage of chi2gof

15 views (last 30 days)
Sim
Sim on 21 Jun 2023
Commented: Sim on 21 Jun 2023
(A very silly question) From the chi2gof documentation I see that chi2gof takes 1 argument
h = chi2gof(x)
Since the chi-square test is just a comparison between observed (O) and expected (E) values, throught the formula (\sum_i (O_i - E_i)^2 / E_i), I guess that the argument "x" would refer to the observed data (O), but.... where should I insert/add the expected (E) values there?
Can you show any example of comparison among observed (O) and expected (E) data, like when I would need to compare two distributions?
(for example the expected (E) values might refer to any theoretical distribution that I want /need to compare to my observed (O) data)

Accepted Answer

Aman
Aman on 21 Jun 2023
Edited: Aman on 21 Jun 2023
Hi Sim,
You can add expected value as a parameter as given in chi2gof documentation.
Here is an example for the same,
observed_data = exprnd(2, 100, 1);
num_bins = 10;
bin_edges = linspace(min(observed_data), max(observed_data), num_bins+1);
expected_counts = numel(observed_data) * diff(chi2cdf(bin_edges, 1));
[h, p] = chi2gof(observed_data, 'Expected', expected_counts)
You can add other parameter according to your needs. For further help, check the documentation.
Hope this helps!
  3 Comments
Aman
Aman on 21 Jun 2023
We can use cdf, like this:
expected_counts = numel(observed_data) * diff(cdf(pd,bin_edges));
Sim
Sim on 21 Jun 2023
thanks a lot @Aman!!

Sign in to comment.

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!