Deneyleri kurma

Python ile Deney Tasarımı

James Chapman

Curriculum Manager, DataCamp

Deney Tasarımı tanımı

 

  • Bir süreç
  • Nesnel ve kontrollü bir yol
  • Özgül sonuçlar çıkarır
    • Bir hipoteze göre

experimental-design.png

1 https://www.sciencedirect.com/topics/earth-and-planetary-sciences/experimental-design
Python ile Deney Tasarımı

Sağlam ifadeler oluşturma

X'in Y üzerinde muhtemelen etkisi oldu. Büyük olasılıkla küçük bir hata riski var

 

  • Kesin ve nicel dil

P-değeri analizi, X'in Y üzerinde etkisi olduğunu ve %10 Tip I hata riski bulunduğunu gösterir

  • Tip I hata: sıfır hipotezini yanlış reddetmek

 

  • Amaç: Deney tasarımı ve istatistiksel analiz
Python ile Deney Tasarımı

Neden deney tasarımı?

 

Birçok alanda yararlıdır:

  • Tıbbi araştırma
  • Pazarlama
  • Ürün analitiği
  • Tarım
  • Kamu politikası

neden.png

Python ile Deney Tasarımı

Bazı terimler...

     

  • Denekler = neyin üzerinde deney yapıyoruz (insanlar, çalışanlar, kullanıcılar vb.)

Bir denek: burada bir kişi.

Python ile Deney Tasarımı

Bazı terimler...

     

  • Denekler = neyin üzerinde deney yapıyoruz (insanlar, çalışanlar, kullanıcılar vb.)
  • Tedavi (treatment) = bir gruba verilen değişiklik

Bir denek grubuna tedavi uygulanması.

Python ile Deney Tasarımı

Bazı terimler...

     

  • Denekler = neyin üzerinde deney yapıyoruz (insanlar, çalışanlar, kullanıcılar vb.)
  • Tedavi (treatment) = bir gruba verilen değişiklik

Tedavi grubuna tedavi uygulanması.

Python ile Deney Tasarımı

Bazı terimler...

     

  • Denekler = neyin üzerinde deney yapıyoruz (insanlar, çalışanlar, kullanıcılar vb.)
  • Tedavi (treatment) = bir gruba verilen değişiklik
  • Kontrol = hiçbir değişiklik verilmeyen grup

Denekler tedavi ve kontrol gruplarına ayrılmış.

Python ile Deney Tasarımı

Denekleri gruplara atama

     

  • Denekler gruplara nasıl atanır?
    • Seçenek 1 - rastgele olmayan (DataFrame'i 'böl')
    • Seçenek 2 - rastgele atama

     

  • Örnek: heights DataFrame'inde 200 deneğin boyu
    id  height
0    0  177.98
1    1  174.17
2    2  178.89
Python ile Deney Tasarımı

Rastgele olmayan atama

 

DataFrame'i dilimleyerek atama

group1_nonrandom = heights.iloc[0:100,:]
group2_nonrandom = heights.iloc[100:,:]

compare_df = pd.concat( [group1_nonrandom['height'].describe(), group2_nonrandom['height'].describe()], axis=1) compare_df.columns = ['group1', 'group2'] print(compare_df)
  • Çok farklı! (Ortalama 9 cm fark)

 

 

       group1  group2
count  100.00  100.00
mean   170.32  179.19 <--
std      3.28    3.50
min    159.28  175.03
25%    168.06  176.57
50%    170.75  178.03
75%    173.09  180.79
max    174.92  191.32
Python ile Deney Tasarımı

Rastgele atama

     

  • .sample() kullanın
    • n veya frac (oran 0-1)
group1 = heights.sample(frac=0.5,
                        replace=False,
                        random_state=42)

group2 = heights.drop(group1.index)
print(compare_df)
  • Çok daha yakın! (<1 cm)

 

       group1  group2
count  100.00  100.00
mean   175.10  174.41 <--
std      5.39    5.78
min    163.07  159.28
25%    171.32  170.17
50%    175.22  174.86
75%    178.32  177.85
max    189.78  191.32
Python ile Deney Tasarımı

Atama özeti

 

  • Denekler gruplara rastgele atanmalıdır
    • Gözlenen değişiklikler doğru biçimde atfedilir

 

  • Rastgele denek atama: .sample()
  • Farkları doğrula: .describe()

Denekler rastgele olarak tedavi ve kontrol gruplarına atanmış.

Python ile Deney Tasarımı

Hadi pratik yapalım!

Python ile Deney Tasarımı

Preparing Video For Download...