NumPy ve Pandas Kullanarak Veri Analizi Temelleri

NumPy ve Pandas Kullanarak Veri Analizi Temelleri

NumPy ve Pandas kullanarak veri analizi temelleri nelerdir? Bu eğitimde, temel veri bilimi kavramları, veri manipülasyonu, işleme ve temizleme, veri analizi ve görselleştirme yöntemleri ile ilgili temel yetenekleri öğreneceksiniz NumPy ve Pandas gibi Python kütüphanelerini öğrenin ve verilerinizi doğru şekilde analiz edin

NumPy ve Pandas Kullanarak Veri Analizi Temelleri

Veri analizi, günümüz iş dünyasında giderek önem kazanıyor. NumPy ve Pandas, veri analizi alanında yaygın olarak kullanılan iki Python kütüphanesidir. Bu iki kütüphane, Python'u veri analizinde çok daha etkili hale getirerek, büyük veri kümelerini işlemek için kullanılan temel araçlardan bazılarıdır.

Bu makale, NumPy ve Pandas kütüphanelerini kullanarak veri analizi yapmayı öğrenmek isteyenler için bir rehber niteliği taşıyor. Veri yükleme, veri erişim ve seçme, veri temizleme, veri analizi ve veri görselleştirme dahil olmak üzere birçok farklı konuyu ele alacağız ve bu konulardaki temel becerileri öğreneceksiniz.


NumPy Nedir?

NumPy, bilimsel hesaplama yapmak için kullanılan bir Python kütüphanesidir ve matematiksel işlemler için fonksiyonlar sağlar. Özellikle çok boyutlu dizilerle çalışmak için tasarlanmıştır ve bilimsel araştırmalarda, özellikle de sayısal analizlerde kullanılır. NumPy, çok işlemci desteği ile verimli ve hızlı bir şekilde çalışır.

NumPy kütüphanesinin temeli ndarray (n-dimensional array) nesnesidir. Bu nesne, birçok farklı boyutta dizi verilerini içerebilir ve bu dizilere matematiksel işlemler uygulamak için optimize edilmiştir. Bu işlemler, toplama, çıkarma, çarpma, bölme, karekök alma ve daha birçok matematiksel işlemi içerebilir.

Bunun yanı sıra, NumPy özellikle lineer cebirle ilgilenenler için oldukça önemlidir. Kütüphane, matris çarpımı, determinant hesaplama, ters matris bulma ve özdeğer hesaplama dahil olmak üzere bir dizi matematiksel işlemi gerçekleştirmek için kullanılır.


Pandas Nedir?

Pandas Nedir?

Pandas, Python programlama dili için geliştirilen bir kütüphanedir. Bu kütüphane, veri işleme ve analizi için kullanılır. Pandas kütüphanesi, bilimsel hesaplamalar için NumPy kütüphanesine dayanır. Pandas, veri işlemesi ve analizi yapmak için basit ve kullanışlı bir arayüz sağlar.

Pandas'ta yer alan DataFrame nesneleri, çok boyutlu NumPy dizileri üzerine inşa edilmiştir. Bu nesneler, farklı türlerdeki verileri depolamak için kullanılan bir veri yapısıdır. DataFrame nesneleri, satırlar ve sütunlar şeklinde düzenlenir ve bu sayede veriler daha anlaşılır hale gelir. Pandas'ta yer alan farklı işlevler sayesinde bu DataFrame nesneleri üzerinde farklı işlemler yapmak mümkündür.


Veri Yükleme

Pandas, verileri analiz etmek için en popüler Python kütüphanelerinden biridir ve farklı veri türleri için farklı yükleme yöntemleri sağlar. Bu kütüphane sayesinde CSV dosyalarını, Excel dosyalarını, SQL veritabanlarını vb. yüklemek için farklı hazır fonksiyonlar kullanabilirsiniz.

Pandas, CSV dosyalarını hızlı ve kolay bir şekilde yüklemenizi sağlar. read_csv () fonksiyonu, verileri bir DataFrame nesnesine yüklemek için kullanılır. Bu işlevde, dosya adı veya URL'si gibi parametreler belirtilir ve argümanlar eksiksiz olarak sağlanırsa, bir veri çerçevesi oluşturulur. read_csv () işlevinin bazı parametreleri şunlardır:

  • file: Yüklenmesi gereken CSV dosyasının dosya adını ifade eder.
  • sep: Verilerin ayırıcı karakterini belirtir.
  • header: Dosyanın ilk satırının sütun adlarını içerip içermediğini kontrol eder.
  • encoding: Dosyanın karakter kodlamasını belirler.

Örneğin, "data.csv" dosyasını yüklemek için şu kodu kullanabilirsiniz:

import pandas as pd
veri = pd.read_csv("data.csv")

Pandas, Excel dosyalarını yüklemek için read_excel () işlevini sağlar. Bu işlem, Excel dosyası yüklemek için kullanılan temel parametreleri içerir:

  • io: Yüklenmesi gereken Excel dosyasının adını veya yolunu belirler.
  • sheet_name: Sayfa adını veya sayfa numarasını belirtir.
  • header: Başlıkların, verilerin ilk satırında mı yoksa daha sonraki bir satırda mı olduğunu belirtir.
  • index_col: Verileri indeks sütunu olarak kullanmak için sütun numarasını belirtir.

Örneğin, "data.xlsx" Excel dosyasını yüklemek için şu kodu kullanabilirsiniz:

import pandas as pd
veri = pd.read_excel("data.xlsx")

Veri tabanı yönetim sistemleri de Pandas tarafından desteklenmektedir. Şayet SQL veritabanı kullanıyorsanız, read_sql () fonksiyonu veritabanından veri çekmek için kullanılabilir.


CSV Dosyalarının Yüklenmesi

CSV dosyaları, virgülle ayrılmış verileri içeren dosya formatıdır. Pandas kullanarak CSV dosyaları kolayca DataFrame'lere yüklenir. read_csv () yöntemi kullanılarak CSV dosyalarına erişilebilir. Bu yöntem, dosya yüklenirken ayırıcı olarak hangi karakterin kullanılacağını da belirlemenize olanak tanır.

CSV dosyaları genellikle tablo verileri formatında olur ve Pandas'ın sağladığı DataFrame yapısı bu tür verilerin işlenmesi için çok kullanışlıdır. İlk olarak, CSV dosyası yüklenir ve bir DataFrame oluşturulur. Daha sonra, DataFrame üzerinde farklı işlemler yaparak verileri işleyebilirsiniz. Örneğin, verileri gruplayabilir, filtreleyebilir veya sıralayabilirsiniz. Bu işlemler, verilerin analizi ve anlaşılması için çok önemlidir.

CSV dosyalarının yüklenmesi için Pandas kullanımı oldukça kolay ve hızlı bir yöntemdir. Bu nedenle, verilerin işlenmesi ve analizi sırasında CSV dosyalarının kullanımı yaygındır. Aynı şekilde, Pandas'ın Excel veya diğer veritabanlarından veri çekmek için kullandığı yöntemler de bulunmaktadır. Veri yükleme, erişim ve temizleme gibi temel işlemleri öğrenmek veri analizi sürecinde büyük bir fark yaratabilir.


Excel Dosyalarının Yüklenmesi

Pandas, Excel dosyalarını yüklemek için read_excel() işlevini sağlar. Bu işlev, belirli bir Excel dosyasının okunarak bir DataFrame nesnesine dönüştürülmesini mümkün kılar. Bu işlem için pandas ve xlrd (Excel için okuma işlevleri) uzantılı kütüphanelerin yüklü ve kullanılabilir olması gerekir. read_excel() işlevi, okunacak Excel dosyasının adını içeren bir dize parametresi alır. İsteğe bağlı olarak, bazı diğer parametreler de kullanılabilir.

Örneğin, read_excel () işlevi, hücre aralıklarını belirlemek için kullanılabilecek ilave iki parametre alır: header ve index_col. header parametresi, Excel sayfasında verilerin hangi satırlarda başladığını belirtir. index_col parametresi ise DataFrame nesnesini oluştururken kullanılacak bir sütuna karşılık gelir.

Bu işlemden sonra, Excel dosyası DataFrame nesnesi olarak yüklenir ve belirtilen dosyanın içeriği Pandas tarafından işlenebilir. Bu sayede Excel'den veri çekmek ve analiz etmek artık daha kolay hale gelir.


Veriye Erişim ve Seçme

Pandas ile veri analizi yaparken, DataFrame nesnelerinde yer alan verilere erişmek ve seçmek için farklı yöntemler vardır. DataFrame, satırlar ve sütunlardan oluşan bir tablo olduğu için, hangi verilere erişmek istediğinizi belirtmek önemlidir.

En temel yöntemlerden biri, sütunlara erişmek için sütun adını kullanmaktır. Aşağıdaki örnekte, iris veri kümesindeki "species" sütununa erişmek için "species" adını kullanıyoruz:

Kod Açıklama
import pandas as pd Pandas kütüphanesini içe aktar
iris = pd.read_csv('iris.csv') iris veri kümesini yükle
species_column = iris['species'] "species" sütununu seç

Buna ek olarak, loc ve iloc özellikleri, belirli bir veriye erişim için kullanılır. loc özelliği, etiketleme yapısı ve iloc özelliği, indeksleme yapısı kullanır. Aşağıdaki örnekte, iloc özelliği kullanılarak iris veri kümesindeki 10. satıra ve 2. sütuna (petal width) erişiyoruz:

Kod Açıklama
petal_width = iris.iloc[9, 2] 10. satırı ve 2. sütunu seç (Python sıfırdan başladığından, 9, 2 10. satıra ve 2. sütuna karşılık gelir)

Yukarıdaki örneklerde, veriye erişmek için farklı yöntemler kullanıldı. Sütun adı kullanarak, belirli bir sütuna erişebiliyoruz. İndeks kullanarak, belirli bir satır ve sütuna erişebiliriz. Bu özellikler, verilerin analizi için oldukça güçlüdür ve yapılandırılmış bir şekilde erişim sağlar.


Series Veri Tipi

Series veri tipi olarak tanımlanır. Bu veri tipinde, bir dizi değer, indekslerle birlikte tutulur ve bu sayede her bir değere kolayca erişilebilir. Series veri tipi, birbirleriyle aynı veri tiplerine sahip birden çok değeri saklamak için idealdir. Series'ler, bir NumPy dizisi veya Python listesi gibi oluşturulabilirler.

Series verileri üzerinde çeşitli işlemler yapılabilir. Örneğin, bir Series verisinde belirli bir değere erişmek için indeks kullanılabilir. Veriler, belirli bir aralıktaki değerler, belirli değerler veya belirli koşullara göre filtrelenerek de seçilebilirler. Ayrıca, Series verileri farklı matematiksel işlemler için de kullanılabilir.

Series verileri, Pandas DataFrame veri tipindeki belirli bir sütundan çıkarılabilir. Veri analizi sırasında, belirli bir sütunun Series tipinde çıkarılması oldukça yaygındır. Bu sayede, belirli bir veri kümesi üzerinde daha spesifik işlemler yapılabilir.

Örneğin, bir mağazanın aylık satışları, Pandas DataFrame veri yapısında saklanabilir ve her bir ay için satış verileri Series verisi olarak saklanabilir. Böylece, belirli bir aydaki satış verilerine kolayca erişilebilir ve ayrıntılı analizler yapılabilir. Series verileri, veri analizi çalışmalarında oldukça yaygın olarak kullanılmaktadır.

Series

Pandas'ta bir veri kümesinde bulunan belirli bir tek boyutlu veri serisi, Seriesveri tipinde gösterilir. İndexlerle erişilebilen bu veriler, farklı veri tipleri içerebilir. Örnek olarak, Series veri tipi, aylık satış verilerinden oluşan bir sütun veya bir şirketin aylık gelirlerine ait verileri tutabilir. Ayrıca, Series veri tipi matematiksel işlemler için kullanılabilir, örneğin toplama, çıkarma, çarpma veya bölme işlemleri gibi.

veri tipinde gösterilir. Bu veriler, indekslerle erişilebilir.

Pandas'ta belirli bir tek boyutlu veri serisi, Series veri tipinde gösterilir. Bu veriler, indekslerle erişilebilir. Series nesnesi, veri serisi ve satır veya sütun indeksleri içerir.

Veri serileri, Python listeleri veya NumPy dizileri kullanılarak oluşturulabilir. Series nesnesi, bir etiketli dizideki (labeled index) verileri tutar. Bu etiketler, her öğenin belirli bir özelliğinin ifade edildiği dizinlerdir. Series nesnesinde, dizinin öğeleri ve indeksleri ayrı ayrı saklanır.

Aşağıda, NumPy dizisi ve Pyhton listesi kullanarak Series nesnesinin nasıl oluşturulacağına dair bir örnek bulabilirsiniz:

Örnek Kod Sonuç
import pandas as pdimport numpy as np# NumPy dizisi kullanarak Series nesnesi oluşturmaarr = np.array([11, 22, 33, 44, 55])series_from_array = pd.Series(arr)print(series_from_array)# Pyhton listesi kullanarak Series nesnesi oluşturmalst = [11, 22, 33, 44, 55]series_from_list = pd.Series(lst)print(series_from_list)            
0    111    222    333    444    55dtype: int320    111    222    333    444    55dtype: int64            

Bu örnekte, NumPy dizisi ve Python listesi kullanarak iki farklı Series nesnesi örneği oluşturulmuştur. Bu nesneler, her bir öğenin indeks numarası ile birlikte belirtilir. Series nesnesi, veri analizi ve manipülasyonu için kullanışlı bir araçtır.


DataFrame Veri Tipi

Pandas kütüphanesi, verileri manipüle etmek ve analiz etmek için etkili bir araçtır. DataFrame veri tipi, Pandas'ta iki boyutlu bir tablo olarak tanımlanır ve satır ve sütunlar üzerinde indeksleme yapılabilen bir veri yapısına sahiptir. DataFrame, SQL tablo yapısı ile benzerlik gösterir ve farklı veri dosyalarından yüklenen verileri bu yapı altında düzenlemenizi sağlar.

DataFrame'de, sütunlar farklı veri tiplerine sahip olabilir. Sütunlar, indekslenmiş (etiketli) satırlara sahip olabilir ve bu satırlar da birbirinden farklı veri tiplerine sahip olabilir. Bu şekilde, farklı veri tiplerinin tek bir tabloda toplanması mümkün hale gelir.

Özetle, DataFrame veri tipi, veri analizi ve manipülasyonu için çok yönlü bir araçtır. Verileri daha anlaşılır bir şekilde sunmak isteyenler için, DataFrame içindeki verileri tablo halinde görselleştirmek ve hızla anlaşılabilecek bir biçimde sunmak mümkündür.


Veri Temizleme

Veri temizleme, veri analizi sürecinde oldukça önemli bir aşamadır. Veri kümesinde yer alan eksik veya yanlış veriler, sonuçları yanıltabilir ve analiz sonuçlarının doğru olmasını engelleyebilir. Bu nedenle, veri temizleme işlemleri veri analizinde doğru sonuçlar elde etmek için oldukça önemlidir.

Veri temizleme işlemleri, veri kümesinde yer alan boş değerleri kontrol etmekle başlar. Pandas kütüphanesi, boş değerleri görüntülemek ve kaldırmak için işlevler sunar. Boş değerlerin kontrol edilmesi, veri kümesinde yer alan hatalı verilerin daha doğru bir şekilde tespit edilmesini sağlar.

Veri kümesindeki yanlış verilerin temizlenmesi de bir diğer önemli adımdır. Yanlış veriler, verilerin doğru bir şekilde analiz edilmesini veya yorumlanmasını önleyebilir. Pandas kütüphanesi, yanlış verileri temizlemek için farklı teknikler sunar.

Veri temizleme işlemleri ile ilgili diğer bir konu, tutarsızlık veya hatalı verilerin değiştirilmesi veya çıkarılmasıdır. Pandas kütüphanesi, veri kümesindeki verileri analiz etmek, dönüştürmek ve yeniden şekillendirmek için farklı işlevler içerir.

Veri temizleme işlemleri sonrasında veri kümesinde yer alan doğru verilerle çalışılabilir ve doğru sonuçlar elde edilebilir. Bu nedenle, veri temizleme işlemleri veri analizi sürecinde oldukça önemlidir.


Boş Değerlerin Kontrolü

Veri kümesindeki boş değerler, doğru analiz sonuçları elde etmenizi engelleyebilir. Pandas, veri kümesindeki boş değerleri göstermek için isna() işlevini kullanır. Bu işlev, True ve False değerlerinden oluşan bir bool DataFrame döndürür.

Boş değerleri kaldırmak için, dropna() işlevini kullanabilirsiniz. Bu işlev, DataFrame içindeki tüm satırları siler, DataFrame'inizi günceller ve değişiklikleri etkileyecek şekilde geri döndürür.

Bir başka seçenek ise boş değerleri doldurmaktır. fillna() işlevi, NaN değerlerini kullanıcının belirlediği bir değerle doldurur. Örneğin, NaN'leri 0 ile doldurmak için şu kod kullanılabilir:

Örnek: Kodu:
Orjinal DataFrame df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan],'C': [7, 8, 9]})
NaN'leri 0 ile doldurulmuş DataFrame df.fillna(0)

Yanlış Verilerin Temizlenmesi

Veri kümesinde tutarsızlık, verilerin doğru değerlerle değiştirilmesi veya çıkarılmasını gerektirir. Bu nedenle, veri temizleme işlemi veri analizi sürecinde çok önemlidir. Yanlış verilerin temizlenmesi, verilerin doğruluğunu ve güvenilirliğini arttırır ve doğru sonuçlar elde etmenize yardımcı olur. Pandas, yanlış verileri temizlemek için farklı teknikler sunar. Bu teknikler arasında, verilerin sınıflandırılması, indeksleme, eleme ve değiştirme yer alır.

  • Verilerin Sınıflandırılması: Verilerin sınıflandırılması, veri kümesindeki belirli bir kriteri karşılayan verilerin seçilmesidir. Bu, yanlış verilerin bulunmasına ve işlemlerin yapılmasına yardımcı olur.
  • İndeksleme: Yanlış verilerin indekslenmesi, veri kümesindeki belirli bir veriyi bulmak için kullanılan bir tekniktir. Yanlış verileri tanımlamak ve doğru değerlerle değiştirmek için kullanılabilir.
  • Eleme: Eleme, veri kümesindeki yanlış verilerin silinmesi işlemidir. Bu, verilerin doğruluğunu arttırır ve analiz sonuçlarını olumlu yönde etkiler.
  • Değiştirme: Değiştirme, yanlış verilerin doğru bir değerle değiştirilmesi işlemidir. Bu işlem, veri analizinde doğru sonuçlar elde etmenize yardımcı olur.

Verilerin Analizi

Pandas, verileri analiz etmek için popüler bir kütüphanedir. Pandas fonksiyonları, birden fazla veri kaynağından veri işlemeyi ve birleştirmeyi sağlar. Pandas DataFrame'leri, verileri filtreleme, gruplandırma, işleme ve görselleştirme için çok sayıda işlev içerir.

Verilerin analizi için Pandas ile kullanılabilecek diğer bazı önemli fonksiyonlar arasında sıralama, özet istatistikleri hesaplama, veri dönüştürme, veri sütunları arasında işlem yapma ve verileri yeni bir veri kümesine dönüştürme gibi işlemler yer alır.

Pandas, verilerin tablo formatında temsil edilmesiyle veri analizine önemli bir katkı sağlar. Verileri işleme ve analiz etme yetenekleri, büyük ölçüde veri biliminin yaygınlaşmasına yardımcı oldu. Bu sayede, şirketler ve araştırmacılar daha büyük veri kümelerini işleyebilir ve daha sağlıklı sonuçlar elde edebilirler.

Pandas ile verileri analiz etmek çok pratiktir. Her tür veri işlemenin bir veya daha fazla yöntemi olduğundan, Pandas'ı kullanarak verileri analiz etmek hem hızlı hem de kolaydır.

Verileri analiz etmek için kullanabileceğiniz bazı Pandas fonksiyonları:

  • describe ()
  • head ()
  • tail ()
  • sort_values ()
  • groupby ()

Bu işlevler sayesinde verilerinizi hızlı bir şekilde analiz edebilir, ilgilendiğiniz verileri kolayca bulabilir ve sonuçları görselleştirebilirsiniz.

Veri bilimi sürekli olarak gelişiyor ve Pandas da sürekli olarak yeni işlevler ekleniyor. Bu nedenle, verileri analiz etmek için Pandas'ın farklı fonksiyonlarını araştırarak size en uygun olanları kullanabilirsiniz.


Gruplandırma İşlemi

Pandas, veri analizi yapmak için birçok işlev içerir ve gruplandırma işlemi de bunlardan biridir. Pandas'ta gruplandırma, önceden belirlenmiş bir özelliğe göre verileri ayırmak anlamına gelir. Bu özellik, verileri daha iyi anlamak ve analiz etmek için kullanışlıdır.

Gruplandırma işlemi, verileri birbirine benzer özelliklere sahip parçalara böler. Bu, verileri daha küçük parçalara ayırdığında, veriler arasındaki ilişkiler daha net hale gelir ve analiz işlemleri daha kolay hale gelir. Pandas, belirli bir sütuna veya indekse göre gruplandırma işlemi yapmanıza olanak tanır.

Gruplandırma işlemi sonucunda elde edilen parçalara, farklı veri işlemleri uygulanabilir. Örneğin, gruplandırılmış parçaların ortalaması, toplamı veya medyanı hesaplanabilir. Pandas'ta, gruplandırma işlemi yapmak için groupby() işlevi kullanılır.

Sütun1 Sütun2 Sütun3 Sütun4
1 A 10 True
2 B 20 False
3 C 30 False
4 D 40 True

Yukarıdaki tabloyu örnek olarak ele alalım. Sütun4'e göre gruplandırma yaparsak, True ve False değerlerine sahip parçalar elde ederiz. Elde edilen bu sonuçları, istediğimiz gibi analiz edebilir ve işleme tabi tutabiliriz.

Gruplandırma işlemi, verilerin daha iyi anlaşılması için kullanışlı bir tekniktir. Bu işlem, veriler arasındaki ilişkileri ve farklı özelliklerinin doğasını daha iyi anlamak için kullanabilirsiniz.


Veri Görselleştirme

Veri analizinde en önemli adımlardan biri, verileri doğru bir şekilde yorumlamaktır. Bu nedenle, verileri görsel olarak temsil etmenin önemi büyüktür. Pandas ve Matplotlib kütüphaneleri, verileri grafiklerle veya tablolarla görselleştirmek için birçok seçenek sunar.

Pandas, verileri doğrudan grafiklere dönüştürmek için .plot() metodunu sağlar. Bu metod, verilerin tipine göre doğru grafik türünü seçer. Verilerinizde tablosal bir yapı varsa, Pandas'ın dağılım grafiği, çizgi grafiği, alan grafiği veya pasta grafiği gibi farklı grafik türleri sunar.

Matplotlib, daha karmaşık ve özelleştirilmiş grafikler oluşturmak için birçok imkan sunar. Matplotlib ile özelleştirilmiş bir çizgi grafiği, 3 boyutlu bir scatter grafiği veya bir polar grafiği oluşturabilirsiniz. Matplotlib, karmaşık verileri daha kolay bir şekilde anlamak için interaktif grafikler de sunar.

Verilerinizi grafiklerle veya tablolarla görselleştirerek, verilerinizi daha iyi anlamak ve analiz etmek için önemli bir adım atmış olursunuz. Bu sayede, verilerin dokusunu, eğilimini ve tutarsızlıklarını daha iyi görebilirsiniz.