我正在使用 SciPy 的stats.gaussian_kde函数从一组x,y点数据生成内核密度估计 (kde) 函数。
这是我的代码的简单 MWE:
import numpy as np
from scipy import stats
def random_data(N):
# Generate some random data.
return np.random.uniform(0., 10., N)
# Data lists.
x_data = random_data(100)
y_data = random_data(100)
# Obtain the gaussian kernel.
kernel = stats.gaussian_kde(np.vstack([x_data, y_data]))
Run Code Online (Sandbox Code Playgroud)
由于我没有手动设置带宽(通过bw_method键),该功能默认使用 Scott 规则(请参阅功能说明)。我需要的是获取stats.gaussian_kde函数自动设置的这个带宽值。
我试过使用:
print kernel.set_bandwidth()
Run Code Online (Sandbox Code Playgroud)
但它总是返回None而不是浮点数。