二項分布で語長をモデル化する
二項分布で語長をモデル化する
さまざまな言語の語長を二項分布にフィットさせ,経験的分布とフィットした分布を比べる.
languages = {"Dutch", "English", "French", "German", "Hebrew", "Polish", "Russian", "Spanish", "Swedish"};
worddata = Table[StringLength /@ DictionaryLookup[{l, All}], {l, languages}];binom = Table[EstimatedDistribution[i, BinomialDistribution[n, p], ParameterEstimator -> {"MaximumLikelihood", Method -> {"FindRoot", MaxIterations -> 1000}}], {i, worddata}];Partition[Table[Show[Histogram[worddata[[i]], {Range[25] - 1 / 2}, "PDF", PlotLabel -> languages[[i]], ChartStyle -> Directive[Opacity[.2], ColorData[35, i]]], DiscretePlot[PDF[binom[[i]], x], {x, 0, 25}, PlotRange -> All, PlotStyle -> {{PointSize[.02], Darker@ColorData[35, i]}}]], {i, Length[languages]}], 3]//Grid