Typumwandlung von ganzem Array

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.
kommando_pimperlepim
User
Beiträge: 23
Registriert: Dienstag 3. April 2007, 05:32

Typumwandlung von ganzem Array

Beitragvon kommando_pimperlepim » Montag 23. April 2007, 20:10

ich würde gerne einen Array mit Fließkommazahlen in einen mit Integers umwandeln, so nach dem Motto

Code: Alles auswählen

from numpy import *

x=arange(4)+0.2
x=int(x) #funktioniert nicht


Weiß jemand, wie sich das machen lässt?
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Montag 23. April 2007, 20:14

Code: Alles auswählen

for y in x:
   x[y] = str(y)


Würd ich machen oO''! Aber gibt sicherlich was besseres.


Code: Alles auswählen

from numpy import *


Ist außerdem nicht schön.

Code: Alles auswählen

import numpy


ist viel schöner ^_^
kommando_pimperlepim
User
Beiträge: 23
Registriert: Dienstag 3. April 2007, 05:32

Beitragvon kommando_pimperlepim » Montag 23. April 2007, 20:28

Das klappt so leider nicht ganz, weil y nicht der index ist. Klar im arange-Beispiel schon, aber ich würde das gerne für beliebige Arrays können. Das arange-Beispiel habe ich nur gewählt, um das Problem kurz darzustellen.
BlackJack

Beitragvon BlackJack » Montag 23. April 2007, 20:58

Numpy-Arrays haben eine `astype()`-Methode:

Code: Alles auswählen

In [83]: x = numpy.arange(4) + 0.2

In [84]: x
Out[84]: array([ 0.2,  1.2,  2.2,  3.2])

In [85]: x.astype(int)
Out[85]: array([0, 1, 2, 3])

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder