.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/plot_bimodal_kde_1d.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_plot_bimodal_kde_1d.py: 1D bimodal example ==================== This example shows how to use ``lightkde.kde_1d`` and how it compares to ``scipy.stats.gaussian_kde`` for a bimodal univariate case. .. GENERATED FROM PYTHON SOURCE LINES 9-10 Import packages: .. GENERATED FROM PYTHON SOURCE LINES 10-16 .. code-block:: default import matplotlib.pyplot as plt import numpy as np from scipy.stats import gaussian_kde, norm from lightkde import kde_1d .. GENERATED FROM PYTHON SOURCE LINES 17-18 Generate synthetic data from two univariate normal distributions: .. GENERATED FROM PYTHON SOURCE LINES 18-21 .. code-block:: default np.random.seed(42) sample = np.hstack((norm.rvs(size=2_000), 0.3 * norm.rvs(size=1_000) + 5)) .. GENERATED FROM PYTHON SOURCE LINES 22-23 Estimate kernel density using ``lightkde``: .. GENERATED FROM PYTHON SOURCE LINES 23-25 .. code-block:: default density_vec, x_vec = kde_1d(sample_vec=sample) .. GENERATED FROM PYTHON SOURCE LINES 26-27 Estimate kernel density using ``scipy``: .. GENERATED FROM PYTHON SOURCE LINES 27-30 .. code-block:: default gkde = gaussian_kde(dataset=sample) scipy_density_vec = gkde.evaluate(x_vec) .. GENERATED FROM PYTHON SOURCE LINES 31-32 Plot the data against the kernel density estimates: .. GENERATED FROM PYTHON SOURCE LINES 32-38 .. code-block:: default plt.plot(x_vec, density_vec, "--r", label="lightkde") plt.plot(x_vec, scipy_density_vec, label="scipy.stats.gaussian_kde") plt.hist(sample, bins=100, density=True, alpha=0.5, label="data") plt.legend() plt.show() .. image-sg:: /auto_examples/images/sphx_glr_plot_bimodal_kde_1d_001.png :alt: plot bimodal kde 1d :srcset: /auto_examples/images/sphx_glr_plot_bimodal_kde_1d_001.png :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 39-41 The ``scipy`` method oversmooths the kernel density and it is far from the histogram of the data that it is expected to follow. .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 1.833 seconds) .. _sphx_glr_download_auto_examples_plot_bimodal_kde_1d.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_bimodal_kde_1d.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_bimodal_kde_1d.ipynb `