Matrix und Elementweise Mathefunktion anwenden

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
The Spirit
User
Beiträge: 274
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Freitag 14. Juni 2013, 15:15

Hi.
Ich habe einen zweidimensionales Numpy Array.
Ich möchte jetzt von jedem Element den Arcustan wissen.
Bzw. möchte ich eigentlich einen neue matrix haben

Code: Alles auswählen

neu_matrix = atan(alt_matrix)
Mein Problem ist das die math Klasse nur mit eindimensionalen Arrays umgehen kann.
Ich will aber jetzt nicht ne schleife machen, da diese bei einer großen Matrix zu lange dauern wird.
Gibt es hier was?
Danke
BlackJack

Freitag 14. Juni 2013, 15:36

The Spirit: Suchst Du eventuell `numpy.vecorize()`?

Code: Alles auswählen

In [22]: A = np.random.random((2, 2))

In [23]: A
Out[23]: 
array([[ 0.88060108,  0.41527905],
       [ 0.14827246,  0.38724037]])

In [24]: atan = np.vectorize(math.atan)

In [25]: atan(A)
Out[25]: 
array([[ 0.7219935 ,  0.39360819],
       [ 0.14719999,  0.36945853]])
schaeffkoch
User
Beiträge: 38
Registriert: Dienstag 21. August 2012, 10:59

Freitag 14. Juni 2013, 16:32

..und warum nicht numpy.arctan?
BlackJack

Freitag 14. Juni 2013, 21:00

@schaeffkoch: Oder so. :oops: (Ich hatte nach `numpy.atan` geschaut.)
The Spirit
User
Beiträge: 274
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Montag 17. Juni 2013, 07:08

thx.
da hab ich mal wieder nicht weit genug gedacht :(
Antworten