Veri Bilimi Yolculuğu

Original article was published on Artificial Intelligence on Medium

http://www.bigintellects.com/2015/10/how-to-become-data-scientist-and-learn.html

Merhabalar.
Veri bilimi ve Makine öğrenmesi alanına giriş yapmış biri olarak bilgilerimi bu yolculukta sizlerle paylaşacağım.

Başlamadan önce Merve Tatlıdil’in yayınlamış olduğu ‘Veri Bilimi Kaynakları’ yazısını okumanızı öneririm.
Link : https://medium.com/@mervetatlidil/veri-bilimi-kaynaklar%C4%B1-b5c4b40dfee3

Şimdi bu yolculukta hangi konulara değineceğimize bir göz atalım;

1- NumPy tutorial
2- Pandas tutorial
3- Veri görselleştirme
4- Veri bilimi için istatistik
5- Veri ön işleme

Veri bilimi yolculuğumuzda bu adımları takip edeceğiz.

Hazırsanız yolculuk başlasın 🙂
Şimdiden hepinize iyi öğrenmeler.

NumPy Tutorial

İlk olarak sizlere NumPy kütüphanesinde kesinlikle bilmemiz gereken fonksiyonlardan ve işlemlerden bahsedeceğim.

NumPy, hızlı bir şekilde bilimsel hesaplamalar yapmamızı sağlayan bir matematik kütüphanesidir. Numpy dizileri python listelerine benzer, ancak hız ve işlevsellik açısından python listelerinden daha yararlıdır.

İlk olarak NumPy kütüphanesini import edelim :

In [1]: import numpy as np

Tek boyutlu bir NumPy dizisi oluşturalım ;

In [2]: array_list = np.array([1, 2, 3, 4])
In [3]: print(array_list)
Out[3]: array([1, 2, 3, 4])

Çok boyutlu bir NumPy dizisi oluşturalım ;

In [4]: array_list = np.array([(1,2,3),(4,5,6)])
In [5]: print(array_list)
Out[5]: array([[1, 2, 3],
[4, 5, 6]])

Bir NumPy array’i oluşturmayı öğrendik. Şimdi NumPy’ın olmazsa olmaz fonksiyonlarına göz atalım.

1- Dtype

Dtype, NumPy array’deki elemanların türünü tanımlayan bir fonksiyondur.

In [6]: array_list=np.array([14,55,66])
In [7]: print(array_list.dtype)
Out[7]: dtype('int32')
In [8]: array_list=np.array(["one","two","three"])
In [9]: print(array_list.dtype)
Out[9]: dtype('<U5')

2- Ndim

NumPy array nesnesinin boyutunu bulmamıza yardımcı olur.

In [10]: array_list=np.array([[1,2,3],[4,5,6]])
In [11]: print(array_list.ndim)
Out[11]: 2 # Çıktı 2 olduğundan dolayı NumPy array'i 2 boyutludur.

3- Shape

Numpy array nesnesinin kaç satır ve sütundan oluştuğunu, N x M şeklinde döndürür. N satır, M ise sütun demektir.

In [12]: array_list=np.array([[1,2,3],[9,8,6]])
In [13]: print(array_list.shape)
Out[13]: (2,3) # NumPy array'i 2 satır 3 sütundan oluşuyor.

4- Reshape

Reshape, NumPy array’in satır ve sütun sayısını değiştirmek demektir.

In [14]: array_list=np.array([0,1,2,3,4,5,6,7,8,9])
In [15]: print(array_list)
Out[15]: array([0,1,2,3,4,5,6,7,8,9]) # 1 satır 10 sütun (1,10)

Shape’i (1,10) olan NumPy array’i reshape kullanarak (5,2) yapalım.

In [16]: print(array_list.reshape(5,2))
Out[16]: array([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]]) # 5 satır 2 sütun (5,2)

5- Size

NumPy array’in toplam eleman sayısını döndürür.

In [17]: array_list= np.array([[112,155,182],[1494,28,1453]])
In [18]: print(array.size)
Out[18]: 6

6- Arange

Belirtilen başlangıç ​​değerinden başlayarak ve her seferinde adım sayısını artırarak, bitiş değerine kadar olan sayıları içeren sayısal bir dizi döndürür.

Genel kullanım: np.arange (başlangıç, bitiş, adım sayısı)

Not: Başlangıç varsayılanı 0’dır. Adım sayısı varsayılanı ise 1’dir.

In [19]: array_list= np.arange(10) #np.arange(0,10,1) anlamına gelir
In [20]: print(array_list)
Out[20]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
In [21]: array_list2= np.arange(1,20,5)
In [22]: print(array_list2)
Out[22]: array([ 1, 6, 11, 16])
In [23]: array_list3= np.arange(5,20,3)
In [24]: print(array_list3)
Out[24]: array([ 5, 8, 11, 14, 17])

7- Linspace

İki sayı arasında eşit aralıklı değerler döndürür.

Genel kullanım: np.linspace(başlangıç, bitiş, adet)

In [25]: array_list= np.linspace(1,3,10)
In [26]: print(array_list)
Out[26]: array([1., 1.22222222, 1.44444444, 1.66666667, 1.88888889,2.11111111, 2.33333333, 2.55555556, 2.77777778, 3. ]) # 1 ile 3 arasında 10 adet eşit aralıklı sayı döndürdü.

8- Min

NumPy array’deki minimum değeri bulur.

In [27]: array_list= np.arange(1,14,3)
In [28]: print(array_list)
Out[28]: array([ 1, 4, 7, 10, 13])
In [29]: print(np.min(array_list))
Out[29]: 1

Bir diğer ve en çok tercih edilen kullanım ise şöyledir ;

In [30]: print(array_list.min())
Out[30]: 1

9- Max

NumPy array’deki maximum değeri bulur.

In [31]: array_list= np.arange(1,53,14)
In [32]: print(array_list)
Out[32]: array([ 1, 15, 29, 43])
In [33]: print(array_list.max())
Out[33]: 43

10- Sum

Numpy array içindeki elemanları toplar.

In [34]: array_list= np.arange(1,43,11)
In [35]: print(array_list)
Out[35]: array([ 1, 12, 23, 34])
In [36]: print(array_list.sum())
Out[36]: 70

Numpy’da axis kavramı
axis = 0 ise sütun ,
axis = 1 ise satır baz alınıyor demektir.

In [37]: array_list= np.array([[12,13,14],[1,2,3],[4,6,8]])
In [38]: print(array_list)
Out[38]: array([[12, 13, 14],
[ 1, 2, 3],
[ 4, 6, 8]])
In [39]: print(array_list.sum(axis=0))
Out[39]: array([17, 21, 25])
In [40]: print(array_list.sum(axis=1))
Out[40]: array([39, 6, 18])

11- Zeros

Numpy zeros, belirtilen satır ve sütuna sahip 0’lık bir matris döndürür.

In [41]: array_list= np.zeros((3,4))
In [42]: print(array_list)
Out[42]: array([[0., 0., 0., 0.],
[0., 0., 0., 0.],
[0., 0., 0., 0.]])

12- Ones

Numpy ones, belirtilen satır ve sütuna sahip 1 matrisini döndürür.

In [43]: array_list= np.ones((3,5))
In [44]: print(array_list)
Out[44]: array([[1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1.]])

13- Eye

Belirtilen boyutlarda birim matrisi oluşturmamızı sağlayan bir fonksiyondur.

In [45]: array_list= np.eye((3))
In [46]: print(array_list)
Out[46]: array([[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])