我试图将单调曲线拟合到一些近乎单调的数据上.(X值是单调的,Y值应该是单调的,但噪声通常大于点到点的基础值的变化.)这里是我现在正在做的总结:
def goodness_of_fit(Xfit):
assert(is_sorted(Xfit))
# ( Calculate the area between the fit line and the join-the-dots line from the data )
scipy.optimize.minimize(goodness_of_fit, x0=numpy.linspace(xmin, xmax))
Run Code Online (Sandbox Code Playgroud)
我找不到一种方法来获得优化算法来保持Xfit数组排序 - 有没有人有任何建议?(数组的大小太大,无法创建N-1个别排序约束并使用约束优化函数.)如果最佳解决方案仅适用于Python,我愿意使用Python之外的其他语言.那种语言.
(注意,我确实拟合了X值,而不是Y值 - 这是因为我最终想要绘制dX/dY曲线,并且如果我从原始数据中绘制它,它就不会爆炸到荒谬的值.但是,如果将Y值拟合到固定的X值上要容易得多,我可以这样做.)
运行sklearn.decomposition.PCA.fit()
一些数据后,我想得出组件向量.有一个成员变量,PCA.components_
但AFAIK末尾的下划线表示它不是公共API的一部分.是否有获取组件的公共方式?
我尝试过使用PCA.inverse_transform(np.eye(n_components))
但它只给了我第一个组件的n_components副本.