Pandas kütüphanesi, veri analizi ve manipülasyonu için birçok güçlü araç sunan geniş bir kütüphanedir. Aşağıda, Pandas kütüphanesinde sıkça kullanılan bazı özelliklerin daha genişletilmiş açıklamalarını ve örneklerini bulabilirsiniz:
1. Veri Yükleme ve Saklama:
CSV ve Excel Dosyalarını Okuma:
Pandas, read_csv() ve read_excel() fonksiyonlarıyla CSV ve Excel dosyalarını kolayca okuyabilir.
import pandas as pd
# CSV dosyasını okuma
df_csv = pd.read_csv('veri.csv')
# Excel dosyasını okuma
df_excel = pd.read_excel('veri.xlsx')
2. Veri İnceleme ve Temizleme:
Null Değerleri İnceleme ve Temizleme:
info() ve isna() fonksiyonları ile null değerleri kontrol edebilir ve dropna() veya fillna() ile temizleyebilirsiniz.
# Null değerleri inceleme
print(df.info())
# Null değerleri temizleme
df.dropna(inplace=True)
3. Veri Seçme ve İndeksleme:
Koşullu Seçim:
Belirli bir koşulu sağlayan verileri seçmek için, boolean indeksleme kullanabilirsiniz.
# Örneğin, 'column_name' sütunundaki değeri 5 olan satırları seçme
selected_rows = df[df['column_name'] == 5]
4. Gruplama ve Toplama:
Gruplama ve İstatistiksel Hesaplamalar:
groupby()
fonksiyonu ile belirli bir sütuna göre gruplama yapabilir ve ardından bu gruplar üzerinde istatistiksel hesaplamalar yapabilirsiniz.
# Örneğin, 'kategori' sütununa göre gruplama ve toplam değerleri alma
grouped_df = df.groupby('kategori')['deger'].sum()
5. Zaman Serisi İşlemleri:
Pandas, tarih ve saatle ilgili işlemleri kolaylaştıran bir dizi fonksiyon sunar.
# Zaman serisi verileri oluşturma ve indeksleme
df['tarih_saat'] = pd.to_datetime(df['tarih_saat'])
df.set_index('tarih_saat', inplace=True)
6. Veri Görselleştirme:
Grafiksel Gösterimler:
Pandas, veri çerçevelerini ve serileri kolayca görselleştirmek için plot()
fonksiyonunu sağlar.
# Örneğin, 'deger' sütununu çizgi grafiğiyle gösterme
df['deger'].plot(kind='line')
7. Veri Birleştirme:
Veri Çerçevelerini Birleştirme:
merge()
fonksiyonu ile farklı veri çerçevelerini birleştirebilirsiniz.
# Örneğin, 'anahtar' sütunu üzerinden iki veri çerçevesini birleştirme
merged_df = pd.merge(df1, df2, on='anahtar')
8. Veri Analizi ve İstatistik:
Korelasyon Analizi:
corr()
fonksiyonu ile değişkenler arasındaki korelasyonu hesaplayabilirsiniz.
# Örneğin, 'deger1' ve 'deger2' sütunları arasındaki korelasyonu inceleme
correlation_matrix = df[['deger1', 'deger2']].corr()
9. Veri İşleme ve Dönüştürme:
Sütunları Yeniden Adlandırma:
rename()
fonksiyonu ile sütunları yeniden adlandırabilirsiniz.
# Örneğin, 'eski_ad' sütununu 'yeni_ad' olarak değiştirme
df.rename(columns={'eski_ad': 'yeni_ad'}, inplace=True)
Sütun Değerlerini Dönüştürme:
apply()
fonksiyonu ile belirli bir fonksiyonu sütun üzerinde uygulayabilirsiniz.
# Örneğin, 'deger' sütunundaki değerleri iki katına çıkarma
df['deger'] = df['deger'].apply(lambda x: x * 2)
10. Veri Filtrasyonu:
Belirli Koşulları Sağlayan Verileri Filtreleme:
query()
fonksiyonu ile belirli koşulları sağlayan verileri filtreleyebilirsiniz.
# Örneğin, 'deger' sütunu 10'dan büyük olan satırları seçme
filtered_df = df.query('deger > 10')
11. Veri Sıralama:
Sıralama:
sort_values()
fonksiyonu ile belirli bir sütuna göre veriyi sıralayabilirsiniz.
# Örneğin, 'deger' sütununa göre veriyi artan sırayla sıralama
sorted_df = df.sort_values(by='deger', ascending=True)
12. Veri Toplulaştırma ve İstatistik:
Pivot Tabloları Oluşturma:
pivot_table()
fonksiyonu ile veriyi pivot tablosuna dönüştürebilirsiniz.
# Örneğin, 'kategori' ve 'alt_kategori' sütunlarına göre bir pivot tablosu oluşturma
pivot_df = pd.pivot_table(df, values='deger', index='kategori', columns='alt_kategori', aggfunc='sum')
13. Veri Düzenleme:
Yinelenen Satırları Kaldırma:
drop_duplicates()
fonksiyonu ile yinelenen satırları kaldırabilirsiniz.
# Örneğin, 'column1' ve 'column2' sütunlarına göre yinelenen satırları kaldırma
df.drop_duplicates(subset=['column1', 'column2'], inplace=True)
14. Kategorik Verileri İşleme:
Kategorik Verileri Dönüştürme:
astype()
veya astype('category')
fonksiyonu ile sütunun veri tipini kategorik yapabilirsiniz.
# Örneğin, 'kategori' sütununu kategorik veri tipine dönüştürme
df['kategori'] = df['kategori'].astype('category')
15. Veri Hesaplamaları:
Sütunlar Arası İşlemler:
add()
, sub()
, mul()
, div()
gibi fonksiyonlar ile sütunlar arasında temel matematiksel işlemler yapabilirsiniz.
# Örneğin, 'deger1' ve 'deger2' sütunlarını toplama
df['toplam'] = df['deger1'].add(df['deger2'])
16. String İşlemleri:
String Sütunları İşleme:
str.contains()
, str.startswith()
, str.endswith()
gibi fonksiyonlar ile string sütunlarda arama yapabilirsiniz.
# Örneğin, 'isim' sütununda belirli bir kelimeyi içeren satırları seçme
selected_rows = df[df['isim'].str.contains('AramaKelimesi')]
17. Veri Dönüşümleri:
Kategorik Veri Tipinden Sayısal Veri Tipine Dönüşüm:
cat.codes
özelliği ile kategorik sütunları sayısal değerlere dönüştürebilirsiniz.
# Örneğin, 'kategori' sütunundaki kategorik değerleri sayısal değerlere dönüştürme
df['kategori'] = df['kategori'].astype('category')
df['kategori_numeric'] = df['kategori'].cat.codes
18. Veri Seti Birleştirme:
Sütun Bazında Birleştirme:
concat()
fonksiyonu ile iki veri çerçevesini sütun bazında birleştirebilirsiniz.
# Örneğin, iki veri çerçevesini sütun bazında birleştirme
merged_df = pd.concat([df1, df2], axis=1)
19. Veri Düzeltme:
Bozuk Veriyi Düzeltme:
fillna()
, replace()
gibi fonksiyonlar ile bozuk veya eksik verileri düzeltebilirsiniz.
# NaN değerleri belirli bir değerle doldurma
df['deger'].fillna(0, inplace=True)
# Belirli bir değeri başka bir değerle değiştirme
df['kategori'].replace({'eski_deger': 'yeni_deger'}, inplace=True)
20. Dilimleme ve Kesme İşlemleri:
İndeks Üzerinde Dilimleme:
loc[]
veya iloc[]
kullanarak indeks üzerinde dilimleme işlemleri gerçekleştirebilirsiniz.
# Örneğin, 2. indeksten 5. indekse kadar olan satırları seçme
sliced_df = df.loc[2:5]
sliced_df2 = df.iloc[0:5,1:3]
# Adı "A" harfi ile başlayan öğrencilerin Matematik notlarının ortalamasını hesaplayalım
selected_students = df.loc[df['Ad'].apply(lambda x: x.startswith('A')), ['Matematik']]
average_math = selected_students['Matematik'].mean()