Some software implementations of the K-S test do not work
at all well in case of ties, which I would expect to see
in a survey counting numbers of children in individual
families. Also, a two-sample Wilcoxon Rank Sum test may
work poorly if you have many ties and small sample sizes.
However, a chi-squared test could be useful in the
circumstances you describe.
Maybe you have counts for 0-5 children in two surveys, each of 1000 families, as follows.
tx
[1] 359 387 187 48 12 7
ty
[1] 599 311 75 14 1 0
Then make a $2 \times 6$ table of counts:
TAB = rbind(tx,ty); TAB
[,1] [,2] [,3] [,4] [,5] [,6]
tx 359 387 187 48 12 7
ty 599 311 75 14 1 0
Use a chisq.test in R to see if the two
populations are the same.
chisq.test(TAB)
Pearson's Chi-squared test
data: TAB
X-squared = 151.23, df = 5, p-value < 2.2e-16
Warning message:
In chisq.test(TAB) :
Chi-squared approximation may be incorrect
The warning message appears because some of the
expected counts in the computation of the chi-squared statistic are smaller than $5.$
chisq.test(TAB)$exp
[,1] [,2] [,3] [,4] [,5] [,6]
tx 479 349 131 31 6.5 3.5
ty 479 349 131 31 6.5 3.5
You could combine the last two columns to avoid
these small expected values.
Alternatively, using
chisq.test, as implemented in R. you could
use parameter sim=T to simulate a more
useful P-value near $0,$ so we reject $H_0$
that the two surveys sampled from the same
population.
chisq.test(TAB, sim=T)
Pearson's Chi-squared test
with simulated p-value
(based on 2000 replicates)
data: TAB
X-squared = 151.23, df = NA, p-value = 0.0004998---------
Notes on other tests: (a) If you have one sample of size 20
from $\mathsf{Binom(10, .4}$ and another from $\mathsf{Binom}(10, .6),$ then the K-S test fails to find a difference
between the two sample, gives an error message about ties,
and there is no obvious cure for the ties.
Two-sample Kolmogorov-Smirnov test
data: a and b
D = 0.35, p-value = 0.1725
alternative hypothesis: two-sided
Warning message:
In ks.test(a, b) : cannot compute exact p-value with ties
(b) Similarly, a two-sample Wilcoxon test warns about ties, finds a significant difference, but
sample sizes are too small to ignore the warning.
wilcox.test(a,b)
Wilcoxon rank sum test
with continuity correction
data: a and b
W = 106, p-value = 0.01015
alternative hypothesis:
true location shift is not equal to 0
Warning message:
In wilcox.test.default(a, b) :
cannot compute exact p-value with ties
With samples of size 200: [For large samples, R's implementation of this test uses a normal approximation that is more forgiving of ties, and no warning message is given.]
wilcox.test(rbinom(200,10,.4),rbinom(200,10,.6))
Wilcoxon rank sum test with continuity correction
data: rbinom(200, 10, 0.4) and rbinom(200, 10, 0.6)
W = 5957, p-value < 2.2e-16
alternative hypothesis:
true location shift is not equal to 0