apple-1594742_1280

NumPy Dizi Özellikleri ? NumPy’ e Giriş #2

NumPy Dizi Özellikleri :

NumPy kullanmamızın asıl amacı çok boyutlu (multidimensional) homojen diziler oluşturmaktır ve bu dizinin elamanları genelde sayılardan oluşur. NumPy ‘da boyut aksis (axes) olarak adlandırılır. Aksislerin sayısı ise derece (rank) olarak adlandırılır.

Örneğin;

[1,2,3] rank = 1′ dir. 

[[1,2,3], [4,5,6]] rank = 2 ‘dir.   2-dimensional

NumPy’ da array sınıfları (class) ndarray olarak adlandırılmıştır. numpy.array ile standard Python’ daki array.array aynı değildir.

Dizilerin özellikleri  (ndarray) şunlardır: 

ndarray.ndim :  Aksis (boyut) sayısını verir. Bu da daha önce dediğim gibi “rank” olarak adlandırılır.

ndarray.shape : Dizi kaç boyutlu ise onu verir. Eğer siz  n  X m  matris yarattıysanız , aslında bu (n,m) lik bir tuple dır.

ndarray.size : Dizideki elemanların sayısını verir. Bu da  n*m‘ e eşittir.

ndarray.itemsize:  Dizinin elemanlarının her birisi için byte sayısını verir. Örneğin complex32 için byte sayısı (itemsize  = 4 <-  32 / 8). Float64‘ e bakacak olursa itemsize = 8 (64/8). Şu şekilde kullanımı mevcut ndarray.dtype.itemsize

ndarray.data : Dizinin içindeki elemanlara ulaşmak için kullanıyor ama biz index ile ulaştığımız için bu özelliği kullanmaya gerek duymuyoruz.

Hemen bunları bir örnekle pekiştirelim.

 

Burada arange() metodu 0 ‘dan 15’ e kadar bir dizi yarattı. Ardından bu dizileri reshape(3,5) metodu ile şekillendirip 3*5 bir matris yaratmış olduk. Bunu şu şekilde görebiliriz.

 

Dizi boyutları kafa karıştırıcı olabilir.  a.ndim yazdığımızda 2 sonucunu aldık. Şimdi dizi boyutlarını görsellerle kavrayalım.

Dizi Oluşturma:

Öncelikle numpy kütüphanesi import etmemiz lazım.

 

Burada  2 satır ve 2 sütunda oluşan bir dizi yaratmak istediğimiz ve bununda tipinin  kompleks olacağını “dtype = complex” yaparak belirtiyoruz.Eğer int tipinde oluşturmak isterseniz “dtype = int” yapabilirsiniz.

NumPy de dizi yaratırken boyutu bilinir fakat  elemanları bilinmez. Bundan dolayı Python da  vekil olarak adlandırılan elementlerle dizi oluşturma özelliği mevcuttur.

np.zeros(): Elemanlarının hepsi 0 olan dizi oluşturmamızı sağlar.

 

np.ones() : Adından da anlaşılacağı üzere elemanlarının hepsi 1 olan dizi yaratır.

 

np.empty(): Memory’nin durumuna göre rastgele belirlenmiş elemanlardan oluşan dizi yaratır.

 

arange(): float tiplere izin vermesine rağmen kullanılmaz. Float değerlerden dolayı sonsuz tahmin durumuna girer ve çıkamaz. Bunun yerine linspace() kullanılır. Onu da şu örnekle inceleyelim.

Note: Eğer bütün NumPy kütüphanesini eklemek istemiyorsanız, sadece size lazım olan veriyi almak istiyorsanız aşağıdaki örnekte bu kullanım şeklini de görebilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir