Veritabanlarına giriş

pandas ile Kolaylaştırılmış Veri Alımı

Amany Mahfouz

Instructor

İlişkisel Veritabanları

  • Varlıklara ait veriler tablolar halinde düzenlenir
  • Her satır/kayıt bir varlık örneğidir
  • Her sütun bir öznitelik bilgisidir
  • Tablolar benzersiz anahtarlarla birbirine bağlanabilir
  • Daha çok veri, eşzamanlı kullanıcılar ve veri kalitesi kontrolleri desteklenir
  • Her sütun için veri tipleri tanımlıdır
  • Veritabanlarıyla etkileşim için SQL (Structured Query Language)
pandas ile Kolaylaştırılmış Veri Alımı

Yaygın İlişkisel Veritabanları

Microsoft SQL Server logosu

Oracle logosu

  • SQLite veritabanları birer bilgisayar dosyasıdır

PostgreSQL logosu

SQLite logosu

pandas ile Kolaylaştırılmış Veri Alımı

Veritabanlarına Bağlanma

  • İki adım:
    1. Veritabanına bağlanma yolu oluşturun
    2. Veritabanını sorgulayın

Veritabanı clip artı

pandas ile Kolaylaştırılmış Veri Alımı

Veritabanı Motoru Oluşturma

SQLAlchemy logosu

  • sqlalchemy içindeki create_engine() veritabanı bağlantılarını yöneten bir motor oluşturur
    • Bağlanılacak veritabanının URL dizgesine ihtiyaç duyar
    • SQLite URL biçimi: sqlite:///filename.db
pandas ile Kolaylaştırılmış Veri Alımı

Veritabanlarını Sorgulama

  • Veriyi veritabanından yüklemek için pd.read_sql(query, engine)
  • Argümanlar
    • query: Çalıştırılacak SQL sorgusu ya da yüklenecek tablo adı
    • engine: Bağlantı/veritabanı motoru nesnesi
pandas ile Kolaylaştırılmış Veri Alımı

SQL Gözden Geçirme: SELECT

  • Veritabanından veri sorgulamak için kullanılır
  • Temel sözdizimi:
    SELECT [column_names] FROM [table_name];
    
  • Tablodaki tüm veriler için:
    SELECT * FROM [table_name];
    
  • Kod stili: anahtar kelimeler BÜYÜK HARF, ifade sonu noktalı virgül (;)
pandas ile Kolaylaştırılmış Veri Alımı

Veritabanından Veri Alma

# pandas ve sqlalchemy'nin create_engine'ini yükleyin
import pandas as pd
from sqlalchemy import create_engine

# Bağlantıları yönetmek için veritabanı motoru oluşturun engine = create_engine("sqlite:///data.db")
# Tablo adını vererek tüm weather tablosunu yükleyin weather = pd.read_sql("weather", engine)
pandas ile Kolaylaştırılmış Veri Alımı
# Bağlantıları yönetmek için veritabanı motoru oluşturun
engine = create_engine("sqlite:///data.db")

# SQL ile tüm weather tablosunu yükleyin weather = pd.read_sql("SELECT * FROM weather", engine)
print(weather.head())
       station                         name  latitude  ...   prcp  snow  tavg tmax  tmin
0  USW00094728  NY CITY CENTRAL PARK, NY US  40.77898  ...   0.00   0.0         52    42
1  USW00094728  NY CITY CENTRAL PARK, NY US  40.77898  ...   0.00   0.0         48    39
2  USW00094728  NY CITY CENTRAL PARK, NY US  40.77898  ...   0.00   0.0         48    42
3  USW00094728  NY CITY CENTRAL PARK, NY US  40.77898  ...   0.00   0.0         51    40
4  USW00094728  NY CITY CENTRAL PARK, NY US  40.77898  ...   0.75   0.0         61    50

[5 rows x 13 columns]
pandas ile Kolaylaştırılmış Veri Alımı

Ayo berlatih!

pandas ile Kolaylaştırılmış Veri Alımı

Preparing Video For Download...