Pandas, Python programcıları için veri analizi ve manipülasyonu için kullanılan güçlü bir açık kaynak kütüphanedir. Pandas, verileri düzenlemek, temizlemek, dönüştürmek ve analiz etmek için kullanılır ve özellikle veri bilimi, veri madenciliği ve veri analizi gibi alanlarda yaygın olarak tercih edilir.
Pandas, aşağıdaki iki temel veri yapısını temel alır:
Pandas Serileri (Series): Tek boyutlu veri dizileridir ve her öğe bir etiket veya indeks ile ilişkilendirilir. Pandas serileri, listeler veya NumPy dizileri gibi verileri daha etkili bir şekilde saklamak ve işlemek için kullanılır.
Pandas Veri Çerçeveleri (DataFrames): İki boyutlu bir tabloya benzeyen veri yapılarıdır. Her sütun farklı bir özellik veya değişkeni temsil ederken, her satır bir veri öğesini veya gözlemini temsil eder. Pandas veri çerçeveleri, verileri düzenlemek, analiz etmek ve görselleştirmek için çok güçlüdür.
Pandas'ın ana avantajları şunlar içerir:
Verileri içe aktarma ve dışa aktarma:
Pandas, CSV, Excel, SQL veritabanları, JSON, HTML ve daha fazlası gibi farklı veri kaynaklarından verileri içe aktarma ve dışa aktarma yeteneğine sahiptir.
CSV Dosyası Okuma: CSV (Comma Separated Values) dosyaları çok yaygın bir veri formatıdır. Pandas, pd.read_csv() işlevi ile CSV dosyalarını okumanıza olanak tanır.
Örnek:
import pandas as pd df = pd.read_csv('veri.csv')
Excel Dosyası Okuma: Excel dosyalarını okumak için Pandas, pd.read_excel() işlevini kullanabilirsiniz.
Örnek:
import pandas as pd df = pd.read_excel('veri.xlsx')
SQL Veritabanından Okuma: SQL veritabanından veri çekmek için Pandas, pd.read_sql() işlevini kullanabilir.
Örnek:
import pandas as pd import sqlite3 conn = sqlite3.connect('veritabani.db') df = pd.read_sql('SELECT * FROM tablo', conn)
CSV Dosyasına Yazma: Bir Pandas veri çerçevesini bir CSV dosyasına yazmak için to_csv() yöntemini kullanabilirsiniz.
Örnek:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df.to_csv('veri.csv', index=False) # index=False, indeks sütununu kaydetmemeyi belirtir
Excel Dosyasına Yazma: Bir Pandas veri çerçevesini bir Excel dosyasına yazmak için to_excel() yöntemini kullanabilirsiniz.
Örnek:
import pandas as pd df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) df.to_excel('veri.xlsx', index=False)
SQL Veritabanına Yazma: Verilerinizi bir SQL veritabanına yazmak için Pandas, to_sql() yöntemini kullanabilir.
Örnek:
import pandas as pd import sqlite3 conn = sqlite3.connect('veritabani.db') df.to_sql('yeni_tablo', conn, if_exists='replace', index=False)
Verileri temizleme ve dönüştürme:
Veri temizliği ve dönüşümü için çeşitli işlevler ve yöntemler sunar. Eksik verileri işleme, veri tipi dönüşümü, sütunları yeniden adlandırma gibi işlemleri kolayca gerçekleştirebilirsiniz.
Eksik Verileri İşleme: Veri setinizde eksik veriler olabilir. Pandas, eksik verileri çeşitli yöntemlerle işlemenize olanak tanır. Örneğin, eksik verileri silmek veya ortalama bir değerle doldurmak gibi.
import pandas as pd veri = pd.DataFrame({'A': [1, 2, None, 4], 'B': [None, 5, 6, 7]}) # Eksik verileri silme temiz_veri = veri.dropna() # Eksik verileri belirli bir değerle doldurma temiz_veri = veri.fillna(0)
Anomalileri Algılama ve İşleme: Anomaliler (outliers), veri setinde beklenmeyen veya sıradışı değerlerdir. Bu değerleri tanımlamak ve işlemek, veri temizleme sürecinin bir parçasıdır.
import pandas as pd veri = pd.DataFrame({'Skor': [90, 85, 88, 55, 120]}) # Anomalileri sınırlar içine çekme veri['Skor'] = veri['Skor'].clip(lower=0, upper=100)
Veri Tipleri Dönüştürme: Veri tiplerini dönüştürmek, verilerinizi analiz veya modelleme için uygun bir formata getirir.
import pandas as pd veri = pd.DataFrame({'Sayılar': ['1', '2', '3']}) # Veri tiplerini dönüştürme (stringleri integer'a) veri['Sayılar'] = veri['Sayılar'].astype(int)
Kategorik Değişkenleri Dönüştürme: Kategorik (kategori) değişkenleri sayısal formata dönüştürmek, çoğu makine öğrenimi modeli için gereklidir.
import pandas as pd veri = pd.DataFrame({'Kategori': ['Kırmızı', 'Mavi', 'Yeşil', 'Kırmızı']}) # Kategorik değişkenleri one-hot encoding ile dönüştürme veri = pd.get_dummies(veri, columns=['Kategori'])
Yeni Özellikler Oluşturma: Verilerinizle ilgili yeni özellikler oluşturmak, modelinizin daha iyi performans göstermesine yardımcı olabilir.
import pandas as pd veri = pd.DataFrame({'Boy': [160, 175, 150], 'Kilo': [70, 80, 65]}) # Beden kitle indeksi (BMI) özelliğini hesaplama veri['BMI'] = veri['Kilo'] / ((veri['Boy'] / 100) ** 2)
Veri temizleme ve dönüştürme, veri analizi ve makine öğrenimi süreçlerinin önemli bir aşamasıdır ve veri setinizin kalitesini ve uygunluğunu artırabilir. Bu örnekler, verilerinizi temizlemenin ve dönüştürmenin temel yollarını göstermektedir. Gerçek dünya uygulamalarında, verilerin karmaşıklığına bağlı olarak daha fazla işlem yapmanız gerekebilir.
Veri indeksleme ve dilimleme:
Pandas, verilerinizi belirli satırlara veya sütunlara erişmek için indeksleme ve dilimleme yetenekleri sunar.
Veri İndeksleme (Indexing):
Pandas Serisinde İndeksleme:
import pandas as pd data = pd.Series([10, 20, 30, 40], index=['A', 'B', 'C', 'D']) # Bir öğeyi indeksleme print(data['B']) # Çıktı: 20 # Birden fazla öğeyi indeksleme print(data[['A', 'C']]) # Çıktı: A 10 # C 30 # dtype: int64 # Koşullu indeksleme print(data[data > 20]) # Çıktı: C 30 # D 40 # dtype: int64
Pandas Veri Çerçevesinde Sütun İndeksleme:
import pandas as pd data = pd.DataFrame({'A': [10, 20, 30], 'B': [40, 50, 60]}) # Sütunu indeksleme print(data['A']) # Sadece 'A' sütununu getirir # Birden fazla sütunu indeksleme print(data[['A', 'B']]) # Koşullu indeksleme print(data[data['A'] > 15])
Veri Dilimleme (Slicing):
Pandas Serisinde Dilimleme:
import pandas as pd data = pd.Series([10, 20, 30, 40, 50], index=['A', 'B', 'C', 'D', 'E']) # Belirli bir aralığı dilimleme print(data['B':'D']) # 'B' ile 'D' dahil # Belirli bir aralığı dilimleme (indeks sırasına göre) print(data[1:4]) # İndeks 1'den 4'e kadar (4 dahil değil)
Pandas Veri Çerçevesinde Dilimleme:
import pandas as pd data = pd.DataFrame({'A': [10, 20, 30, 40, 50], 'B': [60, 70, 80, 90, 100]}) # Belirli satırları ve sütunları dilimleme print(data.loc['B':'D', 'A':'B']) # Belirli satırları ve sütunları dilimleme (indeks sırasına göre) print(data.iloc[1:4, 0:2])
Veri indeksleme ve dilimleme, veri analizi ve işleme süreçlerinde çok yaygın olarak kullanılan işlemlerdir. Pandas'ın sunduğu bu işlevler, verileri kolayca filtreleme, özellikleri seçme ve verileri analiz etme yeteneği sağlar.
Gruplama ve toplulaştırma: Verilerinizi gruplar halinde toplamak ve toplulaştırmak için kullanabileceğiniz güçlü bir gruplama ve toplulaştırma işlevine sahiptir.
Veri analizi ve istatistiksel hesaplamalar: Pandas, istatistiksel işlemler, veri keşfi ve veri analizi için bir dizi işlev sunar. Örneğin, ortalama, medyan, standart sapma hesaplamalarını kolayca yapabilirsiniz.
Veri görselleştirmesi: Pandas, verilerinizi görselleştirmek için diğer Python kütüphaneleriyle (örneğin, Matplotlib veya Seaborn) birlikte kullanılabilir.
Pandas, veri manipülasyonu ve analizi için geniş bir araç yelpazesi sunar ve bu nedenle veri bilimi ve veri analizi alanında yaygın olarak kullanılır. Pandas'ı kullanarak, büyük ve karmaşık veri setlerini daha etkili bir şekilde işleyebilir ve analiz edebilirsiniz.
0 Comments
Recommended Comments
There are no comments to display.