Seite 1 von 1

Matrix und Elementweise Mathefunktion anwenden

Verfasst: Freitag 14. Juni 2013, 15:15
von The Spirit
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

Re: Matrix und Elementweise Mathefunktion anwenden

Verfasst: Freitag 14. Juni 2013, 15:36
von BlackJack
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]])

Re: Matrix und Elementweise Mathefunktion anwenden

Verfasst: Freitag 14. Juni 2013, 16:32
von schaeffkoch
..und warum nicht numpy.arctan?

Re: Matrix und Elementweise Mathefunktion anwenden

Verfasst: Freitag 14. Juni 2013, 21:00
von BlackJack
@schaeffkoch: Oder so. :oops: (Ich hatte nach `numpy.atan` geschaut.)

Re: Matrix und Elementweise Mathefunktion anwenden

Verfasst: Montag 17. Juni 2013, 07:08
von The Spirit
thx.
da hab ich mal wieder nicht weit genug gedacht :(