SciPy 0.17.0 Release Notes#

SciPy 0.17.0 ist die Krönung von 6 Monaten harter Arbeit. Es enthält viele neue Funktionen, zahlreiche Fehlerbehebungen, verbesserte Testabdeckung und bessere Dokumentation. Es gab eine Reihe von Deprekationen und API-Änderungen in dieser Version, die unten dokumentiert sind. Alle Benutzer werden ermutigt, auf diese Version zu aktualisieren, da es eine große Anzahl von Fehlerbehebungen und Optimierungen gibt. Darüber hinaus wird sich unsere Entwicklungsaufmerksamkeit nun auf Fehlerbehebungsreleases für den Zweig 0.17.x und auf das Hinzufügen neuer Funktionen für den Hauptzweig verlagern.

Diese Version erfordert Python 2.6, 2.7 oder 3.2-3.5 und NumPy 1.6.2 oder höher.

Release-Highlights

Neue Funktionen#

scipy.cluster Verbesserungen#

Eine neue Funktion scipy.cluster.hierarchy.cut_tree, die einen Schnittbaum aus einer Linkage-Matrix bestimmt, wurde hinzugefügt.

scipy.io Verbesserungen#

scipy.io.mmwrite hat Unterstützung für symmetrische dünn besetzte Matrizen erhalten.

scipy.io.netcdf hat Unterstützung für das Maskieren und Skalieren von Daten basierend auf Datenattributen erhalten.

scipy.optimize Verbesserungen#

Lösung für das lineare Zuordnungsproblem#

scipy.optimize.linear_sum_assignment ist eine neue Funktion zur Lösung des linearen Zuordnungsproblems. Sie verwendet den Ungarischen Algorithmus (Kuhn-Munkres).

Kleinste-Quadrate-Optimierung#

Eine neue Funktion für die *nichtlineare* Kleinste-Quadrate-Optimierung mit Nebenbedingungen wurde hinzugefügt: scipy.optimize.least_squares. Sie bietet mehrere Methoden: Levenberg-Marquardt für unbeschränkte Probleme und zwei Trust-Region-Methoden für beschränkte. Darüber hinaus bietet sie verschiedene Verlustfunktionen. Neue Trust-Region-Methoden unterstützen auch dünn besetzte Jacobimatrizen.

Eine neue Funktion für die *lineare* Kleinste-Quadrate-Optimierung mit Nebenbedingungen wurde hinzugefügt: scipy.optimize.lsq_linear. Sie bietet eine Trust-Region-Methode sowie eine Implementierung des Bounded-Variable Least-Squares (BVLS)-Algorithmus.

scipy.optimize.curve_fit unterstützt jetzt das Anpassen mit Grenzen.

scipy.signal Verbesserungen#

Ein Schlüsselwort mode wurde zu scipy.signal.spectrogram hinzugefügt, um es zu ermöglichen, andere Spektrogramme als die Leistungsspektraldichte zurückzugeben.

scipy.stats Verbesserungen#

Viele Funktionen in scipy.stats haben ein Schlüsselwort nan_policy erhalten, das festlegt, wie mit Eingaben mit NaNs umgegangen werden soll: NaNs propagieren, einen Fehler auslösen oder NaNs auslassen.

Viele Funktionen in scipy.stats wurden verbessert, um leere oder NaNs/infs enthaltende Eingabearrays korrekt zu behandeln.

Eine Reihe von Funktionen mit demselben Namen in scipy.stats und scipy.stats.mstats wurden so geändert, dass sie die gleiche Signatur und das gleiche Verhalten aufweisen. Einzelheiten finden Sie unter gh-5474.

scipy.stats.binom_test und scipy.stats.mannwhitneyu haben ein Schlüsselwort alternative erhalten, das die zu testende Hypothese angibt. Zukünftig werden alle Hypothesentestfunktionen dieses Schlüsselwort erhalten.

Für Methoden vieler kontinuierlicher Verteilungen wird nun komplexe Eingabe akzeptiert.

Die Matrix-Normalverteilung wurde als scipy.stats.matrix_normal implementiert.

scipy.sparse Verbesserungen#

Das Schlüsselwort axis wurde zu dünn besetzten Normen, scipy.sparse.linalg.norm, hinzugefügt.

scipy.spatial Verbesserungen#

scipy.spatial.cKDTree wurde teilweise für verbesserte Leistung neu geschrieben und mehrere neue Funktionen wurden hinzugefügt

  • die Methode query_ball_point wurde signifikant schneller

  • query und query_ball_point erhielten ein Schlüsselwort n_jobs für parallele Ausführung

  • Build- und Query-Methoden geben nun das GIL frei

  • vollständige Pickling-Unterstützung

  • Unterstützung für periodische Räume

  • die Methode sparse_distance_matrix kann nun auch eine dünn besetzte Matrix als Typ zurückgeben

scipy.interpolate Verbesserungen#

Das Verhalten außerhalb der Grenzen von scipy.interpolate.interp1d wurde verbessert. Verwenden Sie ein zweielementiges Tupel für das Argument fill_value, um separate Füllwerte für Eingaben unterhalb und oberhalb des Interpolationsbereichs anzugeben. Lineare und nächste Interpolationsarten von scipy.interpolate.interp1d unterstützen Extrapolation über das Schlüsselwort fill_value="extrapolate".

fill_value kann auch auf array-ähnlich (oder ein zweielementiges Tupel von array-ähnlichen für separate untere und obere Werte) gesetzt werden, solange es korrekt an die nicht interpolierten Dimensionen eines Arrays broadcastet. Dies wurde von früheren Versionen von SciPy implizit unterstützt, aber die Unterstützung wurde nun formalisiert und vor der Verwendung auf Kompatibilität geprüft. Zum Beispiel könnte ein Satz von y-Werten zur Interpolation mit der Form (2, 3, 5), interpoliert entlang der letzten Achse (2), einen fill_value-Array mit der Form () (Singleton), (1,), (2, 1), (1, 3), (3,) oder (2, 3) akzeptieren; oder es kann ein 2-elementiges Tupel sein, um separate untere und obere Grenzen anzugeben, wobei jedes der beiden Tupel-Elemente den richtigen Broadcasting-Regeln folgt.

scipy.linalg Verbesserungen#

Der Standardalgorithmus für scipy.linalg.leastsq wurde geändert, um die LAPACK-Funktion *gelsd zu verwenden. Benutzer, die das vorherige Verhalten beibehalten möchten, können ein neues Schlüsselwort lapack_driver="gelss" verwenden (erlaubte Werte sind "gelss", "gelsd" und "gelsy").

Dünn besetzte Matrizen und lineare Operatoren von scipy.sparse unterstützen nun den Matmul-Operator (@), wenn verfügbar (Python 3.5+). Siehe [PEP 465](https://legacy.python.org/dev/peps/pep-0465/)

Eine neue Funktion scipy.linalg.ordqz für die QZ-Zerlegung mit Neuordnung wurde hinzugefügt.

Abgeschriebene Funktionen#

scipy.stats.histogram wird zugunsten von np.histogram abgeschrieben, das schneller ist und die gleiche Funktionalität bietet.

scipy.stats.threshold und scipy.mstats.threshold werden zugunsten von np.clip abgeschrieben. Siehe Problem #617 für Details.

scipy.stats.ss ist abgeschrieben. Dies ist eine Hilfsfunktion, die nicht für den Benutzer bestimmt ist. Außerdem ist der Name unklar. Siehe Problem #663 für Details.

scipy.stats.square_of_sums ist abgeschrieben. Dies ist ebenfalls eine Hilfsfunktion, die nicht für den Benutzer bestimmt ist. Siehe Probleme #665 und #663 für Details.

scipy.stats.f_value, scipy.stats.f_value_multivariate, scipy.stats.f_value_wilks_lambda und scipy.mstats.f_value_wilks_lambda sind abgeschrieben. Diese beziehen sich auf ANOVA, für die scipy.stats eine recht begrenzte Funktionalität bietet und diese Funktionen alleinstehend nicht sehr nützlich sind. Siehe Probleme #660 und #650 für Details.

scipy.stats.chisqprob ist abgeschrieben. Dies ist ein Alias. stats.chi2.sf sollte stattdessen verwendet werden.

scipy.stats.betai ist abgeschrieben. Dies ist ein Alias für special.betainc, der stattdessen verwendet werden sollte.

Rückwärts inkompatible Änderungen#

Die Funktionen stats.trim1 und stats.trimboth stellen nun sicher, dass die gestutzten Elemente die niedrigsten und/oder höchsten sind, je nach Fall. Zuvor wurde eine Segmentierung ohne mindestens teilweise Sortierung vorgenommen, was aber bei unsortierter Eingabe keinen Sinn ergab.

Wenn variable_names auf eine leere Liste gesetzt wird, gibt scipy.io.loadmat nun korrekt keine Werte zurück, anstatt den gesamten Inhalt der MAT-Datei.

Elementweise Multiplikation von dünn besetzten Matrizen gibt nun in allen Fällen ein dünn besetztes Ergebnis zurück. Zuvor würde die Multiplikation einer dünn besetzten Matrix mit einer dichten Matrix oder einem dichten Array eine dichte Matrix zurückgeben.

Die Funktion misc.lena wurde aufgrund von Lizenzinkompatibilitäten entfernt.

Der Konstruktor für sparse.coo_matrix akzeptiert nicht mehr (None, (m,n)), um eine Nullmatrix der Form (m,n) zu konstruieren. Diese Funktionalität wurde seit mindestens 2007 abgeschrieben und war bereits in der vorherigen SciPy-Version fehlerhaft. Verwenden Sie stattdessen coo_matrix((m,n)).

Die Cython-Wrapper in linalg.cython_lapack für die LAPACK-Routinen *gegs, *gegv, *gelsx, *geqpf, *ggsvd, *ggsvp, *lahrd, *latzm, *tzrqf wurden entfernt, da diese Routinen in der neuen LAPACK 3.6.0-Version nicht mehr vorhanden sind. Mit Ausnahme der Routinen *ggsvd und *ggsvp waren dies alles abgeschriebene Funktionen zugunsten von Routinen, die derzeit in unseren Cython-LAPACK-Wrappern vorhanden sind.

Da die LAPACK *gegv-Routinen in LAPACK 3.6.0 entfernt wurden. Die entsprechenden Python-Wrapper in scipy.linalg.lapack sind nun abgeschrieben und werden in einer zukünftigen Version entfernt. Die Quelldateien für diese Routinen wurden vorübergehend als Teil von scipy.linalg aufgenommen, damit SciPy gegen LAPACK-Versionen kompiliert werden kann, die diese abgeschriebenen Routinen nicht bereitstellen.

Weitere Änderungen#

Die HTML- und PDF-Dokumentation von Entwicklungsversionen von Scipy wird nun nach jedem zusammengeführten Pull Request automatisch neu erstellt.

scipy.constants wird auf die empfohlenen Werte von CODATA 2014 aktualisiert.

Die Verwendung von Funktionen aus scipy.fftpack innerhalb von Scipy wurde so geändert, dass PyFFTW scipy.fftpack-Funktionen einfach ersetzen kann (mit verbesserter Leistung). Siehe gh-5295 für Details.

Die imread-Funktionen in scipy.misc und scipy.ndimage wurden vereinheitlicht, wofür ein mode-Argument zu scipy.misc.imread hinzugefügt wurde. Außerdem wurden Fehler bei 1-Bit- und indizierten RGB-Bildformaten behoben.

runtests.py, das Entwicklungs-Skript zum Erstellen und Testen von Scipy, erlaubt nun das parallele Erstellen mit --parallel.

Autoren#

  • @cel4 +

  • @chemelnucfin +

  • @endolith

  • @mamrehn +

  • @tosh1ki +

  • Joshua L. Adelman +

  • Anne Archibald

  • Hervé Audren +

  • Vincent Barrielle +

  • Bruno Beltran +

  • Sumit Binnani +

  • Joseph Jon Booker

  • Olga Botvinnik +

  • Michael Boyle +

  • Matthew Brett

  • Zaz Brown +

  • Lars Buitinck

  • Pete Bunch +

  • Evgeni Burovski

  • CJ Carey

  • Ien Cheng +

  • Cody +

  • Jaime Fernandez del Rio

  • Ales Erjavec +

  • Abraham Escalante

  • Yves-Rémi Van Eycke +

  • Yu Feng +

  • Eric Firing

  • Francis T. O’Donovan +

  • André Gaul

  • Christoph Gohlke

  • Ralf Gommers

  • Alex Griffing

  • Alexander Grigorievskiy

  • Charles Harris

  • Jörn Hees +

  • Ian Henriksen

  • Derek Homeier +

  • David Menéndez Hurtado

  • Gert-Ludwig Ingold

  • Aakash Jain +

  • Rohit Jamuar +

  • Jan Schlüter

  • Johannes Ballé

  • Luke Zoltan Kelley +

  • Jason King +

  • Andreas Kopecky +

  • Eric Larson

  • Denis Laxalde

  • Antony Lee

  • Gregory R. Lee

  • Josh Levy-Kramer +

  • Sam Lewis +

  • François Magimel +

  • Martín Gaitán +

  • Sam Mason +

  • Andreas Mayer

  • Nikolay Mayorov

  • Damon McDougall +

  • Robert McGibbon

  • Sturla Molden

  • Will Monroe +

  • Eric Moore

  • Maniteja Nandana

  • Vikram Natarajan +

  • Andrew Nelson

  • Marti Nito +

  • Behzad Nouri +

  • Daisuke Oyama +

  • Giorgio Patrini +

  • Fabian Paul +

  • Christoph Paulik +

  • Mad Physicist +

  • Irvin Probst

  • Sebastian Pucilowski +

  • Ted Pudlik +

  • Eric Quintero

  • Yoav Ram +

  • Joscha Reimer +

  • Juha Remes

  • Frederik Rietdijk +

  • Rémy Léone +

  • Christian Sachs +

  • Skipper Seabold

  • Sebastian Skoupý +

  • Alex Seewald +

  • Andreas Sorge +

  • Bernardo Sulzbach +

  • Julian Taylor

  • Louis Tiao +

  • Utkarsh Upadhyay +

  • Jacob Vanderplas

  • Gael Varoquaux +

  • Pauli Virtanen

  • Fredrik Wallner +

  • Stefan van der Walt

  • James Webber +

  • Warren Weckesser

  • Raphael Wettinger +

  • Josh Wilson +

  • Nat Wilson +

  • Peter Yin +

Insgesamt 101 Personen haben zu dieser Version beigetragen. Personen mit einem „+“ neben ihren Namen haben zum ersten Mal einen Patch beigesteuert. Diese Namensliste wird automatisch generiert und ist möglicherweise nicht vollständig.

Geschlossene Probleme für 0.17.0#

  • #1923: Problem mit numpy 0 in stats.poisson.rvs (Trac #1398)

  • #2138: scipy.misc.imread stürzt bei 1-Bit-PNG ab (Trac #1613)

  • #2237: Verteilungen akzeptieren keine komplexen Argumente (Trac #1718)

  • #2282: scipy.special.hyp1f1(0.5, 1.5, -1000) schlägt fehl (Trac #1763)

  • #2618: poisson.pmf gibt NaN zurück, wenn mu 0 ist

  • #2957: hyp1f1 Präzisionsproblem

  • #2997: FEHLER: test_qhull.TestUtilities.test_more_barycentric_transforms

  • #3129: Keine Möglichkeit, Bereiche für Anpassungsparameter in Optimize-Funktionen festzulegen

  • #3191: interp1d sollte einen fill_value_below und einen fill_value_above enthalten…

  • #3453: PchipInterpolator setzt Steigungen an den Rändern anders als Matlabs…

  • #4106: ndimage._ni_support._normalize_sequence() schlägt mit numpy.int64 fehl

  • #4118: scipy.integrate.ode.set_solout nach scipy.integrate.ode.set_initial_value aufgerufen, schlägt stillschweigend fehl

  • #4233: 1D scipy.interpolate.griddata mit Methode=nearest erzeugt NaNs…

  • #4375: Alle Tests schlagen aufgrund schlechter Dateiberechtigungen fehl

  • #4580: scipy.ndimage.filters.convolve Dokumentation ist falsch

  • #4627: logsumexp mit Vorzeichenindikator - Berechnung mit negativen…

  • #4702: logsumexp mit Null-Skalierungsfaktor

  • #4834: gammainc sollte 1.0 statt NaN für unendliches x zurückgeben

  • #4838: ENH: exprel spezielle Funktion

  • #4862: Die Funktion scipy.special.boxcox ist für denormalisierte…

  • #4887: Inkongruenzen bei Kugelharmonischen

  • #4895: Haben einige SciPy-Ufuncs inkonsistente Ausgabetypen?

  • #4923: logm konvertiert komplexe Ausgaben nicht aggressiv in Float

  • #4932: FEHLER: stats: Die fit-Methode der Verteilungen ignoriert stillschweigend…

  • #4956: Dokumentationsfehler in scipy.special.bi_zeros

  • #4957: Docstring für pbvv_seq ist falsch

  • #4967: block_diag sollte die dtypes aller Argumente berücksichtigen, nicht nur das des…

  • #5037: scipy.optimize.minimize Fehlermeldungen werden auf stdout ausgegeben…

  • #5039: Kubische Interpolation: Beim Eintritt in DGESDD hatte Parameter Nummer 12…

  • #5163: Basisbeispiel für hierarchische Clusterbildung (Angebot)

  • #5181: FEHLER: stats.genextreme.entropy sollte die explizite Formel verwenden

  • #5184: Einige? Wheels drücken keine numpy-Abhängigkeit aus

  • #5197: mstats: test_kurtosis schlägt fehl (ULP max ist 2)

  • #5260: Tippfehler, der einen Fehler in splrep verursacht

  • #5263: Standard-Epsilon in rbf.py schlägt bei kollinearen Punkten fehl

  • #5276: Lesen einer leeren (ohne Daten) ARFF-Datei schlägt fehl

  • #5280: 1D scipy.signal.convolve ist viel langsamer als numpy.convolve

  • #5326: Implementierungsfehler in scipy.interpolate.PchipInterpolator

  • #5370: Testproblem mit test_quadpack und libm.so als Linker-Skript

  • #5426: FEHLER: test_stats.test_chisquare_masked_arrays

  • #5427: Automatisches Installieren korrekter Numpy-Versionen im numpy-vendor-Image

  • #5430: Python3: Numpy-Skalartypen „nicht iterierbar“; spezifische Instanz…

  • #5450: FEHLER: spatial.ConvexHull löst Segmentierungsfehler bei NaNs aus.

  • #5478: Klärung der Beziehung zwischen Matrix-Normalverteilung und multivariate_normal

  • #5539: lstsq-bezogene Testfehler bei Windows-Binärdateien von numpy-vendor

  • #5560: doc: scipy.stats.burr pdf Problem

  • #5571: lstsq Testfehler nach Änderung des lapack_driver

  • #5577: ordqz stürzt bei Python 3.4 in Wine ab

  • #5578: scipy.linalg Testfehler bei Python 3 in Wine

  • #5607: Überladene Funktion 'isnan(double&)' ist mehrdeutig beim Kompilieren mit…

  • #5629: Test für lstsq zufällig fehlgeschlagen

  • #5630: Speicherleck mit scipy 0.16 spatial cKDEtree

  • #5689: isnan Fehler beim Kompilieren von scipy/special/Faddeeva.cc mit clang++

  • #5694: fftpack Testfehler in test_import

  • #5719: curve_fit(method!=”lm”) ignoriert Anfangsschätzung

Pull Requests für 0.17.0#

  • #3022: hyp1f1: bessere Handhabung von großen negativen Argumenten

  • #3107: ENH: Hinzufügen einer geordneten QZ-Zerlegung

  • #4390: ENH: Zulassen der Übergabe von Achsen- und keepdims-Argumenten an scipy.linalg.norm.

  • #4671: ENH: Achse zu dünn besetzten Normen hinzufügen

  • #4796: ENH: Hinzufügen einer Schnittbaumfunktion zu scipy.cluster.hierarchy

  • #4809: MAINT: Cauchy-Momente sind undefiniert

  • #4821: ENH: stats: Verteilungsinstanzen pickelbar machen

  • #4839: ENH: Hinzufügen der relativen Fehler-Exponential-Ufunc scipy.special.exprel

  • #4859: Logsumexp-Korrekturen - ermöglicht Vorzeichenflags und b==0

  • #4865: FEHLER: scipy.io.mmio.write: Fehler bei großen Indizes und niedriger Präzision

  • #4869: as_inexact-Option zu _lib._util._asarray_validated hinzufügen

  • #4884: ENH: Finite-Differenzen-Annäherung der Jacobi-Matrix

  • #4890: ENH: Portieren von cKDTree-Query-Methoden nach C++, Ermöglichen des Pickling auf Python…

  • #4892: Wie viel Doctesting ist zu viel?

  • #4896: MAINT: Workaround für einen möglichen Bug bei der Auswahl der numpy ufunc loop

  • #4898: MAINT: Ein wenig pyflakes-gesteuerte Bereinigung.

  • #4899: ENH: Hinzufügen des Schlüsselworts 'alternative' zu Hypothesentests in stats

  • #4903: BENCH: Benchmarks für das interpolate-Modul

  • #4905: MAINT: Unterstrich vor mask_to_limits stellen; masked_var löschen.

  • #4906: MAINT: Benchmarks für optimize.leastsq

  • #4910: WIP: Getrimmte Statistikfunktionen haben eine inkonsistente API.

  • #4912: MAINT: Tippo in Stats-Tutorial korrigieren. Schließt gh-4911.

  • #4914: DEP: scipy.stats.ss und scipy.stats.square_of_sums veraltet.

  • #4924: MAINT: Wenn der Imaginärteil von logm einer reellen Matrix klein ist, …

  • #4930: BENCH: Benchmarks für das Signalmodul

  • #4941: ENH: find_repeats aktualisieren.

  • #4942: MAINT: np.float64_t anstelle von np.float_t in cKDTree verwenden

  • #4944: BUG: Ganzzahlüberlauf in correlate_nd

  • #4951: Ungültige kwargs in der fit-Methode von Distributions werden nicht ignoriert

  • #4958: Einige Details zu Docstrings für spezielle Funktionen hinzufügen

  • #4961: ENH: stats.describe: Bias-Schlüsselwort und Behandlung leerer Arrays hinzufügen

  • #4963: ENH: scipy.sparse.coo.coo_matrix.__init__: Weniger Speicher benötigt

  • #4968: DEP: stats.f_value* und mstats.f_value* Funktionen veraltet.

  • #4969: ENH: Überprüfung von stats.relfreq und stats.cumfreq; Korrekturen an stats.histogram

  • #4971: GitHub-Quelllinks auf Zeilenbereiche erweitern

  • #4972: MAINT: Fehlermeldung in validate_runtests_log verbessern

  • #4976: DEP: scipy.stats.threshold veraltet

  • #4977: MAINT: Sorgfältigere Behandlung von Dtypes in blockdiagonalen Matrizen…

  • #4979: ENH: Distributions, komplexe Argumente

  • #4984: Fehlerbehandlung der Dirichlet-Verteilung klären

  • #4992: ENH: stats.fligner und stats.bartlett Behandlung leerer Eingaben.

  • #4996: DOC: stats.spearmanr-Docs korrigieren

  • #4997: Boxcox für Unterlauf/Präzisionsverlust korrigiert

  • #4998: DOC: Verbesserte Dokumentation für stats.ppcc_max

  • #5000: ENH: Leere Eingabebehandlung für scipy.moment hinzugefügt; Dokumentationsverbesserungen

  • #5003: ENH: Algorithmus für Rangdaten verbessert

  • #5005: scipy.stats: Verbesserung der numerischen Stabilität

  • #5007: ENH: NaN-Behandlung in Funktionen, die stats._chk_asarray verwenden

  • #5009: coveralls.io entfernt

  • #5010: Hypergeometrische Verteilung Log-Überlebensfunktion

  • #5014: Patch zur Berechnung von Volumen und Fläche konvexer Hüllen

  • #5015: DOC: Falscher Variablenname in Sawtooth korrigiert

  • #5016: DOC: Beispiel für Resampling

  • #5017: DEP: stats.betai und stats.chisqprob veraltet

  • #5018: ENH: Test mit zufälligen Eingaben für Volumenberechnungen hinzugefügt

  • #5026: BUG: Rückgabe-Dtype von lil_matrix.getnnz(axis=0) korrigiert

  • #5030: DOC: Resampling ist auch für Primzahlen langsam

  • #5033: MAINT: Integrieren, Spezial: ungenutzte R1MACH und Makefile entfernt

  • #5034: MAINT: Signal: Validierung von max_len_seq aus Cython ausgelagert

  • #5035: DOC/MAINT: Referenzhandbuch / Doctest-Drangsal

  • #5041: BUG: Einige kleine Speicherlecks, die von cppcheck erkannt wurden, werden korrigiert

  • #5044: [GSoC] ENH: Neue Algorithmen für kleinste Quadrate

  • #5050: MAINT: C-Korrekturen, viel toter Code aus Cephes gestrichen

  • #5057: ENH: Sparse: Vermeidung von Verdichtung bei elementweiser Multiplikation von Sparse/Dense

  • #5058: TST: Stats: Eine Beispieldistribution in die Testschleife aufnehmen

  • #5061: ENH: Spatial: Schnellere 2D-Voronoi- und Convex Hull-Plots

  • #5065: TST: Testabdeckung für stats.mvsdist und stats.bayes_mvs verbessern

  • #5066: MAINT: Fitpack: Eine No-Op entfernen

  • #5067: ENH: Behandlung leerer und NaN-Eingaben für stats.kstat und stats.kstatvar

  • #5071: DOC: Optimize: Papierreferenz korrigiert, DOI hinzugefügt

  • #5072: MAINT: Bereinigung von scipy.sparse

  • #5073: DOC: Spezial: Beispiel hinzugefügt, das die Beziehung von Diric zu… zeigt

  • #5075: DOC: Parametrisierung von stats.lognorm klärt

  • #5076: Verwende int, float, bool anstelle von np.int, np.float, np.bool

  • #5078: DOC: fftpack-Docs in README umbenennen

  • #5081: BUG: Korrekte Behandlung von Skalar 'b' in lsmr und lsqr

  • #5082: loadmat variable_names: [] und None nicht verwechseln.

  • #5083: Korrektur des Docstrings von integrate.fixed_quad, um den Rückgabewert None anzuzeigen

  • #5086: Verwende solve() anstelle von inv() für gaussian_kde

  • #5090: MAINT: stats: Explizite _sf, _isf zur gengamma-Verteilung hinzufügen

  • #5094: ENH: scipy.interpolate.NearestNDInterpolator: cKDTree konfigurierbar

  • #5098: DOC: Spezial: Typografie in *_roots quadrature-Funktionen korrigieren

  • #5099: DOC: Stats.moment-Docstring als Raw-String formatieren

  • #5104: DOC/ENH-Korrekturen und Mikrooptimierungen für scipy.linalg

  • #5105: ENH: L-BFGS-B-Parameter für die maximale Anzahl von Zeilensuchläufen… gemacht

  • #5106: TST: NIST-Testfälle zu stats.f_oneway hinzufügen

  • #5110: [GSoC]: Begrenzte lineare kleinste Quadrate

  • #5111: MAINT: Spezial: Cephes-Bereinigung

  • #5118: BUG: FIR-Pfad schlug fehl, wenn len(x) < len(b) in lfilter.

  • #5124: ENH: Filliben-Approximation in eine öffentlich sichtbare Funktion verschieben

  • #5126: StatisticsCleanup: stats.kruskal Überprüfung

  • #5130: DOC: PyPi-Trove-Klassifikatoren aktualisieren. Beta -> Stabil. Lizenz hinzufügen.

  • #5131: DOC: differential_evolution, Docstring für Mutation und… verbessern

  • #5132: MAINT: differential_evolution init_population_lhs Kommentare verbessern…

  • #5133: MRG: mmio-Refactoring neu basierend

  • #5135: MAINT: stats.mstats Konsistenz mit stats.stats

  • #5139: TST: linalg: Ein Smoke-Test für gh-5039 hinzufügen

  • #5140: EHN: constants.codata auf CODATA 2014 aktualisieren

  • #5145: ValueError zur Docstring als möglicher Fehler hinzugefügt

  • #5146: MAINT: Implementierungsdetails und Docs in stats.shapiro verbessern

  • #5147: [GSoC] ENH: Upgrades für curve_fit

  • #5150: Irreführendes Wavelets/CWT-Beispiel korrigiert

  • #5152: BUG: cluster.hierarchy.dendrogram: Fehlende Schriftgröße… nicht

  • #5153: Schlüsselwörter zur Steuerung der Summierung in diskreten Verteilungen hinzufügen…

  • #5156: DOC: Kommentare zu Algorithmen der Legendre-Funktion hinzugefügt

  • #5158: ENH: Optimize: Ungarischen Algorithmus hinzufügen

  • #5162: FIX: Lena entfernen

  • #5164: MAINT: Probleme und Docs von cluster.hierarchy.dendrogram korrigiert

  • #5166: MAINT: stats.pointbiserialr delegiert an stats.pearsonr

  • #5167: ENH: nan_policy zu stats.kendalltau hinzufügen.

  • #5168: TST: NIST-Testfall (Norris) zu stats.linregress hinzugefügt.

  • #5169: Docstring von lpmv aktualisieren

  • #5171: Parameter 'metric' im Linkage-Docstring klären

  • #5172: ENH: Schlüsselwort 'mode' zu signal.spectrogram hinzufügen

  • #5177: DOC: Grafisches Beispiel für KDTree.query_ball_point

  • #5179: MAINT: stats: Formel für ncx2.pdf optimieren

  • #5188: MAINT: linalg: Ein wenig aufräumen.

  • #5189: BUG: stats: Explizite Formel in stats.genextreme.entropy verwenden

  • #5193: BUG: Nicht initialisierte Verwendung in lartg korrigieren

  • #5194: BUG: Fehler ordnungsgemäß an Fortran von ode_jacobian_function zurückgeben

  • #5198: TST: Korrektur des Fehlers TestCtypesQuad unter Python 3.5 für Windows

  • #5201: Extrapolation in interp1d erlauben

  • #5209: MAINT: Komplexen Parameter in Y_() in booleschen ändern

  • #5213: BUG: Sparse: Konflikte bei Dtypes von logischen Vergleichen korrigieren

  • #5216: BUG: Sparse: Unbound local error beheben

  • #5218: DOC und BUG: Verbesserungen der Bessel-Funktions-Docstring, array_like korrigiert,…

  • #5222: MAINT: Sparse: COO-Konstruktor korrigieren

  • #5224: DOC: Optimize: Dtype von OptimizeResult.hess_inv variiert

  • #5228: ENH: Maskandscale-Unterstützung für Netcdf hinzufügen; basierend auf pupynere und…

  • #5229: DOC: Tippfehler im Docstring von sparse.linalg.svds korrigiert

  • #5234: MAINT: Sparse: COO-Konstruktor vereinfachen

  • #5235: MAINT: Sparse: Warnung bei todia() mit vielen Diagonalen

  • #5236: MAINT: ndimage: Thread-Handling/Rekursion + Konstanten vereinfachen

  • #5239: BUG: Integrieren: Problem 4118 behoben

  • #5241: Korrekturen an qr_insert, schließt #5149

  • #5246: Doctest-Tutorial-Dateien

  • #5247: DOC: Optimize: Tippfehler/Import-Korrektur in linear_sum_assignment

  • #5248: inspect.getargspec entfernt und Python 3.5 auf Travis CI testen

  • #5250: BUG: Multiplikation von Sparse mit einem einzelnen Null-Element korrigiert

  • #5261: Fehler behoben, der einen TypeError in splrep verursachte, wenn eine Laufzeitwarnung…

  • #5262: Nachfolge zu 4489 (Zusätzliche LAPACK-Routinen in linalg.lstsq)

  • #5264: Kanten mit Null-Länge für Standard-Epsilon ignorieren

  • #5269: DOC: Tippfehler und Rechtschreibprüfung

  • #5272: MAINT: Signal: Array-Syntax in Memoryviews konvertieren

  • #5273: DOC: Raw-Strings für Docstrings mit Mathematik

  • #5274: MAINT: Sparse: Cython-Code für MST aktualisieren

  • #5278: BUG: IO: Raten des Datenbegrenzers in ARFF-Dateien stoppen.

  • #5289: BUG: Misc: Pillow-Workaround für 1-Bit-Bilder korrigieren.

  • #5291: ENH: np.correlate für 1D in scipy.signal.correlate aufrufen

  • #5294: DOC: Spezial: Irreführendes Beispiel aus der… entfernen

  • #5295: Ersetzen von fftpack durch pyfftw vereinfachen

  • #5296: ENH: Matrix-Normalverteilung zu Stats hinzufügen

  • #5297: leaf_rotation und leaf_font_size in Python 3 korrigiert

  • #5303: MAINT: stats: find_repeats umschreiben

  • #5307: MAINT: stats: ungenutzte Fortran-Routine entfernen

  • #5313: BUG: Sparse: Diags für nicht-quadratische Matrizen korrigieren

  • #5315: MAINT: Spezial: Cephes-Bereinigung

  • #5316: Eingabeprüfung für sparse.linalg.svds korrigieren

  • #5319: MAINT: Cython-Code-Wartung

  • #5328: BUG: Korrektur der Rückgabewerte von place_poles

  • #5329: Vermeidung einer fehlerhaften Division durch Null in Student-t-Statistiken

  • #5334: MAINT: Integrieren: Diverse Bereinigungen

  • #5340: MAINT: Fehlermeldung nach STDERR drucken und iterate.dat entfernen

  • #5347: ENH: Py3.5-Stil Matmul-Operator (z.B. A @ B) zu Sparse-Linear… hinzufügen

  • #5350: Fehler beim Lesen von 32-Bit-Float-WAV-Dateien behoben

  • #5351: Algorithmus des PCHIP-Interpolanten refaktorisieren

  • #5354: MAINT: CSR- und CSC-Matrizen aus Ganzzahl-Listen erstellen

  • #5359: Schnellen Pfad zu interp1d hinzufügen

  • #5364: Zwei fill_values zu interp1d hinzufügen.

  • #5365: ABCD-Docstrings

  • #5366: Tippfehler in der Dokumentation von scipy.signal.cwt() gemäß #5290 korrigiert.

  • #5367: DOC: Beispiel für scipy.spatial.Delaunay aktualisiert

  • #5368: ENH: Keine wegwerfbare Klasse bei jedem Funktionsaufruf erstellen

  • #5372: DOC: Spektral: Formatierung von Referenzen korrigieren

  • #5375: PEP8-Anpassungen an ffpack_basic.py

  • #5377: BUG: Integrieren: Eingebauter Name wird nicht mehr überschattet

  • #5381: PEP8-Formatierung von fftpack_pseudo_diffs.py

  • #5385: BLD: Bento-Build für Änderungen an Optimize und Spatial korrigieren

  • #5386: STY: PEP8-Anpassungen an interpolate.py

  • #5387: DEP: stats.histogram veraltet

  • #5388: REL: „make upload“-Befehl zu doc/Makefile hinzufügen.

  • #5389: DOC: Parameter 'origin' von scipy.ndimage.filters.convolve aktualisiert

  • #5395: BUG: Spezial: Eine Reihe von Randfällen im Zusammenhang mit x = np.inf korrigieren.

  • #5398: MAINT: stats: Irreführende Warnungen in lognorm.pdf(0, s) vermeiden

  • #5407: ENH: stats: mu=0 in stats.poisson behandeln

  • #5409: Verhalten diskreter Verteilungen am rechten Rand… korrigieren

  • #5412: TST: stats: Einen Test überspringen, um eine irreführende log(0)-Warnung zu vermeiden

  • #5413: BUG: linalg: Workaround für LAPACK-Single-Precision-lwork-Berechnung…

  • #5414: MAINT: stats: Erstellung von Namedtuples aus der Funktion nach außen verschieben…

  • #5415: DOC: Abschnitte in der Gliederung des PDF-Referenzhandbuchs korrigieren

  • #5416: TST: Korrektur eines ctypes-Tests für integrate unter Fedora.

  • #5418: DOC: Fehler im Docstring von signal.TransferFunction korrigiert. Schließt gh-5287.

  • #5419: MAINT: Sparse: Verwendung von NotImplementedError korrigieren

  • #5420: Korrekten Fehler auslösen, wenn maxiter < 1

  • #5422: DOC: Dokumentation von brent mit bracket konsistenter gestalten

  • #5444: BUG: gaussian_filter, BPoly.from_derivatives schlagen bei numpy int… fehl

  • #5445: MAINT: stats: Falsche Deprecation-Warnungen und Testrauschen korrigieren

  • #5446: DOC: Hinweis auf PyFFTW im fftpack-Tutorial hinzufügen.

  • #5459: DOC: Integrieren: Einige Verbesserungen am Differentialgleichungs….

  • #5465: BUG: Toleranz des mstats-Kurtosistests um wenige ULP lockern

  • #5471: ConvexHull sollte ValueError für NaNs auslösen.

  • #5473: MAINT: Decorators.py-Modul auf Version 4.0.5 aktualisieren

  • #5476: BUG: imsave sucht nach der falschen Kanalachse, wenn das Bild 3 oder… hat

  • #5477: BLD: Numpy zu setup/install_requires für OS X-Wheels hinzufügen

  • #5479: ENH: Jacobian/Hessian von BasinHopping zurückgeben

  • #5484: BUG: Zero-Division-Handling von ttest korrigieren

  • #5486: Absturz bei kmeans2 behoben

  • #5491: MAINT: Parallele Build-Option für runtests.py freigeben

  • #5494: OptimizeResult.__repr__ alphabetisch nach Schlüssel sortieren

  • #5496: DOC: Zuordnungsliste der Autoren aktualisieren

  • #5497: Verbesserung von binned_statistic: Option zum Entwirren der zurückgegebenen…

  • #5498: BUG: Sparse: Fehler bei der Auflösung von Dtypes für sparsetools korrigieren

  • #5500: DOC: Nicht druckbare Zeichen in Docstrings erkennen

  • #5505: BUG: Misc: Sicherstellen, dass fromimage den Modus 'P' in 'RGB' oder 'RGBA' konvertiert.

  • #5514: DOC: Release Notes weiter aktualisieren

  • #5515: ENH: Optionale Deaktivierung der Festpunktbeschleunigung

  • #5517: DOC: Verbesserungen und Ergänzungen zum Matrix-Normal-Doc

  • #5518: Wrapper für veraltete LAPACK-Routinen entfernen

  • #5521: TST: linalg.orth-Speichertest auf 32-Bit-Plattformen überspringen.

  • #5523: DOC: Einige Floats in Docstring-Beispielen in Integers ändern

  • #5524: DOC: Weitere Aktualisierungen der Release Notes 0.17.0.

  • #5525: Korrektur eines kleinen Tippfehlers in der Dokumentation für scipy.integrate.ode

  • #5527: TST: Arccosh-Toleranz erhöhen, um ungenaues Numpy oder… zu ermöglichen

  • #5535: DOC: Signal: Geringfügige Klärung des Docstrings von TransferFunction.

  • #5538: DOC: Signal: Dokumentation von find_peaks_cwt korrigieren

  • #5545: MAINT: Tippfehler in linalg/basic.py korrigieren

  • #5547: TST: Test_Eig.test_singular auf dem Master-Branch als bekannt fehlerhaft markieren.

  • #5550: MAINT: Workaround für lstsq-Treiber-Auswahlproblem

  • #5556: BUG: Defekte Aktualisierung des Radius des Dogbox-Trust-Regions behoben

  • #5561: BUG: Warnungen, Ausnahme (unter Win) in test_maskandscale eliminieren;…

  • #5567: TST: Einige Bereinigungen in der Testsuite; run_module_suite und klarere…

  • #5568: MAINT: _argcheck von poisson vereinfachen

  • #5569: TST: GMean-Testtoleranz erhöhen, damit er unter Wine besteht

  • #5572: TST: lstsq: Testtoleranz für TravisCI erhöhen

  • #5573: TST: Verwendung von np.fromfile aus cluster.vq-Tests entfernen

  • #5576: Lapack-Veralterungen

  • #5579: TST: Tests für linalg.norm-Achsen-Schlüsselwort auf Numpy <= 1.7.x überspringen

  • #5582: Sprache der Überlebensfunktionsdokumentation klären

  • #5583: MAINT: stats/tests: Ein wenig aufräumen.

  • #5588: DOC: stats: Hinweis hinzufügen, dass stats.burr die Burr-Verteilung vom Typ III ist.

  • #5595: TST: Test_lamch-Fehler unter Python 3 korrigieren

  • #5600: MAINT: spatial/ckdtree.cxx und .h ignorieren

  • #5602: Explizit nummerierte Ersetzungsfelder für Wartbarkeit

  • #5605: MAINT: Sammlung kleiner Korrekturen an der Testsuite

  • #5614: Kleinere Dokumentationsänderung.

  • #5624: FIX: Interpolation korrigieren

  • #5625: BUG: MSVC9-Binärdateien stürzen ab, wenn ein std::vector der Größe 0 indiziert wird

  • #5635: BUG: Rechtschreibfehler __dealloc__ in cKDTree.

  • #5642: STY: Kleinere Formatierungsanpassung der Release Notes 0.17.0.

  • #5643: BLD: Build-Problem in special/Faddeeva.cc mit isnan korrigieren.

  • #5661: TST: linalg-Tests verwendeten stdlib random anstelle von numpy.random.

  • #5682: Backports für 0.17.0

  • #5696: Kleinere Verbesserungen am Docstring von least_squares.

  • #5697: BLD: Korrektur für isnan/isinf-Probleme in special/Faddeeva.cc

  • #5720: TST: Korrektur für Fehler beim Öffnen von Dateien im fftpack-Test test_import.py

  • #5722: BUG: curve_fit sollte einen Anfangswert mit Grenzen respektieren

  • #5726: Backports für v0.17.0rc2

  • #5727: API: Änderungen an der least_squares API