Veri tipi objeleri
Data type objeleri, numpy.dtype sınıfının instance’larıdır. Önceki yazılarımda belirttiğim gibi dizilerin belirli bir type’ı vardır. Dizimizin byte türünden buyüklüğüne ulaşmak için
dizi1.dtype.itemsize fonksiyonunu kullanmamız yeterli olacaktır.
In: a = array([[1,2],[3,4]]) In: a.dtype.itemsize Out: 8
Temsili görsel ile daha iyi anlayabilirsiniz.
Karakter kodları
i – integer
u – unsigned integer
f – single precision float
d – double precision float
b – bool
D – complex
S – string
U – unicode
V – void
Karakter kodlarına örnek verecek olursak:
In: arange(7, dtype='D') Out: array([ 0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j, 4.+0.j, 5.+0.j, 6.+0.j])
dtype özellikleri
Şimdi data tipleri nasıl create edilir onu göstermek istiyorum. İlk olarak float türünden başlayalım.
sctypeDict.keys(): Tüm data tiplerine ulaşmanıza yarar.
In: dtype(float) Out: dtype('float64') In: dtype('f') Out: dtype('float32') In: dtypwe('d') Out: dtype('float64') In: dtype('f8') Out: dtype('float64')
Dilimleme ve indexleme
İlk olarak tek boyutta yapalım işlemlerimizi
0’dan 9’a array oluşturalım ve 3’ten 7’ye kadar olan kısmını shell ekranına yazdıralım.
In: a = arange(9) In: a[3:7] Out: array([3, 4, 5, 6])
2’şer artan şeklinde yazdıralım
In: a[:7:2] Out: array([0, 2, 4, 6])
İndekslemede en sona -1 koyduğumuzda tersten yazdırma işlemini yaparız
In: a[::-1] Out: array([8, 7, 6, 5, 4, 3, 2, 1, 0])
Şimdide multidimension’da yapalım.
In: b = arange(24).reshape(2,3,4) In: b.shape Out: (2, 3, 4) In: b Out: array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]], [[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]]])
İndeksleme işlemini şu şekilde yapabiliriz, dizinin ilk elemanını seçmek istiyoruz diyelim
In: d=b[0,0,0] In: d Out: 0