Pandas Kütüphanesi
Pandas kütüphanesi, Python programlama dilinde veri analizi yapmak için tasarlanmış bir kütüphanedir. Açık kaynak kodlu ve ücretsizdir. Pandas kütüphanesi, farklı kaynaklardan veri okumak, verileri düzenlemek, filtrelemek, gruplamak, birleştirmek, istatistiksel analizler yapmak, görselleştirmek gibi pek çok işlemi kolayca yapmamızı sağlar. Pandas kütüphanesi, iki temel veri yapısı kullanır: Seri ve DataFrame.
Seri, tek boyutlu, etiketli ve indeksli bir veri yapısıdır. Seri içindeki verilerin hepsi aynı veri tipine sahip olmalıdır. Örneğin, bir seri sadece sayısal değerler, sadece metinsel değerler veya sadece mantıksal değerler içerebilir. Seri, bir Python listesi, sözlüğü veya NumPy dizisi gibi veri kaynaklarından oluşturulabilir. Seri, indeks numaraları veya etiketleri ile erişilebilir. Seri, verileri hızlı ve verimli bir şekilde işlemek için optimize edilmiştir. DataFrame, iki boyutlu, etiketli ve indeksli bir veri yapısıdır. DataFrame, bir veya daha fazla seri içerebilir. DataFrame içindeki veriler, farklı veri tiplerine sahip olabilir. Örneğin, bir DataFrame, sayısal, metinsel ve mantıksal değerler içeren sütunlardan oluşabilir. DataFrame, bir Python listesi, sözlüğü, NumPy dizisi, CSV dosyası, Excel dosyası veya veri tabanı tablosu gibi veri kaynaklarından oluşturulabilir. DataFrame, sütun isimleri veya indeks numaraları ile erişilebilir. DataFrame, verileri tablo şeklinde göstermek, sıralamak, gruplamak, birleştirmek gibi işlemler için uygundur. 1. UYGULAMA Aşağıdaki işlem adımlarını takip ederek Pandas kütüphanesini yükleme ve Pandas serisi oluşturma işlemlerini yapabilirsiniz. 1. Adım: Pandas kütüphanesini yükleme işlemini yapınız. import pandas as pd 2. Adım: Pandas serisine eklemek için bir boyutlu dizi oluşturunuz. data = ["Ali","Veli","Can","Aylin"] 3. Adım: Oluşturulan diziden Pandas kütüphanesini kullanarak bir seri oluşturunuz. s1 = pd.Series(data) s1 4. Adım: Sayılardan oluşan bir Pandas serisi oluşturunuz. s2 = pd.Series([5,6,7,8]) s2 5. Adım: Karakterlerden oluşan bir NumPy dizisinden Pandas serisi oluşturunuz. dizi = np.array([’p’,’y’,’t’,’h’,’o’,’n’]) s3 = pd.Series(dizi) s3 6. Adım: Python sözlüğü üzerinden seri oluşturma işlemini yapınız. dict = {"us":"Amerika","uk":"İngiltere","jp":"Japonya"} s4 = pd.Series(dict) s4 Pandas DataFrame, iki boyutlu veri tablolarıdır. Bu, verilerin satırlar ve sütunlar şeklinde düzenlenmiş bir şekilde dizilmesi anlamına gelir. Pandas DataFrame, verilerin yanı sıra satır ve sütunların etiketlerini de içerir. Pandas DataFrame oluşturmak için pandas kütüphanesinin DataFrame adlı bir fonksiyonunu kullanabilirsiniz. Örneğin, şöyle bir DataFrame oluşturabilirsiniz: python import pandas as pd data = { "ad": ["Ali", "Veli", "Ayşe"], "soyad": ["Yılmaz", "Demir", "Kaya"], "yas": [25, 32, 28] } df = pd.DataFrame(data) print(df) Bu kodda, data adlı bir sözlük tanımlanmıştır. Bu sözlükte, ad ve soyad adında iki anahtar ve Ali, Veli ve Ayşe adında üç değer bulunmaktadır. Bu değerler de yas adında bir değere sahiptir. Bu değerlerin türü int64’dır. df adında bir DataFrame nesnesi oluşturulmuştur. Bu nesne, data sözlüğündeki her anahtar-değer çiftini satır olarak alır ve bunları sütun olarak alır. Son olarak, print fonksiyonu ile DataFrame’i ekrana yazdırır. 2. UYGULAMA Pandas DataFrame oluşturma işlemleri, Python’da tablo şeklinde veri yapıları oluşturmak için kullanılan bir kütüphanedir. Pandas DataFrame, sütun ve satırlardan oluşan iki boyutlu bir veri yapısıdır. Pandas DataFrame oluşturmak için farklı yöntemler vardır. Aşağıda, bu yöntemlerden birine ait adımları paylaşıyorum. 1. Adım: Bir Python listesi oluşturunuz. liste=[4,5,6,"d","e","f"] Bu adımda, Python’da bir liste oluşturuyoruz. Liste, farklı veri tiplerini içerebilir. Liste, köşeli parantezler içinde virgülle ayrılmış elemanlardan oluşur. 2. Adım: Oluşturulan listeyi kullanarak bir Pandas DataFrame oluşturunuz. df=pd.DataFrame(liste) Bu adımda, Pandas kütüphanesini pd olarak içe aktarıyoruz. pd.DataFrame() fonksiyonu ile listeyi bir DataFrame’e dönüştürüyoruz. df değişkenine atıyoruz. 3. Adım: Oluşturulan DataFrame’de sütun için etiket oluşturma işlemini yapınız. df=pd.DataFrame(liste, columns=["Veriler"]) Bu adımda, DataFrame’in sütununa bir isim veriyoruz. columns parametresi ile sütun ismini belirtiyoruz. Bu örnekte, sütun ismi "Veriler" olarak seçtik. 4. Adım: İki boyutlu bir liste oluşturunuz. data = [[’Can’,11],[’Zeynep’,14],[’Ahmet’,15]] Bu adımda, iki boyutlu bir liste oluşturuyoruz. İki boyutlu liste, iç içe geçmiş listelerden oluşur. Bu örnekte, her bir iç liste, bir öğrencinin adını ve yaşını içeriyor. 5. Adım: Oluşturulan iki boyutlu listeden bir DataFrame oluşturma işlemini yapınız. df = pd.DataFrame(data,columns=[’Ad’,’Yaş’]) Bu adımda, iki boyutlu listeyi bir DataFrame’e dönüştürüyoruz. columns parametresi ile sütun isimlerini belirtiyoruz. Bu örnekte, sütun isimleri "Ad" ve "Yaş" olarak seçtik. 6. Adım: Bir liste sözlüğünden DataFrame oluşturma işlemini yapınız. data = {’Ad’:[’Can’, ’Zeynep’, ’Ahmet’],’Yaş’:[11,14,15]} Bu adımda, bir liste sözlüğü oluşturuyoruz. Liste sözlüğü, anahtar-değer çiftlerinden oluşur. Anahtarlar, sütun isimlerini, değerler ise sütun değerlerini içeren listeleri temsil eder. Bu örnekte, "Ad" ve "Yaş" anahtarlarına karşılık gelen listeleri oluşturduk. df = pd.DataFrame(data) df Bu adımda, liste sözlüğünü bir DataFrame’e dönüştürüyoruz. df değişkenine atıyoruz. df’i yazdırıyoruz. 7. Adım: DataFrame indeks değerlerini değiştirme işlemini yapınız. df = pd.DataFrame(data,index=[’Ogrenci1’,’Ogrenci2’, ’Ogrenci3’]) df Bu adımda, DataFrame’in indeks değerlerini değiştiriyoruz. index parametresi ile indeks değerlerini belirtiyoruz. Bu örnekte, indeks değerleri "Ogrenci1", "Ogrenci2" ve "Ogrenci3" olarak seçtik. df’i yazdırıyoruz. PYTHON KODU # Pandas kütüphanesini içe aktarma import pandas as pd # Bir Python listesi oluşturma liste = [4,5,6,"d","e","f"] # Listeyi bir DataFrame’e dönüştürme df = pd.DataFrame(liste) # DataFrame’in sütununa isim verme df = pd.DataFrame(liste, columns=["Veriler"]) # İki boyutlu bir liste oluşturma data = [[’Can’,11],[’Zeynep’,14],[’Ahmet’,15]] # İki boyutlu listeyi bir DataFrame’e dönüştürme df = pd.DataFrame(data,columns=[’Ad’,’Yaş’]) # Bir liste sözlüğü oluşturma data = {’Ad’:[’Can’, ’Zeynep’, ’Ahmet’],’Yaş’:[11,14,15]} # Liste sözlüğünü bir DataFrame’e dönüştürme df = pd.DataFrame(data) # DataFrame’i yazdırma print(df) # DataFrame’in indeks değerlerini değiştirme df = pd.DataFrame(data,index=[’Ogrenci1’,’Ogrenci2’,’Ogrenci3’]) # DataFrame’i yazdırma print(df) #Yazan Rıdvan Kaya Pandas Seri / DataFrame İncelemesi, verilerin nasıl düzenlendiğini, analiz edildiğini ve görselleştirildiğini anlamak için kullanılan bir yöntemdir. Pandas, Python programlama dilinde veri işleme için popüler bir kütüphanedir. Pandas, verileri tablo şeklinde saklar ve manipüle etmek için çeşitli fonksiyonlar sunar. Bu fonksiyonlardan bazıları şunlardır: - pandas.Series: Bir sütun veya dizinin pandas nesnesidir. Bir sütun veya dizinin her elemanına bir değer atayabilir ve bu değeri istediğiniz şekilde işleyebilirsiniz. - pandas.DataFrame: Bir tablonun pandas nesnesidir. Bir tablonun satır ve sütunlarını belirleyebilir ve bu satır ve sütunlara erişebilirsiniz. - pandas.to_frame(): Bir pandas.Series veya pandas.DataFrame nesnesini bir DataFrame nesnesine dönüştürmenizi sağlar. - pandas.DataFrame.plot(): Bir DataFrame nesnesinin grafiğini oluşturmanızı sağlar. Grafiği çeşitli şekillerde (çubuk, pasta, nokta vb.) gösterebilirsiniz. Pandas Seri / DataFrame İncelemesi yapmak için, öncelikle verilerinizi bir DataFrame nesnesine dönüştürmeniz gerekir. Sonra, bu DataFrame nesnesinin özelliklerini (sütun isimleri, veri tipleri, boyutlar vb.) inceleyebilirsiniz. Ayrıca, bu DataFrame nesnesinin içindeki verileri istediğiniz şekilde filtreleyebilir, gruplayabilir, toplayabilir veya hesaplayabilirsiniz. Son olarak, bu işlemleri yaparken sonuçları grafik olarak görselleştirebilirsiniz. Örneğin, aşağıdaki kod parçası 2020 yılında Türkiye’deki ortalama hava sıcaklığına ilişkin verileri içeren bir DataFrame nesnesi oluşturur: python import pandas as pd # Verileri okuyalım df = pd.read_csv("turkey_weather.csv") # Verilerin ilk beş satırını yazdıralım print(df.head()) Bu kod parçasının çıktısı şöyledir: date temp humidity wind speed pressure 0 2020-01-01 -2.5 88 9.8 1016 1 2020-01-02 -1.8 89 9.7 1014 2 2020-01-03 0.3 90 9.6 1013 3 2020-01-04 1.6 91 9.5 1012 4 2020-01-05 -1.7 ... ... ... Bu DataFrame nesnesinin özelliklerini incelemek için şu komutları kullanabilirsiniz: python # Sütun isimlerini yazdıralım print(df.columns) # Veri tiplerini yazdıralım print(df.dtypes) # Boyutlarını yazdıralım print(df.shape) # Satır sayısını yazdıralım print(df.size) Bu komutların çıktısı şöyledir: Index([’date’, ’temp’, ’humidity’, ’wind speed’, ’pressure’], dtype=’object’) date object temp float64 humidity float64 wind speed float64 pressure float64 dtype: object (5 rows x 5 columns) (5 rows x ... columns) (5 rows x ... columns) (5 rows x ... columns) 5 ... Name: date, dtype: int64 (5 rows x ... columns) Bu DataFrame nesnesinin içindeki verileri incelemek için şu komutları kullanabilirsiniz: python # Tüm satırları yazdıralım (head()) print(df.tail()) # Tüm sütunları yazdıralım (columns()) print(df.columns.tolist()) 3. UYGULAMA Pandas Seri / DataFrame inceleme işlemleri yapmak için aşağıdaki adımları takip edin. 1. Adım: 1 ile 100 arasında rastgele sayılardan oluşan iki boyutlu bir NumPy dizisi oluşturunuz. data=np.random.randint(1,100,size=(3,3)) 2. Adım: Oluşturulan NumPy dizisinden Pandas DataFrame oluşturunuz. df=pd.DataFrame(data, columns=["x1","x2","x3"]) 3. Adım: Oluşturulan DataFrame’in indeks, veri türü ve bellek bilgilerini görüntüleme işlemlerini yapınız. df.info() 4. Adım: Oluşturulan DataFrame’in satır ve sütun bilgilerini görüntüleme işlemlerini yapınız. df.axes 5. Adım: Oluşturulan DataFrame’in boyut bilgilerini görüntüleme işlemini yapınız. df.shape 6. Adım: Oluşturulan DataFrame’in boyutunu görüntüleme işlemini yapınız. df.ndim 7. Adım: Oluşturulan DataFrame’in eleman sayısını görüntüleme işlemini yapınız. df.size 8. Adım: Oluşturulan DataFrame’in içindeki eleman değerlerini görüntüleme işlemini yapınız. df.values 9. Adım: Oluşturulan DataFrame’in ilk 5 satırını görüntüleme işlemini yapınız. df.head() 10. Adım: Oluşturulan DataFrame’in son 5 satırını görüntüleme işlemini yapınız. df.tail() Bu adımları kendi değerlerinize göre değiştirerek farklı sonuçlar elde edebilirsiniz. Örneğin, data = np.random.randint(10,20,size=(3,4)) şeklinde bir NumPy dizisi oluştursanız, df.head() size 5 satır verirken, df.tail() size 5 satır vermez. Ayrıca, data = np.random.randint(1,100,size=(3,3)) şeklinde bir NumPy dizisi oluştursanız, df.values size [0] x [0] x [0] x [0] = 9 x 9 x 9 x 9 = 6561 eleman değerine sahiptir. Python Kodu Python kodunu yazmak için aşağıdaki adımları takip edebilirsiniz. 1. Adım: NumPy kütüphanesini içe aktarın. python import numpy as np 2. Adım: 1 ile 100 arasında rastgele sayılardan oluşan iki boyutlu bir NumPy dizisi oluşturun. python data = np.random.randint(1,100,size=(3,3)) 3. Adım: Pandas kütüphanesini içe aktarın. python import pandas as pd 4. Adım: Oluşturulan NumPy dizisinden Pandas DataFrame oluşturun. python df = pd.DataFrame(data, columns=["x1","x2","x3"]) 5. Adım: Oluşturulan DataFrame’in indeks, veri türü ve bellek bilgilerini görüntüleyin. python df.info() 6. Adım: Oluşturulan DataFrame’in satır ve sütun bilgilerini görüntüleyin. python df.axes 7. Adım: Oluşturulan DataFrame’in boyut bilgilerini görüntüleyin. python df.shape 8. Adım: Oluşturulan DataFrame’in boyutunu görüntüleyin. python df.ndim 9. Adım: Oluşturulan DataFrame’in eleman sayısını görüntüleyin. python df.size 10. Adım: Oluşturulan DataFrame’in içindeki eleman değerlerini görüntüleyin. python df.values 11. Adım: Oluşturulan DataFrame’in ilk 5 satırını görüntüleyin. python df.head() 12. Adım: Oluşturulan DataFrame’in son 5 satırını görüntüleyin. python df.tail() |