Commit Graph

358 Commits

Author SHA1 Message Date
Naoya Kanai bd0fc236e0 [MRG+1] MAINT drop SciPy < 0.13 (#8854)
Remove sklearn.utils.fixes functions that are not needed for scipy >= 0.13 and keep deprecated wrappers in other modules.
2017-06-02 23:36:33 +02:00
Clement Joudet 6252f99c16 [MRG+1] Fixing Math domain error on NMF due to numpy.dot (#8765)
* Fixing overflow error on NMF due to numpy.dot
2017-05-20 09:47:43 +02:00
guiniol 45d9182e6d [MRG+1] Fix float size in as_float_array (#8598)
* Fix float size in as_float_array

* Add tests for small ints in as_float_array

* Add test for object dtype

with minor tweaks
2017-03-21 16:13:48 +01:00
Kat Hempstalk daeba62b9c [MRG+2] Fixed assumption fit attribute means object is estimator. (#8418) 2017-02-21 14:20:05 +01:00
Marc Meketon a0db45db0e [MRG+1] Fix message formatting in exception (#8319)
when the missing class label is a string.
2017-02-21 10:03:38 +01:00
Denis A. Engemann 8694278c02 FIX/MAINT: update my mail etc (#8375)
* update mail etc

* fix utf8
2017-02-16 19:21:26 +01:00
Ekaterina Krivich be305cebaf TST/FIX Add check for estimator: parameters not modified by `fit` (#7846)
ensure that estimators only add private attributes and attributes with
  trailing _

  in cases when existing estimators don't follow this new rule, we deprecate the
  attributes and make them follow this rule
2017-01-20 11:33:17 +11:00
Olivier Grisel 096a9cbead [MRG] MAINT Python 3.6 fixes (#8123)
* FIX dict order dependent doctest

* FIX str concat TypeError message changed in Python 3.6

* MAINT upgrade travis config with most recent conda deps
2016-12-27 19:50:25 +01:00
Josh Karnofsky e5ceda88f2 FIX check_array's accept_sparse param now takes true/false/str/list, but not None (#7937) 2016-12-20 21:45:43 +11:00
Loïc Estève 5007e02c88 FIX .format arguments were in the wrong order
Add check_no_fit_attributes_set_in_init test and use name in the error
message rather than estimator since the former is more readable.
2016-12-13 11:32:43 +01:00
Andreas Mueller 5c4b1bb231 [MRG+1] Housekeeping Deprecations for v0.19 (#7927)
* remove stuff to be removed 0.19

* more changes

* remove classes from 0.19 whatsnew

* remove _LearntSelectorMixin

* remove ProjectedGradientNMF, load_lwf_*

* minor fixes

* remove more copy from logistic regression path

* remove lda, qda from __init__.__all__

* remove pg solver in nmf from tests etc

* remove class_weight="auto" from tests

* doctest change for decision_function_shape="ovr"

* remove transfrom from tree test, minor fixes to tree tests

* some fixes in the tests

* undo changes in functions which still allow 1d input...

* also allow 1d in scale

* more test fixes...

* last test fixes in forest and tree

* svm default value change doctest failures

* pep8

* remove more class_weight="auto" stuff

* minor cosmetics in docstrings deprecated / removed behavior.

* say that store_covariance has been moved to __init__ in discriminant_analysis
2016-12-09 12:43:38 -05:00
Kathy Chen 04b67e2bcd [MRG+1] Fix estimators to work if sample_weight parameter is pandas Series type (#7825)
* addressed comments in the PR about parameters in check_array

* update the test case for the evaluation of estimators with pandas series

* bug fix, need to check for *not* None explicitly

* updated with isinstance check if the documentation says there is acceptance of floats

* ran pep8 linter on modified files

* moving the test case to estimators_check

* add a predict function into the testing pandas.Series class

* avoid running anything beyond the newly added meta checks

* check if pandas is installed before running the specific test

* changed the order of the try-catch to check for sample_weight param beforehand

* pass on import error rather than printing something to std out

* improve test case naming and pd.Series check in the bad estimator class

* address a pep8 linter error with unused import

* pep8 warning disabled for potential unused import

* throw a warning when SkipTest is raised

* add a SkipTestWarning

* updated the whats_new.rst with this issue

* rebase and fix a spacing issue
2016-12-03 15:56:22 -05:00
Loïc Estève 0847c92678 Replace ConvergenceWarning by RuntimeWarning (#7922)
when cumsum is unstable.
2016-11-24 12:05:44 +01:00
Loïc Estève e5bf61eee1 [MRG+1] Dropping python 2.6 support (#7890)
* Remove Python 2.6 support

Some details about some slightly orthogonal changes:
* Note about cheking safely for nan is likely not valid any more (commit
  introducing it is c80ca91b)
* scipy.linalg.qr econ parameter removed since scipy 0.9 in favour of
  mode='economic'
* Remove unnecessary libgfortran in conda create command

* Putative fix by setting the random seed

* Revert unintended change

* Reinstate previous logic for checking for NaNs

* Reinstate change in error message

Error messages from Python 2.7 assertRegexp does not contain the
function name, in contrast with Python 3 assertRegex
2016-11-23 17:11:04 -05:00
Ekaterina Krivich 02cc6f5d3a [MRG] TST Ensure __dict__ is unmodified by predict, transform, etc (#7553)
* Add test for __dict__ for estimator checks

  check that "predict", "transform", "decision_function" or
"predict_proba" methods do not change the state of __dict__ of any
estimator

  see #7297

* Add a test to test_check_estimator

  that shows that check_estimator fails on an estimator that violates this

* Fixed bug where NMF's n_iter_ attribute was set by calls to transform
2016-11-05 21:44:53 +11:00
Andreas Mueller 4da44c8541 [MRG+1] replaced some assert_true(np.allclose(x, y)) with assert_almost_equal (#7742)
* replaced some assert_true(np.allclose(x, y)) with assert_almost_equal for better error messages.

also some pep8.

* typo fixes
2016-10-25 09:15:58 -04:00
Antoine Wendlinger 74a9756fa7 [MRG+2] Norm inconsistency between RFE and SelectFromModel (was _LearntSelectorMixin) #2121 (#6181)
* Norm inconsistency between RFE and SelectFromModel (was _LearntSelectorMixin) #2121

* safe_pwr utility

* Norm fix

* Removed safe_pwr

* 1D arrays support for norm fix

* Test case for 2d coef in SelectFromModel

* Fix numpy version requirement for norm fix

* Implement fixes suggested by @jnothman

* Add numpy version requiring the fix.
2016-10-24 14:01:49 -04:00
yangarbiter fa59873857 [MRG+1] FIX unstable cumsum (#7376)
* FIX unstable cumsum in utils.random

* equal_nan = true for isclose
since numpy < 1.9 sum is as unstable as cumsum, fallback to np.cumsum

* added axis parameter to stable_cumsum

* FIX unstable sumsum in ensemble.weight_boosting and utils.stats

* FIX axis problem in stable_cumsum

* FIX unstable cumsum in mixture.gmm and mixture.dpgmm

* FIX unstable cumsum in cluster.k_means_, decomposition.pca, and manifold.locally_linear

* FIX unstable sumsum in dataset.samples_generator

* added docstring for parameter axis of stable_cumsum

* added comment for why fall back to np.cumsum when np version < 1.9

* remove unneeded stable_cumsum

* added stable_cumsum's axis testing

* FIX numpy docstring for make_sparse_spd_matrix

* change stable_cumsum from error to warning
2016-10-17 15:49:23 +02:00
Raghav RV 868a58b2e0 [MRG+1] FIX Make sure GridSearchCV and RandomizedSearchCV are pickle-able (#7594)
* FIX Subclass a new MaskedArray which allows pickling even when dype=object

* TST unpickling too

* FIX Use MaskedArray from utils.fixes rather than from numpy

* FIX imports

* Don't assign a variable

* FIX np --> numpy

* Use tostring instead of tobytes for old numpy

* COSMIT pickle-able --> picklable

* use #noqa comment to turn off flake8

* TST/ENH Check if the pickled est's predict matches with the original one's
2016-10-10 15:33:44 -04:00
Konstantin Podshumok 9b2aac9e5c [MRG + 1] [TST] (half-cosmetic) use less nose.tools import to simplify future transition to py.test (#7384)
* use less nose.tools import to simplify future transition to activly developing test suites/runners

* assert_equal -> assert_array_equal in test_feature_hasher_pairs_with_string_values

and one missed ImportError that should be replaced with AttributeError

* test for py2.6 compat with except AttributeError

* fix importing of SkipTest

* force using nose in python2.6 for now

* there was no assert_dict_equal in py2.6. but we can use assert_equal

although failed test will look a little bit ugly

* remove nose imports from doc/datasets
2016-10-07 12:46:52 -04:00
Russell Smith 54b0e4bf62 Add OneVs{One,All}Classifier._pairwise: fix for #7306 (#7350) 2016-09-20 13:46:45 +02:00
Yichuan Liu 3dffa08e43 FIX 7155: GridSearchCV predict_proba delegation to SDGClassifier 2016-09-12 20:47:21 +02:00
Joel Nothman 49d126fd8f [MRG + 1] FIX use high precision cumsum and check it is stable enough (#7331)
* FIX use high precision cumsum and check it is stable enough
2016-09-09 06:17:12 +02:00
Manoj Kumar 68b4c68f75 Merge pull request #7252 from lesteve/fix-mock-dataframe-check-array
[MRG + 1] __array__ should take an optional dtype
2016-08-26 12:20:47 -07:00
Loïc Estève 45e9c2f5b9 NotAnArray.__array__ should take an optional dtype 2016-08-26 10:19:46 +02:00
Loïc Estève 50ab94db46 MockDataFrame.__array__ should take an optional dtype 2016-08-26 10:18:35 +02:00
James Fiedler e4b837cc66 Removed unused imports 2016-07-29 19:30:23 -05:00
YenChenLin c7d6f9ffc3 Test row_norms for float32 data 2016-05-25 20:29:03 +08:00
Thierry Guillemot 78a674875e Correct the deprecation of the random_integers numpy function. (#6712) 2016-04-26 16:08:48 +02:00
Thierry 6fb6c63b7b Modification of the ignore_warning function and _IgnoreWarning class. 2016-04-21 18:28:44 +02:00
Yen 28758cc5eb [MRG+2] Use fused types in sparse mean variance functions (#6593)
* Use fused types in mean variance functions

* Add test for mean-variance functions using fused trpes

* Add whats_new
2016-04-16 11:16:05 -04:00
ningchi 6ce198c78f [MRG] #6581 n_samples of utils.resample can be more when replace is True
* #6581 n_samples can be more when replace is True

* more compact code
2016-04-02 08:58:40 +02:00
YenChenLin e34bbc1002 Use fused type in inplace normalize 2016-03-26 10:38:17 +08:00
YenChenLin 42d49c8c14 Make assign_rows_csr support Cython fused types 2016-03-25 00:25:36 +08:00
giorgiop 328ebfa865 ENH RandomizedPCA collapsed into PCA 2016-03-11 09:10:37 +11:00
Gilles Louppe 1784bf3f26 Merge pull request #5863 from trevorstephens/cw_util_fix
[MRG] Fix for missing classes found in y - Fixes #4327
2016-02-11 11:42:47 +01:00
dsquareindia cfa498ca68 FIX in randomized_svd flip sign
Flip sign according to `u` in both cases of `transpose`.
2016-02-08 16:59:44 +01:00
giorgiop 6eca250347 MAINT speed up test_extmath 2016-02-06 18:55:23 +01:00
seales 0485ada58b General spelling fixes 2015-12-16 09:46:42 -08:00
Francis T. O'Donovan 79006fa1fe Provide 'self' argument to instance method 2015-12-12 01:46:56 -05:00
TomDLT 9f136ff293 ENH add multinomial SAG solver for LogisticRegression 2015-12-04 18:36:37 +01:00
trevorstephens 2738d59ab4 fix for missing classes found in y #4327 2015-11-16 16:36:01 -08:00
Andreas Mueller 776e53b127 skip unstable tests on 32bit platform 2015-11-02 15:21:22 -05:00
Peter Fischer 8ff339eb5b Update test_utils.py
Comment instead of docstring to follow sklearn convention.
Regression test made easier by adding small value to main diagonal of s.p.d. matrix
2015-10-23 08:57:31 +02:00
Peter Fischer 6cb51b2a28 Initialize ARPACK eigsh
`v0 = random_state.rand(M.shape[0])` leads to an initial residual vector in ARPACK which is all positive. However, this is not the absolute or squared residual, but a true difference. Thus, it is better to initialize with `v0=random_state.uniform(-1, 1, M.shape[0])` to have an equally distributed sign. This is the way that ARPACK initializes the residuals.
The effect of the previous initialization is that eigsh frequently does not converge to the correct eigenvalues, e.g. negative eigenvalues for s.p.d. matrix, which leads to an incorrect null-space.

- initialized all occurences of sklearn.utils.arpack.eigsh the same way it would be initialzed by ARPACK
- regression test to test behavior of new initialization
2015-10-23 08:57:30 +02:00
Gael Varoquaux 744d161d37 Merge pull request #5431 from hlin117/nan-targets
[MRG + 2] Add check to regression models to raise error when targets are NaN
2015-10-22 09:36:12 +02:00
giorgiop b18f2951e4 randomized_svd: power iter, normalization, benchmark 2015-10-21 11:21:40 +02:00
hlin117 c657d77c3c #5322: Regression test for test_check_estimator 2015-10-20 10:36:48 -05:00
hlin117 7f820269b8 #5322: Fixing test in test_estimator_checks.test_check_estimator 2015-10-20 10:36:47 -05:00
Raghav R V 857cb09254 FIX/ENH Make the moved class resilient to the deprecation patching 2015-10-20 01:24:35 +02:00