# [SciPy-User] R: Re: R: Re: Epanechnikov kernel

francescoboccacci@libe... francescoboccacci@libe...
Sat Jan 19 08:57:24 CST 2013

```Hi,
i would like to use a Epanechnikov kernel because i would  like replicate an R
function that use Epanechnikov kernel.
Reading in depth a documentation below documentation:

i found that i can use normal kernel (i think guaussion kernel).
Below i write a pieces of my code:

xmin = min(xPoints)
xmax = max(xPoints)
ymin = min(yPoints)
ymax = max(yPoints)
X,Y = np.mgrid[xmin:xmax:40j, ymin:ymax:40j]
positions = np.vstack([X.ravel(), Y.ravel()])
values = np.vstack([xPoints,yPoints])
# scipy.stats.kde.gaussian_kde --
# Representation of a kernel-density estimate using Gaussian
kernels.
kernel = stats.kde.gaussian_kde(values)

Z = np.reshape(kernel(positions).T, X.T.shape)

If i understood in right way the missing part that i have to implement is the
smoothing paramter h:

h = Sigma*n^(-1/6)

where

Sigma = 0.5*(sd(x)+sd(y))

My new question is:

How can set smooting parameter in stats.kde.gaussian_kde function? is it
possible?

Thanks

Francesco

>----Messaggio originale----
>Da: jsseabold@gmail.com
>Data: 19/01/2013 15.21
>A: "francescoboccacci@libero.it"<francescoboccacci@libero.it>, "SciPy Users
List"<scipy-user@scipy.org>
>Ogg: Re: [SciPy-User] R: Re: Epanechnikov kernel
>
>On Sat, Jan 19, 2013 at 8:48 AM, francescoboccacci@libero.it
><francescoboccacci@libero.it> wrote:
>> Hi,
>> is there a possibility to multivariate  KDE using Epanechnikov kernel? my
>> variables are X Y (point position)
>>
>
>As Josef mentioned there is no way for the user to choose the kernel
>at present. The functionality is there, but it needs to be hooked in
>with a suitable API. I didn't keep up with these discussions, so I
>don't know the current status. If it's something you're interested in
>trying to help with, I'm sure people would be appreciative and you can
>ping the statsmodels mailing list.
>
>Practically though, the reason this hasn't been done yet is that the
>choice of the kernel is not all that important. Bandwidth selection is
>the most important variable and other kernels perform similarly given
>a good bandwidth. Is there any particular reason you want Epanechnikov
>kernel in particular?
>
>Skipper
>
>> Thanks
>>
>> Francesco
>>
>>>----Messaggio originale----
>>>Da: jsseabold@gmail.com
>>>Data: 19/01/2013 14.32
>>>A: "SciPy Users List"<scipy-user@scipy.org>
>>>Ogg: Re: [SciPy-User] Epanechnikov kernel
>>>
>>>On Sat, Jan 19, 2013 at 7:49 AM,  <josef.pktd@gmail.com> wrote:
>>>> On Sat, Jan 19, 2013 at 6:34 AM, francescoboccacci@libero.it
>>>> <francescoboccacci@libero.it> wrote:
>>>>> Hi all,
>>>>>
>>>>> I have a question for you. Is it possible in scipy using a Epanechnikov
>>>>> kernel function?
>>>>>
>>>>> I checked on scipy documentation but i found that the only way to
>> calculate
>>>>> kernel-density estimate is possible only with using Gaussian kernels?
>>>>>
>>>>> Is it true?
>>>>
>>>> Yes, kde in scipy.stats only has gaussian_kde
>>>>
>>>> Also in statsmodels currently only gaussian is supported for
>>>> continuous data
>>>> http://statsmodels.sourceforge.net/devel/nonparametric.html
>>>> (It was removed because in the references only the bandwidth selection
>>>> made much difference in the estimation, but not the shape of the
>>>> kernel. Other kernels for continuous variables will come back
>>>> eventually.
>>>
>>>If you're interested in univariate KDE, then we do have the Epanechnikov
>> kernel.
>>>
>>>http://statsmodels.sourceforge.net/devel/generated/statsmodels.
nonparametric.
>> kde.KDEUnivariate.fit.html#statsmodels.nonparametric.kde.KDEUnivariate.fit
>>>
>>>Skipper
>>>_______________________________________________
>>>SciPy-User mailing list
>>>SciPy-User@scipy.org
>>>http://mail.scipy.org/mailman/listinfo/scipy-user
>>>
>>
>>
>> _______________________________________________
>> SciPy-User mailing list
>> SciPy-User@scipy.org
>> http://mail.scipy.org/mailman/listinfo/scipy-user
>

```