4 coole Numpy Features, die ich ständig benutze

In diesem Artikel möchte ich über verschiedene Numpy-Funktionen sprechen, mit denen ich ständig Daten analysiere. Dies ist keine vollständige Liste, aber ich denke, dass die Werkzeuge, die diskutiert werden, ausnahmslos für alle von Nutzen sein werden.



Angesichts einer neuen Aufgabe dachte ich immer wieder: „Dies ist eine ziemlich spezifische Sache, für die es kaum eine eingebaute Funktion gibt.“ Bei Numpy habe ich mich öfter geirrt als geirrt.


Aber kommen wir zum Punkt. Die einzige Importzeile, die wir brauchen:





wo ()


Die Funktion where () gibt Elemente zurück, die eine bestimmte Bedingung erfüllen. Schauen wir uns ein Beispiel an.


Erstellen Sie eine Bewertungsliste ( beliebig ):



Jetzt können Sie where () verwenden , um Schätzungen zu finden, die beispielsweise größer als 3 sind:



Bitte beachten Sie, dass die Indizes der gesuchten Artikel zurückgegeben werden.


Aber das ist natürlich nicht alles, die Funktion kann zwei optionale Parameter annehmen:


  • Der erste ersetzt die Werte, die die Bedingung erfüllen
  • Der zweite Befehl erledigt dies für Werte, die die Bedingung nicht erfüllen


Da der Artikel kurz sein soll, werden wir uns damit befassen.




argmin (), argmax (), argsort ()


Die Funktion argmin () gibt den Index des Minimalwerts zurück. Für die gleiche Reihe von Bewertungen, die wir oben verwendet haben, lautet das Ergebnis:



argmax () macht , wie Sie wahrscheinlich vermutet haben, genau das Gegenteil - gibt den Index des maximalen Elements zurück:



Das letzte der drei argsort () gibt eine Liste der Indizes der sortierten Elemente des Arrays zurück. Vergessen Sie es nicht: Sie werden auf eine Vielzahl von Situationen stoßen, wenn Sie es brauchen.





intersect1d ()


Die Funktion intersect1d () gibt den Schnittpunkt zweier Arrays zurück, d.h. einzigartige Elemente, die in beiden gefunden werden. Im Gegensatz zu den vorherigen Beispielen werden nicht die Indizes, sondern die Werte selbst zurückgegeben.


Erstellen Sie zwei Arrays:



Finden Sie die gemeinsamen Elemente:





allclose ()


Betrachten Sie abschließend die Funktion allclose () . Es wird True zurückgegeben, wenn die Elemente der beiden Arrays innerhalb der Toleranz gleich sind. Auch hier haben Sie keine Ahnung, wie oft dies beim Arbeiten mit Daten erforderlich ist.


Wir werden zwei Arrays deklarieren, deren Differenz zwischen den entsprechenden Elementen nicht mehr als 0,2 beträgt:



Die Funktion allclose () mit einer Toleranz von 0.1 sollte False zurückgeben :



Erhöhen Sie die Toleranz auf 0,2 , um die ungefähre Gleichheit der Arrays zu erhalten:





Abschiedswörter


Zählen Sie nicht, wie oft ich an der Erfindung des Rades schuld war ( und bin). Oft denken wir, dass unser Problem einzigartig ist, und niemand hat vermutet, ein Werkzeug zu entwickeln, um es zu lösen. Manchmal stimmt das, aber oft fühlen Sie sich wie der letzte Idiot, der eine bequeme Standardfunktion findet, anstatt die, die Sie bereits viel Zeit damit verbracht haben, zu erstellen.


Es ist besser, ein wenig Zeit damit zu verbringen, die Möglichkeiten populärer Bibliotheken zu erkunden, denn dank ihnen wurden Bibliotheken populär.


Danke fürs Lesen.

Source: https://habr.com/ru/post/de480740/


All Articles