Hi,
I am using statsmodel 0.8.0 master. I have created samples from 0-2499, incremented by 1 in a txt file, and then i run the script:
from statsmodels.nonparametric.kde import KDEUnivariate
samples=np.genfromtxt(sample_file_name)
xS=np.linspace(samples.min(),samples.max(),251)
kde = KDEUnivariate(samples)
kde.fit(bw="scott",kernel="tri",fft=False)
pdf1=kde.evaluate(xS)
lw1=2
fs1=18
fig = plt.figure(figsize=(8,6))
ax=fig.add_axes([0.10, 0.10, 0.85, 0.85]) ;
l1=plt.plot(xS,pdf1,linewidth=lw1,label="optimal")
==========================================
In red, if i use kernel="gau", it is fine. But not with uni, tri etc...I saw some discussion on github, and it is said this has been solved in 0.8.0, but dont know why same error appears as in 0.6:
Traceback (most recent call last):
File "plot_pdf.py", line 73, in <module>
pdf1=kde.evaluate(xS)
File "/usr/local/lib/python2.7/dist-packages/statsmodels-0.8.0-py2.7-linux-x86_64.egg/statsmodels/nonparametric/kde.py", line 265, in evaluate
return self.kernel.density(self.endog, point)
File "/usr/local/lib/python2.7/dist-packages/statsmodels-0.8.0-py2.7-linux-x86_64.egg/statsmodels/sandbox/nonparametric/kernels.py", line 194, in density
xs = self.in_domain( xs, xs, x )[0]
File "/usr/local/lib/python2.7/dist-packages/statsmodels-0.8.0-py2.7-linux-x86_64.egg/statsmodels/sandbox/nonparametric/kernels.py", line 178, in in_domain
filtered = lfilter(isInDomain, lzip(xs, ys))
File "/usr/local/lib/python2.7/dist-packages/statsmodels-0.8.0-py2.7-linux-x86_64.egg/statsmodels/sandbox/nonparametric/kernels.py", line 173, in isInDomain
return u >= self.domain[0] and u <= self.domain[1]
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Can anyone help please?
Regards,
Kai.