New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Carljv improved lowess rebased2 #856
Carljv improved lowess rebased2 #856
Conversation
rebased again and force pushed (includes update to .travis.yml) let's see if we get TravisCI on py3 |
travisCI is now green on both py 2.7 and py 3.2 I just saw that the cython function doesn't have a pop-up signature, that's annoying because I had to look at the source to see what argument determines the bandwidth choice (frac). |
some usage limitations in the design I was thinking whether we can attach a pandas index to the returned array. The problem is that we don't know the internal reindexing.
as a consequence the returned arrays don't have the same index order (and might be shorter) than the original arrays. However, if we want to compare the returned array with the original array (and align them), then in the current implementation, we would have to redo the isfinite check and the argsort. Note: the old version was doing the same thing, but now it will be inside the compiled code. |
# same length. | ||
if exog.ndim != 1: | ||
raise ValueError('exog must be a vector') | ||
if endog.ndim != 1: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ndim checks are redundant, since the signature already requires it in the compiled version.
Pretty much finished, except for dropping the x from the returned array. |
changing the return shape and dropping x doesn't break anything in the graphics test suite.
|
I didn't remember the regression_plots correctly. We are not sorting in the partial_residual plot for example ( only need to rethink the interface again. |
I'm back to returning the sorted array by default as before. The new behavior, when we change options from the default, is more useful when we consider lowess as a robust local linear smoother, and we want to interpret the fittedvalues in the same way as in the regression models. |
I think I'm done. |
rebased and force pushed, (maybe shouldn't have done it) ready for merge, when TravisCI is green |
TravisCI doesn't start, merging anyway |
Carljv improved cythonized lowess closes #266
…ess_rebased2 Carljv improved cythonized lowess closes statsmodels#266
rebased version of the cython lowess version PR #266
I left the old lowess in there as smoothers_lowess_old.py, just in case
unit tests run without errors or failures
Added a wrapper function to check input (type casting), optional sorting, ...
see comments below